Definición


Es una transformación que nos permite combinar dos RDD, en base a las claves de los registros. Junta cada registro del primer RDD con cada registro del segundo RDD que tengan la misma clave. Este no agrupa, sino que es de a pares de registro.

Similar al merge de pandas tenemos 4 tipos de join:

Inner join

Cuando se llama para sets de datos del tipo y devuelve un set de datos del tipo con todos los pares de elementos para cada key, específicamente los que hay en común por esa clave en ambos sets de datos.

izquierdaRDD.join(derechaRDD)

Representación gráfica


Donde visualmente se puede entender como

Link to original

Left outer join

Cuando se llama para sets de datos del tipo y devuelve un set de datos del tipo asegurándonos que todos los del set de datos izquierda estarán en el resultado del join.

izquierdaRDD.leftOuterJoin(derechaRDD)

Representación gráfica


Donde visualmente se puede entender como

Link to original

Right outer join

Cuando se llama para sets de datos del tipo y devuelve un set de datos del tipo asegurándonos que todos los del set de datos derecho estarán en el resultado del join.

izquierdaRDD.rightOuterJoin(derechaRDD)

Representación gráfica


Donde visualmente se puede entender como

Link to original

Outer join

Cuando se llama para sets de datos del tipo y devuelve un set de datos del tipo asegurándonos que todos los datos de ambos set de datos estarán aunque no haya match de keys.

izquierdaRDD.fullOuterJoin(derechaRDD)

Representación gráfica


Donde visualmente se puede entender como

Link to original