作者: | 来源:互联网 | 2023-07-31 00:45
前言
当在hive上提交mapreduce任务时,常见的管理引擎有yarn与local,默认使用集群模式yarn进行执行。当执行任务计算的文件大小与文件数相对较小时,可以开启本地模式进行执行,效率相对集群模式会更高。
查看当前hive的本地模式情况
- 查看本地模式是否开启:set hive.exec.mode.local.auto;
- 查看启用本地模式允许的最大输入文件数:set hive.exec.mode.local.auto.input.files.max;
- 查看启用本地模式允许的最大文件大小:set hive.exec.mode.local.auto.inputbytes.max;
如下,默认关闭本地模式执行;本地模式下允许输入的最大文件数为4;最大文件大小为128M.
本地模式的执行效率
使用同样一段sql进行执行,运行效率如下:
集群模式:51秒;
本地模式:13秒。
SELECTid,COUNT(1)
FROMtest_table
WHEREdt = '2022-04-23'
GROUP BYid;
如何确定本地模式是否设置成功?
可以根据job的名称来判断,本地模式执行的job名称带有local标志,如下:
yarn集群的job:job_5690061100801_51019181;
本地模式下的job:job_local190266243_0001。