【发布时间】:2018-09-27 22:56:30
【问题描述】:
我最近在 spark 中工作,遇到了一些我仍然无法解决的问题。
假设我有一个 100GB 的数据集,我的集群内存大小是 16 GB。
现在,我知道如果只是读取文件并将其保存在 HDFS 中,Spark 会为每个分区执行此操作。当我对 100GB 数据进行排序或聚合转换时会发生什么?由于我们需要整个数据以进行排序,它将如何处理 100GB 的内存?
我已经浏览了下面的链接,但这只会告诉我们 spark 在持久化的情况下会做什么,我正在寻找的是 Spark 聚合或对大于 ram 大小的数据集进行排序。
Spark RDD - is partition(s) always in RAM?
感谢任何帮助。
【问题讨论】:
-
Spark 在内存用完时将内容溢出到磁盘(嗯,您可以更改默认配置...)。您可以在 UI 的“存储”选项卡中查看此信息。
标签: apache-spark hadoop hdfs