在Spark中,我可以做到
sc.parallelize([(0, 0), (1, 1), (0, 2), (1, 3), (0, 4), (1, 5)], 2).partitionBy(2)
但是,这首先在群集的节点上分发数据,然后再次将其洗牌。当从驱动程序输入数据时,有没有办法按键分区?
答案 0 :(得分:0)
在您提供的示例中,在您要通过partitionByKey()
明确提及之前,Spark不知道数据的分区。
但是如果数据已经以适当的方式组织,那么Spark可以利用数据的自然分区。例如,
因此,数据,文件系统等的性质将影响Spark中的分区。