重磅:大数据课程实验案例:网站用户行为分析(免费共享)

免费为全国高校提供大数据教学案例

建设者:厦门大学计算机科学系  林子雨 博士/助理教授

(E-mail: ziyulin@xmu.edu.cn, 个人主页:http://www.cs.xmu.edu.cn/linziyu)

(版权声明:本平台所有资源有版权,请勿用于商业用途)

(未经授权,其他网站请勿转载)

%e5%a4%a7%e6%95%b0%e6%8d%ae%e6%a1%88%e4%be%8b%e4%b8%bb%e9%a1%b5%e4%ba%8c%e7%bb%b4%e7%a0%81

扫一扫手机访问本主页


案例简介 | 案例目的 | 软件工具 | 案例任务 | 实验步骤开发团队 | 版本历史 | 联系人


相关其他案例推荐:Spark课程综合实验案例:淘宝双11数据分析与预测

相关其他案例推荐:Spark课程实验案例:Spark+Kafka构建实时分析Dashboard

点击这里观看厦门大学林子雨老师主讲《大数据技术原理与应用》课程视频

案例简介

大数据课程实验案例:网站用户行为分析,由厦门大学数据库实验室团队开发,旨在满足全国高校大数据教学对实验案例的迫切需求。本案例涉及数据预处理、存储、查询和可视化分析等数据处理全流程所涉及的各种典型操作,涵盖Linux、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用方法。案例适合高校(高职)大数据教学,可以作为学生学习大数据课程后的综合实践案例。通过本案例,将有助于学生综合运用大数据课程知识以及各种工具软件,实现数据全流程操作。各个高校可以根据自己教学实际需求,对本案例进行补充完善。

案例目的

  1. 熟悉Linux系统、MySQL、Hadoop、HBase、Hive、Sqoop、R、Eclipse等系统和软件的安装和使用;
  2. 了解大数据处理的基本流程;
  3. 熟悉数据预处理方法;
  4. 熟悉在不同类型数据库之间进行数据相互导入导出;
  5. 熟悉使用R语言进行可视化分析;
  6. 熟悉使用Elipse编写Java程序操作HBase数据库。

适用对象

  1. 高校(高职)教师、学生
  2. 大数据学习者

时间安排

本案例可以作为大数据入门级课程结束后的“大作业”,或者可以作为学生暑期或寒假大数据实习实践基础案例,完成本案例预计耗时7天。

预备知识

需要案例使用者,已经学习过大数据相关课程(比如入门级课程《大数据技术原理与应用》),了解大数据相关技术的基本概念与原理,了解Windows操作系统、Linux操作系统、大数据处理架构Hadoop的关键技术及其基本原理、列族数据库HBase概念及其原理、数据仓库概念与原理、关系型数据库概念与原理、R语言概念与应用。

不过,由于本案例提供了全部操作细节,包括每个命令和运行结果,所以,即使没有相关背景知识,也可以按照操作说明顺利完成全部实验。

硬件要求

本案例可以在单机上完成,也可以在集群环境下完成。

单机上完成本案例实验时,建议计算机硬件配置为:500GB以上硬盘,8GB以上内存。

软件工具

本案例所涉及的系统及软件

  1. Linux系统(Ubuntu16.04或14.04或18.04)
  2. MySQL(版本无要求)
  3. Hadoop(2.7.1或2.7.3,不能用3.0及以上版本,因为Sqoop工具无法支持Hadoop3.0以上版本)
  4. HBase(1.1.2或1.1.5,HBase版本需要和Hadoop版本兼容)
  5. Hive(1.2.1,Hive需要和Hadoop版本兼容,不要安装Hive3.0以上版本)
  6. Sqoop(必须用1.4.6,注意,Sqoop无法支持Hadoop3.0以上版本)
  7. R(版本无要求)
  8. Eclipse(版本无要求)

%e5%a4%a7%e6%95%b0%e6%8d%ae%e8%af%be%e7%a8%8b%e5%ae%9e%e9%aa%8c%e6%a1%88%e4%be%8b%e7%bd%91%e7%ab%99%e7%94%a8%e6%88%b7%e8%a1%8c%e4%b8%ba%e5%88%86%e6%9e%90v1-0%e8%bd%af%e4%bb%b6%e5%9b%be

图 案例所涉及软件总体概览图

数据集

网站用户购物行为数据集2000万条记录。

案例任务

  1. 安装Linux操作系统
  2. 安装关系型数据库MySQL
  3. 安装大数据处理框架Hadoop
  4. 安装列族数据库HBase
  5. 安装数据仓库Hive
  6. 安装Sqoop
  7. 安装R
  8. 安装Eclipse
  9. 对文本文件形式的原始数据集进行预处理
  10. 把文本文件的数据集导入到数据仓库Hive中
  11. 对数据仓库Hive中的数据进行查询分析
  12. 使用Sqoop将数据从Hive导入MySQL
  13. 使用Sqoop将数据从MySQL导入HBase
  14. 使用HBase Java API把数据从本地导入到HBase中
  15. 使用R对MySQL中的数据进行可视化分析

%e5%a4%a7%e6%95%b0%e6%8d%ae%e8%af%be%e7%a8%8b%e5%ae%9e%e9%aa%8c%e6%a1%88%e4%be%8b%e7%bd%91%e7%ab%99%e7%94%a8%e6%88%b7%e8%a1%8c%e4%b8%ba%e5%88%86%e6%9e%90v1-0%e6%b5%81%e7%a8%8b%e5%9b%be

图  案例所涉及操作总体概览图

实验步骤

步骤零:实验环境准备 查看实验指南
步骤一:本地数据集上传到数据仓库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版的开发并上线发布。

img_20161128_165737

图(摄影 夏小云)  大数据案例开发团队2016年11月28日合影

(人员从左到右名单:魏亮、阮榕城、林子雨、薛倩、曾冠华)

版本历史

2016年11月29日,发布案例V1.0版本。

联系人

本案例相关事宜,欢迎联系厦门大学数据库实验室林子雨老师:E-mail: ziyulin@xmu.edu.cn