一、本课程是怎么样的一门课程(全面介绍)
1.1、课程的背景
作为企业Hadoop应用的核心产品,Hive承载着FaceBook、淘宝等大佬 95%以上的离线统计,很多企业里的离线统计甚至全由Hive完成,如我所在的电商。
Hive在企业云计算平台发挥的作用和影响愈来愈大,如何优化提速已经显得至关重要。
Hive作业的规模决定着优化层级,一个Hive作业的优化和一万的Hive作业的优化截然不同。
拥有1万多个Hive作业的大电商如何进行Hive优化的?本系列课结合企业实战和场景从作业架构层面、Hql(Hive sql)语法层面、Hive参数层面依次讲述。
1.2、课程内容简介
当然,好的架构胜过任何优化,有哪些策略构建好Hive Job架构?
好的Hql同样会效率大增,如何写出高效的Hql?
修改Hive参数,有时也能起到很好的效果
1.3、课程大纲
第一章:架构方面优化策略(5讲)
Hadoop的主要性能瓶颈是IO负载,降IO负载是优化的重头戏。
本章大纲:
作业架构优化手段大探底
多个降IO负载的策略和场景...
分表、源表归纳
合理设计表分区、动态分区
压缩、分布式缓存
第二章:Hive Sql语法层面和Properties参数层面优化(4讲)
语法优化手段归纳
Map数和Reduce数的决定和控制及案例分析
数据倾斜的避免和解决办法
执行计划剖析,从执行计划上找倾斜根本
Properties参数
高效Join、MapJoin、SEMI JOIN
减少Job 合并MR
Mapreduce中间参数
第三章:Impala熟悉和使用(1讲)
Impala是Cloudera 公司推出仿Hive的一个产品,目前已经有稳定的发行版本。
理论上性能比Hive好,但目前版本功能和扩展性上远不能替代Hive。
未来该产品或会有一定影响力。
特点:同Hive一样是类sql产品
公用Hive的元数据库
第一讲:Hive体系结构及Hive作业形式
第二讲:Hive优化策略大探底及架构优化案例一
第三讲:架构优化案例二之降IO负载策略I
第四讲:架构优化案例二之降IO负载策略II
第五讲:架构优化案例二之降IO负载策略III—压缩和分布式缓存
第六讲:Hive语法、参数层面优化一
第七讲:Hive语法、参数层面优化二
第八讲:Hive语法、参数层面优化三
二、课程环境:
Cloudera Hadoop 4 (Hadoop 2.0)
Hive-0.90
三、所需技术基础:
Hadoop基础、Hive基础、Linux基础,其他不限制(不分Java和.Net方向,皆适合)。