1 概述
数据科学与大数据技术专业作为一个新兴专业,具有极大的发展前景。根据 IDC 《数字宇宙》(Digital Universe) (Digital Universe)研究报告显示,2020年全球新建和复制的信息量已经超过40ZB,是2012年的12倍;而中国的数据量则会在2020年超过8ZB,比2012年增长 22倍。数据量的飞速增长带来了大数据技术和服务市场的繁荣发展。IDC亚太区 (不含日本)最新关于大数据和分析 (BDA)领域的市场研究表明,大数据技术和服务市场规模将会从2012年的5.48亿美元增加到2017年的23.8亿美元,未来5年的复合增长率达到34.1%。而随着数据存储、数据挖掘、数据分析、数据可视化等数据产业的发展,我国需要更多的数据人才,数联寻英近日发布的首份《大数据人才报告》显示,目前全国大数据人才只有46万,未来3到5年人才缺口达150万之多。另外,调查数据表明数据挖掘专业人才岗位主要集中在移动互联网、电子商务、金融等行业。
由于数据科学与大数据技术是新兴专业,目前大数据技术方面的教学在国内仍不成熟,正处于起步及探索阶段,仍存在以下问题急需解决:
1. 缺乏课程体系指引
近些年国家陆续审批通过了一些大数据相关的专业,国内各大高校申报开设大数据相关专业更是狂热,但是在此过程中大部分高校都遇到了难题。如:
一方面,很多高校想申报开设大数据相关专业,但是由于缺乏合理的课程体系做指引,只能望洋兴叹。
另一方面,部分高校虽已成功申报大数据相关专业却迟迟未进行招生,关键原因也是对于如何开设合理的课程束手无策。
2. 缺乏教学资料辅助
面对大数据方面的新型学科,传统的教学资料已无法满足,例如:教材、课件、习题、项目案例等。但是大数据领域知识更新甚快,市场上相关的教学资料更是五花八门,选择合适的教学资料对于高校乃至学子来说更是至关重要。
3. 缺乏教师资源授课
现国内高校大数据教学及专业建设首当其冲的困难就是缺少具有高水平技术与国际视野的任课老师,也正是由于大数据技术作为一个新技术,教师现拥有的理论及技能水平参差不齐,导致高校学科的发展水平和教学水平受到制约。
4. 缺乏实验环境支撑
近些年,随着大数据行业的发展,企业实际应用中对处理的数据量及技术要求都提高了几个层次,因此高校传统的实验室已无法满足大数据方面新型技术的应用要求,现代化的大数据教学实训实验室不仅要求其硬件配置高、建设成本低 ,更是要求其能满足高校顺利开展课程并为之提供系统的教学实训环境做支撑。
5. 缺乏实训实习
现阶段,大量社会企业很难寻找到合适的大数据人才,高校对于如何培养出符合企业需求的人才又深感困扰,大学生实习就业难一直是高校和社会关注的热点话题,在当前人才市场“供大于求”的严峻情况下,“毕业即失业”的高校毕业生总量越来越多。其中,学生的实习实训最为关键,现高校学生毕业无法直接上岗工作,最直接原因为缺乏实际项目经验,但究其根本,就是学生在校期间没有机会进行相应的实习实训,没能将所学理论知识与技能应用结合起来,因此不能适应企业实际的需求。
2 大数据实验平台设计
2.1 建设目标
大数据实验平台的建设致力于帮助各大高校打造大数据人才培养体系,以满足高校的实际需求,帮助高校更便捷、更直接地解决所面临的困难,解决国内的大数据人才荒状况。其建设目标是作为大数据教学实训平台,包括数据分析教学与大数据分析实训平台,主要满足大数据相关专业的课程教学与实训需要。
大数据实验平台的设计落实“产、学、研、用”一体化的思想和模式中的“学、用”,从教学、实践和使用多方面注重专业人才和特色人才的培养。利用虚拟化教学资源,搭建教学系统和集群平台,将理论学习、实践教学和大数据项目实战融为一体,由难而易、循序渐进,逐步提升学生的学习技能和实践水平,提高“学”的质量和成效。
2.2 平台架构
大数据实验平台采用Docker容器技术,通过少量机器虚拟出大量的实验机器,可供学生同时拥有多套集群进行基础实验,包括Hadoop、Spark、Python语言、R语言等相关实验集群,可同时为每个学生提供多套集群进行实验,即搭建了一个可供大量学生完成云计算与大数据实验的集成环境。例如,50个学生做大数据实验,只需要小规模机器(比如10台)就可以同时为每个学生提供多套集群。而且每个学生的实验环境不仅相互隔离,可以高效地完成实验,而且实验彼此不干扰,即使某个学生的实验环境出现问题,对其他人也没有影响,只需要重启就可以重新拥有一套新集群,大幅度节省了硬件和人员管理的投入成本。
平台部署规划架构图如下:
作为一个可供大量学生完成大数据与云计算实验的集成环境,该平台同步提供了配套的培训服务,对于教学组件的安装、配置,教材、实验手册等具体应用提供一站式服务,有助于高校更好地满足课程设计、课程上机实验、实习实训、科研训练等多方面需求,并在一定程度上缓解大数据师资不足的问题。对于各大高校而言,即使没有任何大数据实验基础,该平台也能助其轻松开展大数据与云计算的教学、实验与科研。
大数据实验平台最核心的部分采用Docker容器技术,Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。大数据实验平台通过Docker在容器内部快速自动化部署应用,并通过内核虚拟化技术来提供容器的资源隔离与安全保障等,以此来为大量的学生虚拟创造出多个互相隔离的实验环境,及时实验环境破坏也不影响其他人的使用。同时由于Docker通过操作系统层的虚拟化实现隔离,所以Docker容器在运行时,不需要类似虚拟机(VM)额外的操作系统开销,提高资源利用率,并且提升诸如IO等方面的性能,使得大数据实验平台可以通过少量服务器即可构建出供大量学生进行实验的实验环境。
其Docker平台架构图如下:
其中,Kubernetes是Google开源的容器集群管理系统,其提供应用部署、维护、 扩展机制等功能,利用Kubernetes能方便地管理跨机器运行容器化的应用,其主要功能如下:
1) 使用Docker对应用程序包装(package)、实例化(instantiate)、运行(run)。
2) 以集群的方式运行、管理跨机器的容器。
3) 解决Docker跨机器容器之间的通讯问题。
4) Kubernetes的自我修复机制使得容器集群总是运行在用户期望的状态。
实验时,系统预先针对大数据实验内容构建好一系列基于CentOS7的特定容器镜像,通过Docker在集群主机内构建容器,充分利用容器资源利用高效的特点,为每个使用平台的用户开辟属于自己完全隔离的实验环境。容器内部,用户完全可以像使用Linux操作系统一样的使用容器,并且不会被其他用户的集群造成任何影响,区区几台机器,就可能虚拟出能够支持几十个甚至上百个用户同时使用的隔离集群环境。
3.1 建设内容
3.1.1 教学体系建设
大数据实验平台集实验机器、理论教材、实验手册、视频数据以及师资培训于一体,解决怎么开设大数据实验课程、需要做什么实验、怎么完成实验等一系列根本问题,提供了完整的大数据教学实验体系及配套资源,包含大数据系列教材、教学配套PPT、实验手册、实验数据、课程视频、实验环境、师资培训等内容,涵盖面较为广泛。
平台教学体系架构图如下:
平台在1.0版本的基础上于2017年12月推出了2.0版本,进一步丰富了实验内容,实验数量新增到85个,同时实验平台优化了从创建环境-实验操作-提交报告-教师打分的实验流程,新增了具有海量题库、试卷生成、在线考试、辅助评分等应用的考试系统,集成了上传数据-指定列表-选择算法-数据展示的数据挖掘及可视化工具。
3.1.2 课程体系建设
课程建设主要以学科建设为导向,完善大数据教学相关课程体系,以培养具备专业技能的人才为目标。根据高校实际的人才培养需求,从大数据监测与收集、大数据存储与处理、大数据分析与挖掘直至大数据创新,提供一系列的课程资源及教学实训环境,分别包括教学教材、教学PPT、教学视频、实验环境等。
拓展资源包括:教学实训数据集、科研数据集(可定制)、大数据行业案例等。平台课程体系基于真实的企业基地实训经验,提供了丰富的项目实训案例,并结合高校各专业实际情况进行行业数据研究,旨在培养实用型人才的专业项目能力,同时提高高校大数据专业就业率,提升高校硬实力和影响力。现有的课程体系建设清单如下:
序号 | 课程名称 | 教学教材 | 教学PPT | 教学视频 | 实验课程 |
1 | 云计算 | 《云计算》 | √ | √ | √ |
2 | 大数据 | 《大数据》 | √ | √ | √ |
3 | 大数据库技术 | 《大数据库》 | √ | √ | √ |
4 | 大数据应用实训 | 《大数据实验手册》 | √ | √ | √ |
5 | 数据挖掘 | 《数据挖掘》 | √ | √ | √ |
6 | 大数据可视化 | 《大数据可视化》 | √ | √ | √ |
7 | 虚拟化与容器 | 《虚拟化与容器》 | √ | √ | √ |
8 | Hadoop系统开发 | 《实战Hadoop2.0——从云计算到大数据》 | √ | √ | √ |
9 | 深度学习 | 《深度学习》 | √ | √ | √ |
10 | Python语言编程 | 《Python语言》 | √ | √ | √ |
11 | 人工智能导论 | 《人工智能语言》 | √ | √ | √ |
12 | 大数据数学基础 | 《大数据数学基础》 | √ | √ | √ |
3.1.3 实验体系建设
针对各项实验所需,大数据实验平台配套了一系列包括实验目的、实验内容、、实验代码、实验数据的实验手册及配套高清视频课程,内容涵盖大数据集群环境与大数据核心组件等技术前沿,详尽细致的实验操作流程可帮助用户解决大数据实验门槛所限。具体实验手册大纲如下。
序号 | 实验名称 | 实验手册 | 实验代码 | 实验 数据 | 教学 视频 |
1 | 大数据基本操作 | √ | √ | √ | √ |
2 | HDFS实验:部署HDFS集群 | √ | √ | √ | √ |
3 | HDFS实验:读写HDFS文件 | √ | √ | √ | √ |
4 | YARN实验:部署YARN集群 | √ | √ | √ | √ |
5 | MapReduce实验:单词计数 | √ | √ | √ | √ |
6 | MapReduce实验:二次排序 | √ | √ | √ | √ |
7 | MapReduce实验:计数器 | √ | √ | √ | √ |
8 | MapReduce实验:join操作 | √ | √ | √ | √ |
9 | MapReduce实验:分布式缓存 | √ | √ | √ | √ |
10 | Hive实验:部署Hive | √ | √ | √ | √ |
11 | Hive实验:新建Hive表 | √ | √ | √ | √ |
12 | Hive实验:Hive分区 | √ | √ | √ | √ |
13 | Spark实验:部署Spark集群 | √ | √ | √ | √ |
14 | Spark实验:SparkWordCount | √ | √ | √ | √ |
15 | Spark实验:RDD综合实验 | √ | √ | √ | √ |
16 | Spark实验:Spark综例 | √ | √ | √ | √ |
17 | Spark实验:Spark-sql | √ | √ | √ | √ |
18 | Spark实验:Spark Streaming | √ | √ | √ | √ |
19 | Spark实验:GraphX | √ | √ | √ | √ |
20 | Zookeeper实验:部署Zookeeper | √ | √ | √ | √ |
21 | Zookeeper实验:进程协作 | √ | √ | √ | √ |
22 | HBase实验:部署HBase | √ | √ | √ | √ |
23 | HBase实验:新建HBase表 | √ | √ | √ | √ |
24 | Storm实验:部署Storm | √ | √ | √ | √ |
25 | Storm实验:实时WordCountTopology | √ | √ | √ | √ |
26 | Flume实验:文件数据Flume至HDFS | √ | √ | √ | √ |
27 | Kafka实验:Kafka订阅推送示例 | √ | √ | √ | √ |
28 | Pig实验:Pig版WordCount | √ | √ | √ | √ |
29 | Redis实验:Redis部署与简单使用 | √ | √ | √ | √ |
30 | Redis实验:MapReduce与Spark读写Redis | √ | √ | √ | √ |
31 | MongoDB实验:读写MongoDB | √ | √ | √ | √ |
32 | LevelDB实验:读写LevelDB | √ | √ | √ | √ |
33 | Mahout实验:K-Means | √ | √ | √ | √ |
34 | 聚类算法实验:使用Spark实现K-Means | √ | √ | √ | √ |
35 | 分类算法实验:使用Spark实现SVM | √ | √ | √ | √ |
36 | 关联规则算法实验:使用Spark实现FP-Growth | √ | √ | √ | √ |
37 | 综合实战:车牌识别 | √ | √ | √ | √ |
38 | 综合实战:搜索引擎 | √ | √ | √ | √ |
39 | 综合实战:推荐系统 | √ | √ | √ | √ |
40 | 综合实战:环境大数据 | √ | √ | √ | √ |
41 | 综合实战:智能硬件大数据托管 | √ | √ | √ | √ |
42 | 综合实战:贷款风险评估 | √ | √ | √ | √ |
43 | Python基础:流程控制 | √ | √ | √ | √ |
44 | Python基础:列表和元组 | √ | √ | √ | √ |
45 | Python基础:字典 | √ | √ | √ | √ |
46 | Python基础:文件操作 | √ | √ | √ | √ |
47 | Python MR:Python统计全国各省城市数量分布 | √ | √ | √ | √ |
48 | Python MR:Python统计上海2016年每月历史天气 | √ | √ | √ | √ |
49 | Python MR:Python统计上海2016年每月空气质量 | √ | √ | √ | √ |
50 | Python MR:Python统计北京和上海2016年月均气温对比 | √ | √ | √ | √ |
51 | Python MR:Python统计北京和上海2016年空气质量对比 | √ | √ | √ | √ |
52 | Python算法:决策树分类 | √ | √ | √ | √ |
53 | Python算法:随机森林分类 | √ | √ | √ | √ |
54 | Python算法:朴素贝叶斯分类 | √ | √ | √ | √ |
55 | Python算法:K最近邻分类 | √ | √ | √ | √ |
56 | Python算法:支持向量机分类 | √ | √ | √ | √ |
57 | Python算法:K-means聚类 | √ | √ | √ | √ |
58 | Python算法:DBSCAN聚类 | √ | √ | √ | √ |
59 | Python算法:回归分析 | √ | √ | √ | √ |
60 | Python算法:Apriori关联规则 | √ | √ | √ | √ |
61 | Python实战:随机森林分类空气质量 | √ | √ | √ | √ |
62 | Python实战:区域经纬度聚类 | √ | √ | √ | √ |
63 | Python实战:回归预测空气指数 | √ | √ | √ | √ |
64 | R语言基础:流程控制 | √ | √ | √ | √ |
65 | R语言基础:文件操作 | √ | √ | √ | √ |
66 | R语言基础:数据帧 | √ | √ | √ | √ |
67 | R语言基础:因子操作 | √ | √ | √ | √ |
68 | R语言算法:决策树分类 | √ | √ | √ | √ |
69 | R语言算法:随机森林分类 | √ | √ | √ | √ |
70 | R语言算法:贝叶斯分类 | √ | √ | √ | √ |
71 | R语言算法:KNN分类 | √ | √ | √ | √ |
72 | R语言算法:SVM分类 | √ | √ | √ | √ |
73 | R语言算法:K-means聚类 | √ | √ | √ | √ |
74 | R语言算法:DBSCAN聚类 | √ | √ | √ | √ |
75 | R语言算法:回归分析 | √ | √ | √ | √ |
76 | R语言算法:Apriori关联规则实验 | √ | √ | √ | √ |
77 | R语言算法:时间序列分析 | √ | √ | √ | √ |
78 | R语言实战:回归预测空气指数 | √ | √ | √ | √ |
79 | R语言实战:按月进行时间序列预测温度 | √ | √ | √ | √ |
80 | R语言实战:区域经纬度聚类 | √ | √ | √ | √ |
81 | R语言实战:随机森林分类空气质量 | √ | √ | √ | √ |
82 | Linux基础:常用基本命令 | √ | √ | √ | √ |
83 | Linux基础:文件操作 | √ | √ | √ | √ |
84 | Linux基础:sed | √ | √ | √ | √ |
85 | Linux基础:awk | √ | √ | √ | √ |
3.1.4 硬件环境建设
硬件环境方面,大数据实验平台采用cServer机架式服务器,其英特尔®至强®处理器E5产品家族的性能比上一代提升多至80%,并具备更出色的能源效率。通过英特尔E5家族系列CPU及英特尔服务器组件,可满足扩展I/O灵活度、最大化内存容量、大容量存储和冗余计算等需求。目前,大数据实验平台具有经济型、标准型与增强型三种规格,通过发挥实验设备、理论教材、实验手册等资源的合力,可满足数据存储、挖掘、管理、计算等多样化的教学科研需求。具体的规格参数表如下:
配套/型号 | 经济型 | 标准型 | 增强型 |
管理节点 | 1台 | 3台 | 3台 |
处理节点 | 6台 | 8台 | 15台 |
上机人数 | 30人 | 60人 | 150人 |
理论教材 | 《大数据》50本 | 《大数据》80本 | 《大数据》180本 |
实验教材 | 《实战手册》PDF版 | 《实战手册》PDF版 | 《实战手册》PDF版 |
配套PPT | 有 | 有 | 有 |
配套视频 | 有 | 有 | 有 |
免费培训 | 提供现场实施及3天 技术培训服务 | 提供现场实施及5天 技术培训服务 | 提供现场实施及7天 技术培训服务 |
3.1.5 软件环境建设
软件环境方面,搭载Docker容器云可实现Hadoop、HBase、Ambari、HDFS、YARN、MapReduce、ZooKeeper、Spark、Storm、Hive、Pig、Oozie、Mahout、Python、R语言等绝大部分大数据实验应用。具体的软件环境建设表如下:
软件分类 | 软件名称 |
核心组件 | HDFS |
MapReduce2 |
YARN |
ZooKeeper |
HBase |
Spark |
基于MapReduce的数据分析组件 | Tez |
Hive |
Pig |
Tajo |
Kylin |
数据库类组件 | Drill |
Accumulo |
Cassandra |
Phoenix |
BSP(Bulk Synchronous Parallel)计算框架部分常用处理框架 | Hama |
Giraph |
Storm |
Reef |
Ignite |
Flink |
工作流组件 | Falcon |
ETL(Extract, Transform and Load)类组件 | Flume |
Kafka |
Chuwka |
序列化与持久化 | Avro |
Gora |
Parquet |
安全性组件 | Knox |
Sentry |
集群部署与管理组件 | Ambari |
4.云实验平台预览
大数据实验平台首页预览
实验管理详情页
实验管理配置页
实验数据详情页
实验资源管理页
实验手册内容页
实验手册学生页
实验报告详情页
大数据实验室建设效果图
5 实验平台优势
1. 沙箱机制
大数据实验平台采用Docker容器技术,容器之间采用沙箱机制,相互之间没有任何接口,因此通过大数据实验平台创造出的实验环境是相互隔离的,即使由于部分学生的误操作导致实验环境被破坏,也不会影响到其他同学的实验,一键重启就可以拥有新的集群。
2. 快速部署
大数据实验平台可快速部署实验环境,支持一键创建和销毁实验集群,可在一瞬间创建出供大量学生同时实验的实验环境,同时实验环境可快速销毁和重建,可供老师简单便捷的进行大数据实验和教学工作,无需花大量时间进行每个学生的实验环境部署工作,大幅度的节省人员管理维护成本。
3. 多机实验环境
大数据实验平台采用分布式集群架构,多节点冗余架构设计和可面向大数据的分布式系统,能为每个学生提供多机实验环境,整个系统理论支持用户数量无上限,可为每个学生分配5套实验虚拟集群,可满足大量学生同时进行多个实验,并进行各实验的相互对比学习。
4. 资源最大化利用
大数据实验平台通过对Docker容器技术的深度应用,可将服务器资源的利用率发挥到最大,通过几台服务器便可构建出可供上百学生同时实验的实验平台,大幅度的节省了硬件投入成本。
5. 快速高效易扩展
大数据实验平台具备快速高效易扩展的优势,只需增加节点服务器即可实现同时上机人数的扩容,最大限度地提高资源利用率。
6. 教学体系完善
大数据实验平台毕竟不仅提供可供学生同时实验的教学平台,还提供了完善的教学体系,包括课程体系、教学教材、实验手册、教学视频、实验数据以及师资培训等,能够帮助高校解决大数据专业建设、大数据课程开设、实验体系搭建等一系列根本问题。
6 成功案例
清华大学
南京大学
郑州大学
西北工业大学
南京农业大学
成都理工大学
金陵科技学院
中原工学院
重庆师范大学
淮南师范学院
西南大学
信阳师范学院
西安科技大学
湖北文理学院
郑州升达经贸管理学院
镇江高等职业技术学校
河南省经济管理学校
天津农学院
山东女子学院
宁波工程学院
邢台学院
软通动力
新疆电信
若需了解更多内容,
请拨打我司咨询电话:0755-82709812
深圳银江龙电子有限公司,竭诚为您服务!