在 YARN 上 Spark - saveAsTextFile() 方法创建大量空零件文件



我在Hadoop YARN Cluster上运行Spark作业。

我正在使用saveAsTextFile()方法将RDD存储到文本文件。

我可以看到从 150 个文件中创建了 250 多个空零件文件。

有没有办法避免这种情况?

每个分区都写入其自己的文件。空分区将写入为空文件。

为了避免写入空文件,您可以将RDD coalescerepartition到较少数量的分区中。

如果您没想到会有空分区,则可能值得调查一下为什么会有空分区。 空分区可能是由于过滤步骤从某些分区中删除了所有元素,或者由于哈希函数错误。 如果 RDD 元素的hashCode()不能很好地分布元素,则最终可能会得到具有空分区的不平衡 RDD。

相关内容

  • 没有找到相关文章