spark SQL中的共同分区连接

jav*_*dba 14 apache-spark apache-spark-sql

是否存在提供共分区连接的Spark SQL DataSource的任何实现 - 最有可能通过CoGroupRDD?我没有在现有的Spark代码库中看到任何用途.

在两个表具有相同数量和相同范围的分区键的情况下,动机将是大大减少混洗流量:在这种情况下,将存在Mx1而不是MxN shuffle扇出.

目前在Spark SQL中唯一的大规模连接实现似乎是ShuffledHashJoin - 它确实需要MxN shuffle扇出,因此很昂贵.

Mic*_*ust 5

我认为您正在寻找应该在Spark 2.0中推出的Bucket Join优化.

在1.6中,您可以完成类似的操作,但只能通过缓存数据.SPARK-4849