免费为全国高校提供大数据教学案例
建设者:厦门大学计算机科学系 林子雨 博士/助理教授
(E-mail: ziyulin@xmu.edu.cn, 个人主页:http://www.cs.xmu.edu.cn/linziyu)
(版权声明:本平台所有资源有版权,请勿用于商业用途)
(未经授权,其他网站请勿转载)
扫一扫手机访问本主页
案例简介 | 案例目的 | 软件工具 | 案例任务 | 实验步骤 | 开发团队 | 版本历史 | 联系人
相关其他案例推荐:Spark课程综合实验案例:淘宝双11数据分析与预测
相关其他案例推荐:Spark课程实验案例:Spark+Kafka构建实时分析Dashboard
点击这里观看厦门大学林子雨老师主讲《大数据技术原理与应用》课程视频
大数据课程实验案例:网站用户行为分析,由厦门大学数据库实验室团队开发,旨在满足全国高校大数据教学对实验案例的迫切需求。本案例涉及数据预处理、存储、查询和可视化分析等数据处理全流程所涉及的各种典型操作,涵盖Linux、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用方法。案例适合高校(高职)大数据教学,可以作为学生学习大数据课程后的综合实践案例。通过本案例,将有助于学生综合运用大数据课程知识以及各种工具软件,实现数据全流程操作。各个高校可以根据自己教学实际需求,对本案例进行补充完善。
- 熟悉Linux系统、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用;
- 了解大数据处理的基本流程;
- 熟悉数据预处理方法;
- 熟悉在不同类型数据库之间进行数据相互导入导出;
- 熟悉使用R语言进行可视化分析;
- 熟悉使用Elipse编写Java程序操作HBase数据库。
适用对象
- 高校(高职)教师、学生
- 大数据学习者
时间安排
本案例可以作为大数据入门级课程结束后的“大作业”,或者可以作为学生暑期或寒假大数据实习实践基础案例,完成本案例预计耗时7天。
预备知识
需要案例使用者,已经学习过大数据相关课程(比如入门级课程《大数据技术原理与应用》),了解大数据相关技术的基本概念与原理,了解Windows操作系统、Linux操作系统、大数据处理架构Hadoop的关键技术及其基本原理、列族数据库HBase概念及其原理、数据仓库概念与原理、关系型数据库概念与原理、R语言概念与应用。
不过,由于本案例提供了全部操作细节,包括每个命令和运行结果,所以,即使没有相关背景知识,也可以按照操作说明顺利完成全部实验。
硬件要求
本案例可以在单机上完成,也可以在集群环境下完成。
单机上完成本案例实验时,建议计算机硬件配置为:500GB以上硬盘,8GB以上内存。
本案例所涉及的系统及软件
- Linux系统(Ubuntu16.04或14.04或18.04)
- MySQL(版本无要求)
- Hadoop(2.7.1或2.7.3,不能用3.0及以上版本,因为Sqoop工具无法支持Hadoop3.0以上版本)
- HBase(1.1.2或1.1.5,HBase版本需要和Hadoop版本兼容)
- Hive(1.2.1,Hive需要和Hadoop版本兼容,不要安装Hive3.0以上版本)
- Sqoop(必须用1.4.6,注意,Sqoop无法支持Hadoop3.0以上版本)
- R(版本无要求)
- Eclipse(版本无要求)
图 案例所涉及软件总体概览图
数据集
网站用户购物行为数据集2000万条记录。
- 安装Linux操作系统
- 安装关系型数据库MySQL
- 安装大数据处理框架Hadoop
- 安装列族数据库HBase
- 安装数据仓库Hive
- 安装Sqoop
- 安装R
- 安装Eclipse
- 对文本文件形式的原始数据集进行预处理
- 把文本文件的数据集导入到数据仓库Hive中
- 对数据仓库Hive中的数据进行查询分析
- 使用Sqoop将数据从Hive导入MySQL
- 使用Sqoop将数据从MySQL导入HBase
- 使用HBase Java API把数据从本地导入到HBase中
- 使用R对MySQL中的数据进行可视化分析
图 案例所涉及操作总体概览图
步骤零:实验环境准备 | 查看实验指南 |
步骤一:本地数据集上传到数据仓库Hive | 查看实验指南 |
步骤二:Hive数据分析 | 查看实验指南 |
步骤三:Hive、MySQL、HBase数据互导 | 查看实验指南 |
步骤四:利用R进行数据可视化分析 | 查看实验指南 |
每个实验步骤所需要的知识储备、训练技能和任务清单如下:
步骤零:实验环境准备
所需知识储备 | Windows操作系统、Linux操作系统、大数据处理架构Hadoop的关键技术及其基本原理、列族数据库HBase概念及其原理、数据仓库概念与原理、关系型数据库概念与原理 |
训练技能 | 双操作系统安装、虚拟机安装、Linux基本操作、Hadoop安装、HBase安装、Sqoop安装、Eclipse安装 |
任务清单 | 1. 安装Linux系统;2. 安装Hadoop;3. 安装MySQL;4. 安装HBase;5. 安装Hive;6. 安装Sqoop;7. 安装R;8. 安装Eclipse |
步骤一:本地数据集上传到数据仓库Hive
所需知识储备 | Linux系统基本命令、Hadoop项目结构、分布式文件系统HDFS概念及其基本原理、数据仓库概念及其基本原理、数据仓库Hive概念及其基本原理 |
训练技能 | Hadoop的安装与基本操作、HDFS的基本操作、Linux的安装与基本操作、数据仓库Hive的安装与基本操作、基本的数据预处理方法 |
任务清单 | 1. 安装Linux系统;2. 数据集下载与查看;3. 数据集预处理;4. 把数据集导入分布式文件系统HDFS中;5. 在数据仓库Hive上创建数据库 |
步骤二:Hive数据分析
所需知识储备 | 数据仓库Hive概念及其基本原理、SQL语句、数据库查询分析 |
训练技能 | 数据仓库Hive基本操作、创建数据库和表、使用SQL语句进行查询分析 |
任务清单 | 1. 启动Hadoop和Hive;2. 创建数据库和表;3. 简单查询分析;4. 查询条数统计分析;5. 关键字条件查询分析;6. 根据用户行为分析;7. 用户实时查询分析 |
步骤三:Hive、MySQL、HBase数据互导
所需知识储备 | 数据仓库Hive概念与基本原理、关系数据库概念与基本原理、SQL语句、列族数据库HBase概念与基本原理 |
训练技能 | 数据仓库Hive的基本操作、关系数据库MySQL的基本操作、Sqoop工具的使用方法、HBase API的Java编程、Eclipse开发工具使用方法 |
任务清单 | 1. Hive预操作;2. 使用Sqoop将数据从Hive导入MySQL;3. 使用Sqoop将数据从MySQL导入HBase;4. 使用HBase Java API把数据从本地导入到HBase中 |
步骤四:利用R进行数据可视化分析
所需知识储备 | 数据可视化、R语言 |
训练技能 | 利用R语言对MySQL数据库中的数据进行数据可视化分析、R的安装、相关可视化依赖包的安装与使用、各种可视化图表生成方法 |
任务清单 | 安装R语言包、安装可视化依赖包、柱状图可视化分析、散点图可视化分析、地图可视化分析 |
为了解决高校大数据教学需要综合实验案例的迫切需求,2016年10月上旬,厦门大学数据库实验室组建了由林子雨老师和阮榕城(厦大数据库实验室2015级研究生)、薛倩(厦大数据库实验室2015级研究生)、魏亮(厦大数据库实验室2016级研究生)、曾冠华(厦大数据库实验室2016级研究生)同学组成的案例开发小组,通过大量调研学习网络资料和相关案例,开发了本教学案例。期间,多次举行小组会议,讨论案例制作思路和技术细节。最终,经过近两个月的团队努力,于2016年11月29日顺利完成案例第1版的开发并上线发布。
图(摄影 夏小云) 大数据案例开发团队2016年11月28日合影
(人员从左到右名单:魏亮、阮榕城、林子雨、薛倩、曾冠华)
2016年11月29日,发布案例V1.0版本。
本案例相关事宜,欢迎联系厦门大学数据库实验室林子雨老师:E-mail: ziyulin@xmu.edu.cn