林子雨讲座完整文字版:关于高校大数据教学若干关键问题的探讨

中国高校大数据课程公共服务平台LOGO(图上文下)

高校大数据教学经验总结系列文章之三

《关于高校大数据教学若干关键问题的探讨》

厦门大学数据库实验室  林子雨 2017年1月10日

下载报告PPT

%e6%9e%97%e5%ad%90%e9%9b%a8cio%e6%97%b6%e4%bb%a3app%e5%be%ae%e8%af%be%e5%a0%822017%e5%b9%b41%e6%9c%8810%e6%97%a5%e8%ae%b2%e5%ba%a7%e5%85%a8%e6%96%87%e7%bd%91%e9%a1%b5%e4%ba%8c%e7%bb%b4%e7%a0%81

扫一扫访问本网页

2017年1月10日,厦门大学信息科学与技术学院助理教授林子雨在CIO时代APP微讲座栏目作了题为《关于高校大数据教学若干关键问题的探讨》的主题分享,从大数据实验平台的搭建方法、云计算与大数据课程知识交叉问题解决方法以及大数据教学资源建设三个方面,对高校大数据教学关键问题进行了探讨(备注:由于讲座时间有限,只讨论了3个问题,以后会继续讨论如何进行大数据专业建设的问题)。

    一、如何搭建大数据实验平台

在高校大数据教学过程中,实践是很重要的环节,因此,很多高校在开设大数据课程时,不仅要选择好的教材,同时也要选择好的大数据实验平台。总体而言,当前国内有以下几种大数据实验平台方案:

(一)建设统一的大数据实验机房

目前,在国内有两种典型的大数据实验机房建设方案:

第一,多台终端机采用云桌面方式连接到中心服务器。这种模式在一部分高校已得到广泛使用。通常而言,中心服务器采用高密度服务器,采用虚拟化技术得到很多虚拟化资源,所有的终端机都可以连接到中心服务器,共享这些虚拟化资源,因此,终端机仅起到云桌面的作用,数据处理运行都是在中心服务器上进行的,因此,这种模式对终端机的配置要求较低。这种模式在实际的高校部署中,又会有两种不同的方案:第一种方案是在学校本地机房放置中心服务器,各个终端机直接连接到本地服务器。另外一种方案是中心服务器不是放在高校实验室的内部机房中,而是放置在阿里云等公有云平台上,或者放在大数据实验平台供应商自己的数据中心里,高校可以通过浏览器访问云端的大数据实验环境。

第二,用多台物理机器构建分布式环境。在这种模式中,每台物理机器都构成一个分布式计算节点,多个节点构成分布式的集群环境。在这种模式下,高校的通常做法是将学生进行分组,比如5个学生一组,为5个学生分配5台物理机器,由学生完成大数据集群环境搭建,或者,机房管理员已经为这5台机器统一安装了大数据集群环境,学生可以直接在这5台物理机上进行相关大数据实验。

   (二)单机构建实验环境

既然已经有了统一的大数据实验机房,为什么还需要单机方式呢?主要有三个方面的原因:

(1)   有些学校没有建设统一的大数据实验机房,需要教师和学生自己在电脑上安装大数据实验平台;

(2)   学校有统一的机房,但是,上机时间有限,学生需要在宿舍或者实验室,进行大量的课后上机实践,需要在自己电脑上安装大数据实验平台,随时实践

(3)   学校的统一机房本身就采用每台机器独立安装的方式。很多机房都具有统一的管理平台,可以把大数据实验平台制作成镜像,然后自动快速把镜像部署到机房的每台电脑上。

如果采用这种单机构建模式,通常对整个实验室内部单机配置要求较高。一般而言,学生或老师的机器大多数为Windows系统,单机安装方式的具体方法是,在Windows系统基础上安装虚拟机软件,比如VMWare或者VirtualBox,在虚拟机软件上安装Linux操作系统,再在Linux操作系统上安装Hadoop等大数据相关软件。这种架构对底层的硬件配置要求是比较高的,因为要同时运行Windows系统和Linux系统,此时对底层资源的消耗比较大,尤其是对内存要求较高。一般而言,如果采用虚拟机方式(不是双操作系统方式),则单机方式构建大数据实验平台时,单机配置至少需要8GB的内存,否则系统运行会很缓慢。单机环境如何快速部署到其他机器中呢?老师首先在自己的电脑上完成大数据实验环境的构建,再将其导出做成“镜像”,存放到云盘,供学生下载,学生在自己本地电脑的虚拟机软件中直接导入镜像,就可以生成大数据实验环境,直接使用,避免了繁琐的大数据实验环境搭建过程。

(三)实验室多机构建分布式环境

在实验室内部,完成一些相关科研数据的处理、分析,或学生进行一些大数据教学案例分析,学生或老师仅用自己的电脑构建虚拟机方式是无法高效处理分布式大数据实验的,因此,需要利用实验室内部三到五台机器搭建起真正的物理分布环境,使庞大的数据进行分布式物理计算,这也是学生或老师采用的多机分布式物理环境。

二、如何解决云计算与大数据课程的知识交叉

当前,大数据、云计算这两门课程很多高校都在开设,其中可能会遇到一些尴尬问题,如云计算和大数据两门课程知识点重合度高,没有合理地安排内容,尤其是Hadoop等大数据只是在两门课程中可能均有介绍,使得两门课程在大数据知识方面高度重合,于是两门课程老师要花费大量时间多次讲解同一项技术。导致学生要重复学习同一种知识,也导致了老师相互之间的尴尬等问题。出现这个问题的原因是云计算教材的选择出现了问题,目前遇到问题的云计算课程在选择教材时,云计算教材中包含了大量的大数据知识,包括Hadoop生态系统的各个组件(HDFS、HBase、MapReduce、Pig、Hive、Zookeeper等),都有详细介绍。而老师上课通常都是围绕教材讲课的,教材写了什么内容,基本上就要讲什么内容。云计算教材中包含了大量关于Hadoop等大数据知识,任课教师就只能按照教材讲大量属于大数据的内容。那么,为什么会导致这一现象的出现呢?这就要从云计算和大数据的渊源说起。

   (一)云计算和大数据的渊源

云计算技术诞生于2006年,云计算最初主要包含了两类含义:一类是以谷歌的分布式文件系统GFS和分布式并行编程模型MapReduce为代表的大规模分布式并行计算技术;另一类是以亚马逊的虚拟机和对象存储为代表的“按需租用”的商业模式,也就是说,通过网络以服务的方式为用户提供非常廉价的IT资源这样一种商业模式,就像我们今天的百度云盘、阿里云等,都属于这种商业模式。所以,较早期的一些云计算教材,就会包含上述两类内容,因此,会包含大量介绍Hadoop等大数据技术的知识。但是,到了2009年2010年附近的时候,随着大数据概念的提出,云计算中的分布式计算技术开始更多地被列入大数据技术,所以,现在人们提到云计算时,更多指的是底层基础IT资源的整合优化以及以服务的方式提供IT资源的商业模式(如IaaS、PaaS、SaaS),而很少会去谈及Hadoop等已经被单列为大数据的技术。

正是因为上述原因,在2010年附近出版的一些云计算教材,通常都会包含虚拟化、数据中心、分布式存储GFS和分布式处理MapReduce等内容,这类教材我们称为“云计算大数据复合型教材”,也就是说,这类复合型教材,虽然教材名称是“云计算”,但是,包含了大量讲解Hadoop等大数据知识的章节,而不是简略介绍Hadoop。因为,2010年之前,大数据和云计算的技术都是混在一起的,Hadoop等大数据技术,之前都叫云计算,那时还不叫大数据。

2010年到2014年之间,云计算已经大规模普及,但是,大数据还没有大规模普及,因此,很多高校都没有开设大数据课程,都只开设了云计算课程,这样,在10年到14年之间,使用复合型云计算教材上课,当然是不会遇到问题的。但是,到了2015年附近,越来越多高校开始开设大数据课程,大数据课程讲解的是Hadoop等大数据技术。这个时候,对于那些选用复合型云计算教材的高校而言,问题马上暴露出来,这些高校突然发现,由于前期选择了复合型云计算教材,导致大数据课程和云计算两门课,内容重合度很高,两门课程老师相互之间也很尴尬,到底如何协调好彼此的上课内容,显得很棘手。

(二)如何协调云计算和大数据两门课程知识点

