Hive MR和Tez 启用Local模式
1.说明
启动local模式,就是让hive的任务不运行在yarn上面。直接当前的服务器执行
2.优点
当我们对Hive的源码进行Debug,且代码需要Debug到每个task内部时,如果任务是执行在yarn模式的话,那么是无法打断点的,需要进入local模式才能打断点
3.MR
当引擎为MR时,需要修改以下参数,可以修改配置文件hive-site.xml,也可以通过set来生效
3.1 hive-site.xml
<property>
<name>hive.exec.mode.local.auto</name>
<value>true</value>
</property>
<property>
<name>hive.exec.mode.local.auto.inputbytes.max</name>
<value>134217728</value>
</property>
<property>
<name>hive.exec.mode.local.auto.input.files.max</name>
<value>10</value>
</property>
3.2 set模式
-- 是否开启local模式
set hive.exec.mode.local.auto=true;
-- 输入最大数据量,默认128MB
set hive.exec.mode.local.auto.inputbytes.max=134217728;
-- 最大任务数
set hive.exec.mode.local.auto.input.files.max=10;
4.Tez
当引擎为Tez时,需要修改tez的配置文件tez-site.xml,如果通过set来执行将不生效
4.1 tez-site.xml
<property>
<name>tez.local.mode</name>
<value>true</value>
</property>
<property>
<name>tez.grouping.split-count</name>
<value>1</value>
</property>
说明:tez.grouping.split-count和上面的hive.exec.mode.local.auto.input.files.max类似