2023学年完整公开课版Hive优化策略_第1页
2023学年完整公开课版Hive优化策略_第2页
2023学年完整公开课版Hive优化策略_第3页
2023学年完整公开课版Hive优化策略_第4页
2023学年完整公开课版Hive优化策略_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

Hive优化策略查看执行计划2使用EXPLAIN,了解Hive是如何工作explain[extended|dependency|authorization]<query>explain将查询语句转化成stage组成的序列第一部分:查询的抽象语法树第二部分:执行计划中各个stage的依赖情况第三部分:每个stage的具体描述优化策略-并行执行3sethive.exec.parallel=true;

sethive.exec.parallel.thread.number=16;同一个sql允许并行任务的最大线程数一个hivesql语句可能会转为多个mapreduceJob,每一个job就是一个stage,这些job顺序执行,这个在cli的运行日志中也可以看到。但是有时候这些任务之间并不是是相互依赖的,如果集群资源允许的话,可以让多个并不相互依赖stage并发执行,这样就节约了时间,提高了执行速度,但是如果集群资源匮乏时,启用并行化反倒是会导致各个job相互抢占资源而导致整体执行性能的下降。优化策略—JVM重用4JVM重用使用一个JVM实例可以在同一个作用中重复使用设置方式

setmapred.job.reuse.jvm.num.tasks=10优化策略—推测执行5通过利用更多的资源来换取时间设置方式sethive.mapred.map.tasks.speculative.execution=true;

sethive.mapred.reduce.tasks.speculative.execution=true;优化策略—GROUPBY操作6并不是所有的聚合操作都需要在Reduce端完成,很多聚合操作都可以先在Map端进行部分聚合,最后在Reduce端得出最终结果。hive.map.aggr=true是否在Map端进行聚合,默认为True,sethive.groupby.mapaggr.checkinterval=100000在Map端进行聚合操作的条目数目有数据倾斜时进行负载均衡:hive.groupby.skewindata=true当sql语句使用groupby时数据出现倾斜时,如果该变量设置为true,那么Hive会自动进行负载均衡。策略就是把MR任务拆分成两个:第一个先做预汇总,第二个再做最终汇总。在MR的第一个阶段中,Map的输出结果集合会缓存到maptaks中,每个Reduce做部分聚合操作,并输出结果,这样处理的结果是相同GroupByKey有可能被分发到不同的Reduce中,从而达到负载均衡的目的;第二个阶段再根据预处理的数据结果按照GroupByKey分布到Reduce中(这个过程可以保证相同的GroupByKey被分布到同一个Reduce中),最后完成最终的聚合操作。优化策略—合并小文件7文件数目过多,会给HDFS带来压力,并且会影响处理效率,可以通过合并Map和Reduce的结果文件来消除这样的影响:hive.merge.mapfiles=true在maponly的任务结束时合并小文件hive.merge.mapredfiles=falsetrue时在MapReduce的任务结束时合并小文件hive.merge.size.per.task=256*1000*1000#合并文件的大小优化策略—设置适合的reduce个数8HadoopMapReduce程序中,reducer个数的设定极大影响执行效率,这使得Hive怎样决定reducer个数成为一个关键问题。遗憾的是Hive的估计机制很弱,不指定reducer个数的情况下,Hive会猜测确定一个reducer个数。参数1:hive.exec.reducers.bytes.per.reducer参数2:hive.exec.reducers.max公式:N=min(参数2,总输入数据量/参数1),

通常情况下,有必要手动指定reducer个数。考虑到map阶段的输出数据量通常会比输入有大

温馨提示

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

评论

0/150

提交评论