Hive实战
教学单元名称
Hive简介及应用场景
教
学
目
标
能力目标
独立查阅相关资料的能力
知识目标
掌握Hive的工作原理和特点。
了解Hive的应用场景。
了解Sqoop的原理及特点。
素质目标
接受新知识、自主学习、查阅资料的能力
教学重点
1、Hive的工作原理和特点。
2、Hive的应用场景。
3、Sqoop的原理及特点。
教学难点
Hive的工作原理和特点
教学方法
提问法、讨论法、讲授法
教学时数
2学时
教学过程设计
教学环节
教学内容
教师活动
学生活动
新课引入
数据仓库的应用场景
讲解
听讲记录
任务描述
提出本次学习的任务——了解Hive
讲解
听讲记录
课程要点讲解
Hive概述
关键字:特性、产生历程
讲解
搜集资料、交流
Hive应用场景
讲解
对不同子项目进行综合讲解
详
细
讲
解
1.Hive概述
ApacheHive是由Apache软件基金会的志愿者Facebook提供的开源项目,开源用于解决海量结构化日志的数据统计工具,最初是ApacheHadoop下的一个子项目,后来升级为Apache的顶级项目。
Hive的本质是将HQL转化成MapReduce程序,HQL转化成MapReduce的流程如图所示:
讲解
分组讨论
2、Hive应用场景
使用Hive进行数据分析时具有以下优点:
(1)操作接口采用类SQL语法,提供快速开发的能力,便于理解。
(2)Hive的执行延迟比较高,因此Hive常用于数据分析对实时性要求不高的场合。
(3)Hive优势在于处理大数据,对于处理小数据没有优势,因为Hive的执行延迟比较高。
(4)Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。
使用Hive在数据分析时处理具有以上优点以外,还有其缺点,主要体现在以下几个方面:
(5)Hive的HQL表达能力有限
迭代式算法无法表达递归算法;Hive不擅长数据挖掘方面操作,即不擅长数据挖掘和算法机器学习。
(6)Hive的效率比较低
Hive自动生成的MapReduce作业,通常情况下不够智能化,Hive调优比较困难,粒度较粗。
讲解
听讲记录、交流
教学小结
根据课堂教学情况,之处学生对本堂课中知识点难以理解的地方,结合教学重点和难点,对所学知识进一步强化。
讲解
学生记录
布置作业
1.简述MySQL在Hive中的作用。
2.简述Sqoop是如何进行数据导入导出的?
Hive实战
教学单元名称
Hive安装及操作
教
学
目
标
能力目标
具有独立自主的开发能力和解决问题的能力
知识目标
掌握Hive环境搭建
掌握本地数据上传至本地仓
掌握sqoop环境的配置
掌握Hive与MySql数据互传
素质目标
接受新知识、自主学习解决问题、创新的能力
教学重点
1、掌握Hive环境搭建
2、掌握本地数据上传至本地仓
3、掌握sqoop环境的配置
4、掌握Hive与MySql数据互传
教学难点
本地数据上传至本地仓和Hive与MySql数据互传
教学方法
项目向导、任务驱动、分组讨论
教学时数
16学时
教学过程设计
教学环节
教学内容
教师活动
学生活动
新课引入
介绍Hive数据仓和Mysql数据库
讲解
听讲记录
任务描述
提出本次学习的任务——Hive环境搭建及其数据仓应用
讲解
听讲记录
任务部署
1
完成Hive环境搭建
讲解
搜集资料、交流
任
务
实
施
1
1.将Hive安装包传送到Linux操作系统服务器端
scp./apache-hive-2.3.4-bin.tarhadoop@192.168.153.134:/home/hadoop
讲解演示
模仿操作
2.将Hive安装包解压到/usr/local目录下,并进行解压,解压完成之后进行更名
tar-zxvfapache-hive-2.3.4-bin.tar-C/usr/local
mvapache-hive-2.3.4-bin.tarhive
讲解演示
模仿操作
3.修改组用户属性
sudochown-Rhadoop:hadoophive
讲解演示
模仿操作
4.配置Hive环境变量
·vim~/.bashrc
·在最下方加入如下代码:
#Hive_ENV
exportHIVE_HOME=/usr/local/hive
exportPATH=$PATH:$HIVE_HOME/bin?
讲解演示
模仿操作
5.测试Hadoop是否安装成功
source~/.bashrc
讲解演示
模仿操作
6.配置hive配置文件(注意该配置文件中的密码与在mysql中创建的hive密码应该一致。创建hive用户,密码为dashuju168)
讲解演示
归纳
总结