Spark中的峰值执行内存

时间:2016-09-15 05:06:18

标签: apache-spark apache-spark-sql

在Apache spark UI阶段级别的指标之一是" Peak Execution Memory"?这个指标的含义是什么。

2 个答案:

答案 0 :(得分:5)

Peak Execution memory 是指在随机播放,聚合和连接期间创建的内部数据结构使用的内存。此累加器的值应大约是此任务中创建的所有此类数据结构的峰值大小的总和。对于SQL作业,这仅跟踪所有不安全的操作符,广播连接和外部排序。

您可以使用Tracking spark's memory usage

获得有关相同内容的更多见解

答案 1 :(得分:3)

峰值执行内存指标是在SPARK-8735中引入的。那是在默认情况下启用Tungsten之前,因此它假定spark.sql.unsafe.enabled必须显式设置为true。

Spark有许多内存用途:缓存,随机播放,元数据等。用户可以深入查看内部内存分配以进行内存密集型操作(如聚合和连接)。目标是为钨和非钨应用做到这一点。

同时查看SPARK-10144