我是Spark的新手。我有一个很大的elementsRDD数据集,我想把它分成两个大小完全相等的分区,以保持元素的顺序。我试着像这样使用RangePartitioner
var data = partitionedFile.partitionBy(new RangePartitioner(2, partitionedFile))
这不会给出一个令人满意的结果,因为它粗略地划分了元素的大小,但不是完全相等,从而保持了元素的顺序。例如,如果有64个元素,我们使用Rangepartitioner
,那么它分为31个元素和33个元素。
我需要一个分割器,这样我就可以得到前32个元素在一半和另一半包含第二组32个元素。你能帮我建议如何使用一个自定义的分割器,这样我就可以得到大小相等的两半,保持元素的顺序吗?
https://stackoverflow.com/questions/23127329
复制相似问题