【发布时间】:2018-07-29 00:02:33
【问题描述】:
我有兴趣了解 Spark 在从本地文件系统加载文件时如何创建分区。
我正在使用 Databricks 社区版来学习 Spark。当我使用 sc.textfile 命令加载一个只有几千字节(大约 300 kb)的文件时,spark 默认会创建 2 个分区(由 partitions.length 给出)。当我加载大约 500 MB 的文件时,它会创建 8 个分区(等于机器中的内核数)。
这里的逻辑是什么?
另外,我从文档中了解到,如果我们从本地文件系统加载并使用集群,则该文件必须位于属于该集群的所有机器上的相同位置。这不会创建重复项吗? Spark 如何处理这种情况?如果您能指出阐明这一点的文章,那将有很大帮助。
谢谢!
【问题讨论】:
标签: apache-spark