更新时间:2025-07-16 GMT+08:00

配置Hive任务的最大Map数

操作场景

在Hive任务中,Map数量直接影响查询性能,通常Hive根据输入数据大小和HDFS块大小自动计算Map任务数,但在某些场景下需要手动调整:

  • 数据倾斜:大文件导致单个Map任务处理时间过长。
  • 资源优化:集群资源紧张时,限制并发Map任务数。
  • 任务调度:控制Map任务粒度,避免过多小任务消耗资源。

本章节指导用户通过自定义参数从服务端限定Hive任务的最大Map数,避免HiveServer服务过载而引发的性能问题。

操作步骤

  1. 登录FusionInsight Manager页面,选择“集群 > 服务 > Hive > 配置 > 全部配置”。
  2. 选择“MetaStore(角色) > 自定义”,对参数文件“hivemetastore-site.xml”添加自定义参数,设置“名称”为“hive.mapreduce.per.task.max.splits”,“值”为具体设定值,一般尽量设置大。

    图1 添加Hive自定义配置参数

  3. 单击“保存”保存配置。单击“实例”,勾选所有Hive实例,选择“更多 > 重启实例”,输入当前用户密码,单击“确定”重启所有Hive实例。