资讯详情

Hive sql在执行时如何优化?

1、使用mr引擎优化方案: Map端:

① 环形缓冲区的大小:mapreduce.task.io.sort.mb   默认100M,可以调高 ② 设置环形缓冲区的阈值:mapreduce.map.sort.spll.percent   默认80%,可以调高到90% ③ 增加Merge合并次数:mapreduce.task.io.sort.factor  默认10 可提高 ④ 增加MapTask内存大小:mapreduce.map.memory.mb   默认1G    --> 处理128M设置1的数据G ⑤ 增加MapTask堆内存的大小:mapreduce.map.java.opts=-Xmx13106M  --设置为13G ⑥ 增加MapTask中的核数:mapreduce.map.cpu.vcores     默认MapTask的cpu核数为1 ⑦ 设置重试次数:mapreduce.map.maxattempts    默认重试次数为4 ⑧ 合并小文件:set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat 

Reduce端

① mapreduce.reduce.shuffle.parallelcopies   拉取Map端数据并行数  默认5 ② mapreduce.reduce.shuffle.input.buffer.percent    默认0.7  提高0.8 ③ mapreduce.reduce.memory.mb   默认1G ④ mapreduce.reduce.cpu.vcores   默认cpu为1个 ⑤ mapreduce.task.timeout  默认10min     ⑥ mapreduce.reduce.slowstart.completedmaps   默认0.05  当MapTask完成的比例达到值后才会向上ReduceTask申请资源 
set hive.exec.parallel=true  并行执行开启任务 

2、使用spark 引擎优化

set spark.sql.shuffle.partitions = 1500  --设置shuffle的并行度 

标签: 速度传感器spll85a

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台