Hadoop大数据开发基础与案例实战(微课版)-教案 项目七 Hive实战_第1页
Hadoop大数据开发基础与案例实战(微课版)-教案 项目七 Hive实战_第2页
Hadoop大数据开发基础与案例实战(微课版)-教案 项目七 Hive实战_第3页
Hadoop大数据开发基础与案例实战(微课版)-教案 项目七 Hive实战_第4页
Hadoop大数据开发基础与案例实战(微课版)-教案 项目七 Hive实战_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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环境搭建讲解搜集资料、交流任务实施11.将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/localmvapache-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)讲解演示归纳总结模仿操作记录任务部署2安装MySQL讲解演示模仿操作任务实施21.升级系统安装包sudoapt-getupdatesudoapt-getinstallmysql-server(注意:在该步骤中如果遇到mysql被锁的情况(locked),则执行sudorm/var/lib/dpkg/locksudodpkg--configure-a)讲解演示模仿操作2.配置root用户名sudomysql_secure_installation设置root用户名,密码为123456(在该步骤中都选择y(yes))登录mysqlsudomysql-uroot-p讲解演示模仿操作3.将mysql-connector-java-8.0.16.tar上传至Linux操作系统中(Linux下mysql必须安装驱动)解压到当前目录下tar-xzvfmysql-connector-java-8.0.16.tar讲解演示模仿操作4.cd到connector-java-8.0.16.tar解压包目录下,将该目录下的mysql…….jar拷贝到/usr/local/hive/lib/下,并切换回~目录cdcon+TABcpmysql…….jar/usr/local/hive/lib/cd~讲解演示模仿操作5.进入root用户sudomysql-uroot-p创建hive用户,密码为dashuju168createuser'hive'@'localhost'identifiedby'dashuju168';讲解演示归纳总结模仿操作记录6.配置mysql允许hive接入grantallprivilegeson*.*to'hive'@'localhost'withgrantoption;flushprivileges(保存,表同步)验证hive用户是否能用sudomysql-uhive-p任务部署3本地数据上传至本地仓讲解演示模仿操作任务实施31.将user.zip文件上传至CentOS7中scp./user.ziphadoop@IP地址:/home/hadoop讲解演示模仿操作2.在/usr/local下面创建bigdatacase目录,在bigdatacase目录下创建dataset目录 cd/usr/local mkdirbigdatacase cdbigdatacase mkdirdataset讲解演示模仿操作3.将user.zip上传至CentOS7中scp./user.ziphadoop@IP地址:/home/hadoop讲解演示归纳总结模仿操作记录4.下载unzip软件

sudoapt-getinstallunzip

将user.zip解压至datatcase目录中

unzipuser.zip-d/usr/local/bigdatacase/datatset5.数据集的预处理

(1)删除文件第一行记录

sed-i'1d'small_user.csv

head-10small_user.csv

(2)对字段进行预处理

编写pre_deal.sh

(3)执行pre_deal.sh

cd/usr/local/bigdatacase/dataset

bash./pre_deal.shsmall_user.csvuser_table.txt

head-10user_table.txt讲解演示归纳总结模仿操作记录任务部署4导入数据库讲解演示模仿操作任务实施41.将user_table.txt上传至HDFS上

在HDFS上创建/bigdatacase/dataset

cd/usr/local/hadoop

hdfsdfs-mkdir-p/bigdatacase/dataset

在hadoop目录下操作命令:hdfsdfs-put/usr/local/bigdatacase/dataset/user_table.txt/bigdatacase/dataset

查看HDFS上user_table.txt的前10行

hdfsdfs-cat/bigdatacase/dataset/user_table.txt|head10讲解演示模仿操作2.在Hive上创建数据库(1)启动mysql服务service mysqlstart(2)启动hivecd/usr/local/hiveHive(3)在hive中创建一个数据库dblab;createdatabasedblab;usedblab;讲解演示模仿操作创建外部表讲解演示模仿操作4.查询hive中的数据select*frombigdata_userlimit10;讲解演示模仿操作任务部署5Sqoop的安装及配置讲解演示模仿操作任务实施5安装sqoop讲解演示模仿操作配置sqoop-env.sh文件讲解演示模仿操作配置环境变量讲解演示模仿操作讲解演示模仿操作测试与mysql是否连通讲解演示归纳总结模仿操作记录任务部署6mysql数据导入到hive中讲解演示模仿操作任务实施6进入到mysql中sudomysql-uhive-pdashuju168

showdatabases;

createdatauserdb;

createtableifnotexistsuuser(idintunsignedauto_incrementunamevarchar(128)notnull,uphonevarchar(11)notnull,PRIMARYKEY(id))ENGINE=InnoDBDEFAULTCHARSET=utf8;

insertintouuservalue(NULL,'JackMa','12345678901');

insertintouuservalue(NULL,'ZhangSan','11111111111');

insertintouuservalue(NULL,'LiSi','22222222222');讲解演示模仿操作2.将mysql数据导入到hive中

sqoopimport--connectjdbc:mysql://localhost:3306/userdb--usernamehive--passworddashuju168--tableuuser--hive-import-m1--fields-terminated-by','--hive-tableuuser2(uuser位于hadoop伪分布式下的/user/hadoop/uuser)

cp/usr/local/hive/lib/hive-common-…….jar/usr/local/sqoop/lib/

hadoopfs-rm-ruuser讲解演示模仿操作3.查看mysql数据导入到hive中

showtables;

select*fromuuser2;讲解演示模仿操作4.将hive中的数据导入到mysql中

(1)进入mysql

sudomysql-uhive-pdashuju168

useuserdb;

createtableuuser3likeuuser;(复制表结构)

descuuser3;查看表结构

(2)从hive中导出数据到mysql中

sqoopexport--connectjdbc:mysql://localhost:3306/userdb--usernamehive--passworddashuju168--tableuuser3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论