gpt4 book ai didi

python - 分区数如何影响 `wholeTextFiles` 和 `textFiles` ?

转载 作者:太空狗 更新时间:2023-10-30 01:00:38 27 4
gpt4 key购买 nike

在 spark 中,我了解如何使用 wholeTextFilestextFiles,但我不确定何时使用哪个。这是我目前所知道的:

  • 处理不按行分割的文件时,应使用wholeTextFiles,否则使用textFiles

我认为默认情况下,wholeTextFilestextFiles 分别按文件内容和行进行分区。但是,它们都允许您更改参数 minPartitions

那么,更改分区如何影响这些分区的处理方式?

例如,假设我有一个包含 100 行的非常大的文件。将其处理为具有 100 个分区的 wholeTextFiles 与使用默认分区 100 将其处理为 textFile(逐行分区)之间有什么区别。

它们之间有什么区别?

最佳答案

作为引用,wholeTextFiles 使用 WholeTextFileInputFormat 扩展 CombineFileInputFormat .

一些关于 wholeTextFiles 的注释。

  • wholeTextFiles 返回的 RDD 中的每条记录都有文件名和文件的全部内容。这意味着(根本)无法拆分文件。
  • 因为它扩展了 CombineFileInputFormat,所以它会尝试将多组较小的文件合并到一个分区中。

如果我在一个目录中有两个小文件,这两个文件可能最终会位于一个分区中。如果我设置 minPartitions=2,那么我可能会取回两个分区。

现在,如果我设置 minPartitions=3,我仍然会得到两个分区,因为 wholeTextFiles 的约定是 RDD 中的每条记录都包含一个完整的文件.

关于python - 分区数如何影响 `wholeTextFiles` 和 `textFiles` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33906583/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com