一、调优概述
Hive 作为大数据领域常用的数据仓库组件,在平时设计和查询时要特别注意效率。影响 Hive 效率的几乎从不是数据量过大,而是数据倾斜、数据冗余、Job或I/O过多、MapReduce 分配不合理等等。对Hive 的调优既包含 Hive 的建表设计方面,对HiveHQL 语句本身的优化,也包含 Hive 配置参数和底层引擎 MapReduce 方面的调整。
所以此次调优主要分为以下四个方面展开:文章来源:https://www.toymoban.com/news/detail-807675.html
- Hive的建表设计层面
- HQL语法和运行参数层面
- Hive架构层面
- Hive数据倾斜
总之,Hive调优的作用:在保证业务结果不变的前提下,降低资源的使用量,减少任务的执行时间。文章来源地址https://www.toymoban.com/news/detail-807675.html
二、调优须知
- 对于大数据计算引擎来说:数据量大不是问题,数据倾斜是个问题。
- Hive的复杂HQL底层会转换成多个MapReduce Job并行或者串行执行,Job数比较多的作业运行效
率相对比较低,比如即使只有几百行数据的表,如果多次关联多次汇总,产生十几个Job,耗时很长。
原因是 MapReduce 作业初始化的时间是比较长的。 - 在进行Hive大数据分析时,常见的聚合操作比如sum,count,max,min,UDAF等 ,不怕数据倾
斜问题,MapReduce 在 Mappe阶段 的预聚合操作,使数据倾斜不成问题。 - 好的建表设计,模型设计事半功倍。
- 设置合理的 MapReduce 的 Task 并行度,能有效
到了这里,关于Hive调优一文打尽的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!