Dataframe可以加入Spark保留顺序吗?

jes*_*est 5 dataframe apache-spark spark-dataframe

我目前正在尝试将两个DataFrame连接在一起,但在其中一个Dataframe中保留相同的顺序.

哪些操作维护RDD订单?,似乎(纠正我,如果这是不准确的,因为我是Spark的新手)加入不保留顺序,因为行由于数据在不同的分区中而未按指定的顺序加入/"到达"最终的数据帧.

如何在保留一个表的顺序的同时执行两个DataFrame的连接?

例如,

+------------+---------+ | col1 | col2 | +------------+---------+ | 0 | a | | 1 | b | +------------+---------+

加入

+------------+---------+ | col2 | col3 | +------------+---------+ | b | x | | a | y | +------------+---------+

col2上应该给

+------------+--------------------+ | col1 | col2 | col 3 | +------------+---------+----------+ | 0 | a | y | | 1 | b | x | +------------+---------+----------+

我听说过一些事情有关使用coalescerepartition,但我不知道.任何建议/方法/见解表示赞赏.

编辑:这类似于MapReduce中有一个reducer吗?如果是这样,那在Spark中会是什么样子?

小智 6

不可以。您可以monotonically_increasing_id在加入后添加数据并重新排序。