2015-03-04 16 views
12

Gibt es Implementierungen von Spark SQL DataSources, die Co-Partitions Joins anbieten - am wahrscheinlichsten über das CoGroupRDD? Ich habe keine Verwendung innerhalb der vorhandenen Spark Codebasis gesehen.Co-partitionierte Joins in Spark SQL

Die Motivation wäre stark den Shuffle-Verkehr in dem Fall zu verringern, die zwei Tabellen die gleiche Anzahl und gleiche Bereiche von Partitionierungsschlüsseln haben: In diesem Fall gäbe es eine Mx1- anstelle eine MxN Shuffle Fanout.

Die einzige großtechnische Umsetzung von derzeit tritt in Spark-SQL scheint ShuffledHashJoin zu sein - die tut die MxN Shuffle Fanout erfordern und somit teuer ist.

Antwort

4

Ich denke, Sie suchen nach der Bucket Join optimization, die in Spark 2.0 kommen sollte.

In 1.6 können Sie etwas ähnliches erreichen, aber nur durch Zwischenspeichern der Daten. SPARK-4849

+0

Danke Michael. Freue mich auf den Bucket beitreten. – javadba