【发布时间】:2017-04-13 17:04:36
【问题描述】:
Spark 中的 shuffling(例如,如果我们执行 reduceByKey)结束后,每个分区的初始内容是否会发生变化,还是 Spark 只是将数据读入内存而不更改分区?
【问题讨论】:
-
还是SPARK只是将数据读入内存而不改变分区?
-
是的,它确实改变了..
标签: apache-spark rdd
Spark 中的 shuffling(例如,如果我们执行 reduceByKey)结束后,每个分区的初始内容是否会发生变化,还是 Spark 只是将数据读入内存而不更改分区?
【问题讨论】:
标签: apache-spark rdd
原来的 RDD 保持不变(它是不可变的)。 shuffle 过程读取每个分区中的数据,并为键的不同哈希值创建不同的缓冲区。然后创建新的分区,以便每个分区读取属于一个或多个哈希桶的所有缓冲区。结果是新的 RDD 有新的分区,其中包含来自多个原始分区的片段。
【讨论】: