MAPREDUCE服务 MRS-Hive SQL开发规范:percentil_approx函数使用建议

时间:2025-02-28 23:46:45

percentil_approx函数使用建议

Hive SQL命令中,使用percentile_approx udf函数输出字段,Map阶段进行了部分聚合以及过滤条件下推,Reduce阶段则是将Map聚合的结果合并,如果percentil_approx处理的字段过多,可能会导致Reduce阶段失败。因此,建议如下:

  • 可通过以下命令设置超时时间:

    set mapreduce.task.timeout=7200000;

  • 关闭Map端聚合,所有逻辑放到Reduce进行。Map端聚合只减少了shuffle过程数据量,但Map不聚合,Reduce不用执行耗时的合并逻辑。

    set hive.map.aggr=false;

  • 找出percentil_approx处理字段中倾斜的字段值,单独处理,整改SQL。
support.huaweicloud.com/devg-rule-mrs/zh-cn_topic_0000002224784725.html