Apache Spark如何处理不适合内存的数据



我返回了一个 Spark 程序,用于从 2GB 内存文件中查找记录计数,存储内存为 1GB,并且它运行成功。

但我的问题是,2GB 文件无法放入 1GB 内存,但 Spark 如何处理文件并返回计数。

仅仅因为磁盘中有 2Gb 文件,并不意味着它会在 RAM 中占用相同或更少或更多的内存。另一点是文件在磁盘中的存储方式(行格式或列格式)。假设它以 ORC 格式存储,那么它已经具有有关表的预先计算的详细信息。

我建议您检查有关内存详细信息的 Spark 执行器和任务详细信息,以了解使用多少个阶段/执行程序/任务来完成 DAG。

最新更新