gpt4 book ai didi

apache-spark - spark-2.0.3中的spark.sql.shuffle.partitions无效

转载 作者:行者123 更新时间:2023-12-02 20:40:25 25 4
gpt4 key购买 nike

我打算执行一个基于Hive-On-Spark的SQL,设置如下:

select a,b,sum(c) from tbl_a group by a,b

set hive.execution.engine=spark; set spark.sql.shuffle.partitions=1201;



然后,在应用程序启动后,我只能从Spark yarn网页看到82个并行运行的任务,这与预期的不一样。我已经测试了另一个更复杂的SQL(使用GROUP BY CUBE,其中嵌套了SQL查询),并且在第二阶段它仅产生17个任务,这将导致大量的full-gc。知道 spark.sql.shuffle.partitions为什么无效吗?谢谢!

最佳答案

进行以下两个设置后,分区号将恢复正常并再次符合预期。

set hive.exec.reducers.bytes.per.reducer=67108864;
set mapred.reduce.tasks=1201;

似乎HiveOnSpark仍会应用一些hadoop参数来决定执行计划,并遮盖相应的spark参数。

我已经写了一个post,用于详细的场景回放和引用。

关于apache-spark - spark-2.0.3中的spark.sql.shuffle.partitions无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49859229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com