gpt4 book ai didi

apache-spark - 如何估算 Spark Shuffle 所需的内存和磁盘?

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

使用Spark-SQL时,如何预估Spark Shuffle所需的内存和磁盘?

SQL:

select key, collect_set(value) from table_a group by key;

如果table_a有N行,K个key,每行b字节,我可以使用 C 内核,有没有办法估计 spark shuffle 所需的内存和磁盘?

spark版本:2.1.0,使用基于排序的shuffle。

最佳答案

在不对键和值分配做出任何假设的情况下,最坏的情况是:

  • K - 1 个只有单个值的键。
  • 1 个具有 N - K + 1 个唯一值的键。

假设哈希函数的属性成立,并且 key 在核心之间均匀分布,这提供了内存

(((N - K + 1) / C  + N - K + 1) * bytes) * serialization_efficiency

对于负载最高的核心,其峰值内存需求应成正比(如果数据可以从磁盘加载):

(N - K + 1) * bytes 

关于apache-spark - 如何估算 Spark Shuffle 所需的内存和磁盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45907641/

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