为什么在读取文件时增加 NumPartitions 会比 spark RDD 中的原始文件增加输入大小?

问题描述

我正在使用带有一个分区的 sc.textFile(<fileName>,1) 读取一个小文本文件,我可以看到输入大小与原始文件大小相同。 但是,当将分区增加到 5. sc.textFile(<fileName>,5) 时,输入大小几乎增加了原始文件大小的 3 倍。 我正在调用计数操作来启动作业,并且代码正在我的本地机器上运行。

enter image description here

enter image description here

解决方法

正如您所提到的,您的文件很小,当您使用更大的份数时,元数据会显得很重要。如果您尝试使用更大的文件,例如 1G 或更大的文件,您会发现元数据的开销不算什么。