1、hive中控制并行执行的参数有如下几个:

$ bin/hive -e set | grep parall

hive.exec.parallel=false

hive.exec.parallel.thread.number=8

hive.stats.map.parallelism=1

其中:hive.exec.parallel=false、hive.exec.parallel.thread.number=8分别控制着hive并行执行的特性。hive.exec.parallel=false表示默认没有启用并行参数,可以将其设置为true,在执行作业前进行session级别设置;hive.exec.parallel.thread.number=8表示每个SQL执行并行的线程最大值,默认是8.

例如:

set hive.exec.parallel=true;

set hive.exec.parallel.thread.number=8;

select deptno,count(1) from emp group by deptno

union all

select deptno ,count(1) from emp group by deptno;

上面这个SQL的执行既可以启动并行,既可以同时执行不相关任务,而不需要一步一步顺序执行。

2、注意点:在hadoop上自行mapreduce任务数是有限制的,针对于集群资源充足的情况,并行自行可以很大程度提高性能,但如果集群资源本身就很紧张,那么并行并不能启动有效效果。

一个可能的hive作业设置为:

set mapred.max.split.size=100000000;
set mapred.min.split.size.per.node=100000000;
set mapred.min.split.size.per.rack=100000000;
set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;

set hive.exec.reducers.bytes.per.reducer=1000000000;

set hive.exec.reducers.max=256;

set hive.merge.mapfiles=true;

set hive.merge.mapredfiles =ture;

set hive.merge.size.per.task=256000000;

set hive.merge.smallfiles.avgsize=16000000;

set hive.exec.compress.intermediate=true;

set mapred.map.output.compression.codec= org.apache.hadoop.io.compress.SnappyCodec;

set hive.exec.compress.output=true;

set mapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec;

set hive.exec.parallel=true;

set hive.exec.parallel.thread.number=8;

select deptno,count(1) from emp group by deptno

union all

select deptno ,count(1) from emp group by deptno;

最新文章

  1. iOS - GeoCoder 地理编码
  2. Codeforces Round #366 (Div. 2) A
  3. 配置webstorm使用supervisor时出现 /usr/bin/env: node: 没有那个文件或目录 解决方法
  4. Redis系列(1)之安装
  5. JAVA GUI 工具
  6. wamp 虚拟目录的设置(转载)
  7. C语言:json库使用学习
  8. 服务端技术进阶(八)GitHub入门篇
  9. Python-Django-BMS-增删改查
  10. SSMS登记密码清除
  11. (GoRails)使用vue和Vuex管理嵌套的JavaScript评论, 使用组件vue-map-field
  12. iOS开发 SourceTree将develop合并到master分支的详细步骤
  13. oracle 中如何定位重要(消耗资源多)的SQL
  14. ogg使用语句
  15. URAL 1995 Illegal spices
  16. [模板]KMP字符串匹配
  17. Apache 在不同平台和版本上的默认文件布局
  18. Bellman-Ford算法——解决负权边
  19. Java基础—抽象类和接口
  20. 了解Hypertable

热门文章

  1. Linux02 cd命令以及绝对路径和相对路径
  2. QueryList::Query() The received content is empty!的经准灵活解决办法
  3. PAT(B) 1038 统计同成绩学生(C)统计
  4. RT1502移植LUA成功的总结
  5. bootstrap栅格系统的container和row一些关系
  6. 怎样解决Script error报错问题
  7. PAT-1021 Deepest Root (25 分) 并查集判断成环和联通+求树的深度
  8. Asp.net Core 2.0 OpenId Connect Handler缺失Claims?
  9. linux 基础指令
  10. 基于SCADA数据驱动的风电机组部件故障预警