【发布时间】:2018-01-04 08:36:13
【问题描述】:
我正在使用 spark 处理大文件,我有 12 个分区。
我有 rdd1 和 rdd2 我在它们之间进行连接,而不是选择(rdd3)。
我的问题是,我咨询了最后一个分区比其他分区太大,从分区 1 到分区 11 45000 recodrs 但分区 12 9100000 recodrs。
所以我划分了9100000 / 45000 =~ 203。我将我的 rdd3 重新分区为214(203+11)
但我最后一个分区还是太大了。
如何平衡分区的大小?
我自己写的自定义分区器?
【问题讨论】:
-
是的
repartition和partitionBy -
你能详细说明你尝试了什么以及你得到的反馈表明它们没有奏效吗?
-
另外请附上代码,以便我们可以看到您在重新分区的过程中。
-
我自己写的自定义分区器?
-
需要有关您的数据的更多详细信息。对键进行分区。如果您的大多数键相同,则其中一个分区将很大。
标签: scala apache-spark rdd