如何解决这个两门课程知识点过高重合的问题呢?较好的方法是,在现在的云计算课程中,不能继续使用复合型云计算教材(里面包含过多属于大数据技术的内容),也就是说,到了2015年以后,如果一个高校同时开设云计算和大数据课程,在云计算教材的选择方面,最好把复合型云计算教材更换成“单一型云计算教材”。所谓的单一型云计算教材是指,云计算教材中,不能把Hadoop等属于大数据课程的内容作为核心内容,只要用一个章节简单概要介绍Hadoop等大数据技术即可,不能用好几个章节进行大量介绍。也就是说,在“单一型云计算教材”中,Hadoop等大数据技术只是教材的“次要内容”,只是为了考虑到云计算和大数据的紧密关系和历史渊源,才加以介绍,在实际授课时,用2个课时做简单讲解即可。采用“单一型云计算教材”以后,就彻底解决了云计算和大数据课程知识点高度重合的问题,云计算课程只会有2个课时的大数据技术简单介绍,详细的大数据技术,都需要学生在大数据课程上通过32个学时来学习。

采用“单一型云计算教材”以后,云计算和大数据两门课程的知识重点就有了明显的区分,不会重合:

(1)云计算的教学重点:云计算概念、云计算体系架构、数据中心、虚拟化技术(平台虚拟化、资源虚拟化、虚拟机的动态迁移、云操作系统)、SOA架构及开发技术、云数据中心设计与测试、云数据中心维护与管理、云安全架构、桌面云、PaaS应用开发平台、开源的云计算管理平台Openstack、Docker容器、大数据存储与管理(最多2个学时,不需要实验,只是知识介绍)。

(2)大数据的教学重点:系统论述大数据的基本概念、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、分布式并行编程模型MapReduce、大数据处理架构Spark、流计算、图计算、数据可视化以及大数据在互联网、生物医学和物流等各个领域的应用。

    三、如何建设优质的大数据教学资源

优质的大数据教学资源,直接影响到大数据课程的顺利开设和大数据教学水平的发展。由于当前大数据教学正处于推广期,大数据教学资源还比较稀缺。同时,大数据知识体系非常庞杂,包含了数据生命周期内的各种技术,而且大数据知识更新换代非常快,类似Hadoop等大数据技术,刚兴起几年,又有Spark等新兴技术的崛起,这进一步加剧了教师开课的难度。

为了缓解高校大数据教学资源稀缺的现状,全国高校教育界同仁都在不断努力,建设资源。全国高校大数据教育联盟多次组织召开大数据教学研讨会,组织相关高校教师共同开发教学资源。

  (一)建立高校大数据课程公共服务体系的重要性

建立高校大数据课程公共服务体系可以解决以下几方面的问题:

  • 提供丰富的教学资源
  • 降低大数据课程开课门槛
  • 提升学生学习效果
  • 加快高校大数据课程建设进程
  • 不断提升高校大数据教学水平

  (二)案例

厦门大学数据库实验室致力于打造中国高校大数据课程公共服务平台(主页),建设了目前为止国内高校最完备的大数据课程公共服务体系,已经成为全国高校大数据教学知名品牌。平台以开放共享方式提供免费教学资源,缓解大数据教育资源稀缺的问题,降低大数据的开课门槛。目前,平台建设了11个1工程,包括1本教材、1个教师服务站、1个学生服务站、1个公益项目、1堂巡讲公开课、1个示范班级、1门在线课程、1个交流群、1个保障团队、1个培训基地、1个实验平台。访问厦门大学数据库实验室网站,即可免费访问平台上的所有教学资源。

平台向全国高校免费提供开设大数据课程所需七大黄金资源:

1.《大数据技术原理与应用》教材

官网:https://dblab.xmu.edu.cn/post/bigdata/

林子雨老师编著的国内高校第一本系统性介绍大数据知识专业教材《大数据技术原理与应用》,教材系统论述了大数据的基本概念、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、分布式并行编程模型MapReduce、大数据处理架构Spark、流计算、图计算、数据可视化以及大数据在互联网、生物医学和物流等各个领域的应用。在Hadoop、HDFS、HBase、MapReduce、Spark等重要章节,安排了入门级的实践操作,让读者更好地学习和掌握大数据关键技术。

2.大数据软件安装和编程实践指南

官网https://dblab.xmu.edu.cn/post/5663/

详细学习如何安装运行各种大数据软件以及如何进行初级编程实践,包括Hadoop、HDFS、HBase、MapReduce、Spark、MongoDB等安装、操作、编程指南。

3.备课指南

官网:https://dblab.xmu.edu.cn/post/5637/

详细说明了教师如何备课,包括教学大纲、讲义PPT、授课视频、课后习题、上机题目等。

4.授课视频

官网:https://dblab.xmu.edu.cn/post/bigdata-online-course/

林子雨主讲的全套大数据课程视频,供老师上课参考。课程内容涵盖大数据、云计算和物联网概念及其相互关系、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、分布式并行编程模型MapReduce、图计算、流计算、基于内存的大数据处理框架Spark、基于Hadoop的数据仓库Hive、大数据在不同领域的应用等。课程视频自2016年3月28日在网易云课堂正式上线以来,一直稳居热门课程榜单前列,深受广大网友欢迎,国内多家知名大数据企业、慕课网站和培训机构采用本课程视频。截至2016年12月12日,网易云课堂学习人数突破18000人,收获评价中99%为五星级最高评价,被众多网友称为“国内难得的经典课程”。

5.实验指南

官网:https://dblab.xmu.edu.cn/post/6131/

用于机房统一上机,包含题目和答案。

 

6.Spark入门教程

官网:https://dblab.xmu.edu.cn/blog/spark/

Spark是当前最热门的大数据处理框架,林子雨编著《Spark入门教程》,让初学者零基础零障碍学习Spark。教程采用Scala语言编写Spark应用程序,因此,教程包括Scala入门和Spark入门两个部分的内容。

7.大数据课程实验案例《网站用户购物行为分析》

官网:https://dblab.xmu.edu.cn/post/7499/

采用2000万条用户购物数据集,案例涉及数据预处理、存储、查询和可视化分析等数据处理全流程所涉及的各种典型操作,涵盖Linux、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用方法。案例适合高校(高职)大数据教学,可以作为学生学习大数据课程后的综合实践案例。

结束语

随着大数据的全面普及,高校大数据专业建设也会加快推进,优秀大数据人才的培养和优质教学资源的建设,离不开全国高校教育界同仁、以及社会上的教育服务机构的共同努力。最后,祝愿我国高校大数据教学事业不断迈上新的台阶!

附录:主讲人林子雨简介

厦门大学,计算机科学系,数据库实验室,林子雨

林子雨,男,1978年出生,博士(毕业于北京大学),现为厦门大学计算机科学系助理教授,海峡云计算与大数据应用研究中心副主任,厦门大学数据库实验室负责人。曾任厦门大学信息科学与技术学院院长助理、晋江市发展和改革局副局长。中国高校首个“数字教师”提出者和建设者,2009年至今,“数字教师”大平台累计向网络免费发布超过100万字高价值的研究和教学资料,累计网络访问量超过100万次。编著出版了中国高校第一本系统介绍大数据知识的专业教材《大数据技术原理与应用》,并成为京东、当当网等网店畅销书籍。建设了国内高校首个大数据课程公共服务平台(平台主页),为教师教学和学生学习大数据课程提供全方位、一站式服务,平台年访问量超过70万次;建设了国内高校首个大数据课程教师培训交流基地(主页),为全国高校培养大数据课程师资力量。主要研究方向为数据库、数据仓库、数据挖掘、大数据、云计算和物联网,并以第一作者身份在《软件学报》《计算机学报》和《计算机研究与发展》等国家重点期刊以及国际学术会议上发表多篇学术论文。作为项目负责人主持的科研项目包括1项国家自然科学青年基金项目(No.61303004)、1项福建省自然科学青年基金项目(No.2013J05099)和1项中央高校基本科研业务费项目(No.2011121049),同时,作为课题负责人完成了国家发改委城市信息化重大课题、国家物联网重大应用示范工程区域试点泉州市工作方案、2015泉州市互联网经济调研等课题。具有丰富的政府和企业信息化培训经验,厦门大学管理学院EDP中心、浙江大学管理学院EDP中心、厦门大学继续教育学院、泉州市科技培训中心特邀培训讲师,曾给中国移动通信集团公司、福建龙岩卷烟厂、福建省物联网科学研究院、石狮市物流协会、厦门市物流协会、浙江省中小企业家、四川泸州企业家、江苏沛县企业家等开展信息化培训,累计培训人数达3000人以上。

相关链接高校大数据教学经验总结系列文章之一:以O2O理念不断提升大数据教学水平

相关链接:高校大数据教学经验总结系列文章之二:以平台化思维构建中国高校大数据课程公共服务体系