本课程将从Hive的基本概念入手,深入解析Hive的使用方式、HQL语法以及常用的仓库模式设计和Hive优化方法,并对未来Hive的发展和高级特性做一些简单介绍,并通过最后的案例实践巩固学习内容。通过本课程的学习,将能够胜任大多数互联网场景下的大数据分析和数据开发任务。
面向数据分析和数据开发,希望从事和进一步了解互联网数据仓库以及数据分析的学员。
第一课 Hadoop与MapReduce
- 1) Hive在Hadoop Ecosystem中的地位
- 2) Hive的版本演进与目前现状
- 3) 课程实践环境说明
- 4) 实操: Hive/Hadoop预备环境安装
第二课 Hive的基本概念与QuickStart
- 1) Hive的安装部署
- 2) Hive的基本架构
- 3) 启动Hive
- 4) Hive命令行
- 5) HiveServer与JDBC/ODBC
- 6) 实操: Hive命令行和ThriftServer基本使用
第三课 数据类型与文件格式
- 1) Hive支持的基本数据类型
- 2) Hive支持的集合数据类型
- 3) Hive支持的文件格式与优劣对比
第四课 HiveQL:数据定义
- 1) Hive数据模型
- 2) Database
- 3) Table
- 4) Partition
- 5) 自定义存储格式
- 6) 自定义表属性
- 7) 常用创建/删除/修改表语法
- 8) 实操: HQL 创建/删除/修改操作练习
第五课 HiveQL:数据操作
- 1) 加载数据(LoadData)
- 2) 从查询计算结果加载数据(Insert Table Select)
- 3) 动态分区(DynamicPartitioning)
- 4) CTAS(CreateTableAsSelect)
- 5) 导出数据
- 6) 实操: 练习以上数据加载计算和导出操作
第六课 HiveQL:数据查询
- 1) 从最简单的开始
- 2) Select … From
- 3) Where条件
- 4) Group By条件
- 5) Join
- 6) 排序(OrderBy/SortBy)
- 7) ClusterBy/DistributeBy
- 8) 抽样(Sampling)
- 9) Union
- 10) 实操: 练习以上各种查询语法
第七课 Hive函数与自定义函数
- 1) 查看与调用函数
- 2) 常用标准函数(UDF)
- 3) UDAF
- 4) UDTF
- 5) UDF/UDAF/UDTF开发
- 6) 实操: 练习并完成UDF Java开发的作业
第八课 Hive常用模式设计
- 1) 按天做Partition
- 2) 分桶(Bucket)
- 3) 压缩
- 4) 表Schema变更
- 5) 实操: 练习以上几种仓库设计模式
第九课 Hive调优
- 1) Hive参数说明
- 2) Explain查看执行计划
- 3) 控制Map/Reduce数
- 4) 并行执行
- 5) 推测执行
- 6) Join优化
- 7) 数据倾斜问题
- 8) 动态分区优化
- 9) 实操: 练习并理解不同优化参数下的执行逻辑
第十课 Hive新特性与其他
- 1) Hive on Tez
- 2) Hive on Spark
- 3) Hive与HBase集成
- 4) HCatalog
第十一课 案例
- 1) 广告用户行为分析场景预备
- 2) 构建Hive表与数据处理
- 3) 常用分析案例
- 4) 实操: 完成以上案例作业