Spark Programming Guide提到切片作为RDD的特征(并行集合或Hadoop数据集)。(" Spark将为集群的每个切片运行一个任务。")但是在关于RDD持久性的部分,使用分区的概念而不作介绍。此外,RDD docs仅提及没有提及切片的分区,而SparkContext docs提到用于创建RDD的切片,而是用于在RDD上运行作业的分区。这两个概念是一样的吗?如果没有,它们有何不同?
Tuning - Level of Parallelism表示" Spark根据其大小自动设置在每个文件上运行的“map”任务的数量......以及分布式“reduce”操作,例如groupByKey和reduceByKey,它使用最大的父RDD的分区数。您可以将并行级别作为第二个参数传递...."那么这解释了分区和切片之间的区别吗?分区与RDD存储有关,切片与并行度有关,默认情况下,接头是根据数据大小还是分区数计算的?
答案 0 :(得分:17)
他们是一回事。由于Matthew Farrellee,已经为Spark 1.2修复了文档。错误中的更多细节:https://issues.apache.org/jira/browse/SPARK-1701