2017-05-21 3 views
1

Ich habe drei RDDs (x, y, z), die ich möchte mitmachen. Das erste Element aller drei RDDs ist der Schlüssel, der für den Join verwendet wird.Wie mehrere RDDs in pyspark beitreten, ohne DF zu konvertieren

Ich weiß, wie zwei verbinden:

rdd1 = x.map(lambda r: (r[0], r[1:])) 
rdd2 = y.map(lambda r: (r[0], r[1:])) 
rdd1_rdd2 = rdd1.join(rdd2) 

Wie kann ich die dritte RDD, z verbinden, rdd1_rdd2?

Antwort

2

Fügen Sie einfach eine andere verbinden und glätten das Ergebnis:

rdd1_rdd2.join(rdd3).mapValues(lambda x: x[0] + (x[1],)) 
Verwandte Themen