hive 调优
来源:互联网 发布:软件代理加盟 编辑:程序博客网 时间:2024/06/15 08:47
hive 本地模式
根据数据量的大小,可以开启hive的本地模式:hive.exec.mode.local.auto
该参数的默认值为false。
也可以把该属性配置到hive-site.xml中。
hive并行执行
hive并行执行,hive可以把一个查询转化成一个或者多个阶段,这些阶段并不是完全相互依赖的,也就是说有些阶段是可以并行执行的,这样就可以使整个job的执行时间变短。通过设置参数 mapred.exec.parallel 参数的值为true,就可以开启job的并行执行。
hive严格模式
如果要防止用户执行那些可能产生意想不到的查询的行为,可以设置参数 hive.mapred.mode 为strict。通过设置 set hive.mapred.mode=strict。可以禁止用户3中行为。
1:对于分区表,除非where子句中有分区字段的查询限制,负责不允许执行。
2:对于order by 语句必须增加limit限制,防止reduce界面额外执行很长的时间。
3:限制笛卡尔积的查询,join 语句中必须有on条件限制,负责不允许执行。
调整mapper,reducer个数
hive把查询划分成一个或者多个mapreduce任务达到并行的目的。确定合适的mapper,reducer个数,需要参考数据的数据量大小,以及执行的操作。
hive.exec.reducers.bytes.per.reducer这个参数也可以控制reduce 的个数。
mapred.reduce.tasks可是吧reduce个数设置为一个固定的值。
hive.exec.reducers.max可以这是job最大允许的task的个数。
多个group by 组装到多个mapredec任务中 通过这是 hive.mulitgroupby.singlemr 参数为true。(如果这些group by 中使用相同的key,这个优化将会生效)
虚拟列
一种用户将要划分的输入的文件名,另外一种用于文件内的块的偏移量。当hive产生非预期,或者null的结果时,可以通过虚拟列诊断查询。通过查询这写列,可以定位到那个文件,那行数据。
- hive 调优
- hive调优
- Hive调优
- Hive调优
- Hive 调优
- hive调优
- Hive调优
- hive调优
- hive 调优
- hive调优
- hive调优
- Hive调优
- [Hive]Hive调优:让任务并行执行
- hive 性能 调优、优化
- Hive Setting调优
- hive调优 ------- 竖表变横表
- hive 调优 总结大全
- hive mapreduce reducer 调优
- 1021. 个位数统计 (15)
- div自适应宽度和高度实现
- LeetCode-173. Binary Search Tree Iterator (JAVA)BST的迭代
- 段错误原因收集
- 1020. 月饼 (25)
- hive 调优
- java 基础思维导图
- leetcode 180. Consecutive Numbers 解题思路
- 十分钟pandas(数据透视、矩阵合并、读写文件)
- 剑指offer(java代码)——变态跳台阶
- 关于c++的一些话题
- 图形制作
- Mybatis 解决字段名与实体类属性名不相同的冲突
- 图论算法----二分图匹配----匈牙利算法详解