Hay una combinación externa izquierda equivalente en la CHISPA de la SCALA ? Entiendo que hay unirse a la operación, que es equivalente a la base de datos de inner join.

OriginalEl autor user3279189 | 2014-04-21

4 Comentarios

  1. 5

    Es tan simple como rdd1.leftOuterJoin(rdd2) pero usted tiene que asegurarse de que tanto la rdd en la forma de (clave, valor) para cada elemento de la rdd.

    OriginalEl autor Thang Tran

  2. 3

    Sí, los hay. Eche un vistazo a la DStream Api y han proporcionado a la izquierda así como el derecho combinaciones externas.

    Si usted tiene un flujo de tipo digamos ‘Registro’, y desea unirse a dos flujos de registros, entonces usted puede hacer esto como :

    var res: DStream[(Long, (Record, Option[Record]))] = left.leftOuterJoin(right)

    Como la Api decir, la izquierda y a la derecha los arroyos tienen que ser hash particiones. es decir, usted puede tomar algunos atributos de un Registro, (o puede ser de otra manera) para calcular un valor de Hash, y convertirlo en un par de DStream. left y right los flujos de tipo DStream[(Long, Record)] antes de llamar a que se unan a la función. (Es sólo un ejemplo. El tipo de Hash puede ser de algún tipo distinto de Long así.)

    gracias..es de gran ayuda si usted podría dar un ejemplo de código…

    OriginalEl autor gaganbm

  3. 0

    Chispa SQL /Marco de Datos de la API también apoya a la IZQUIERDA/DERECHA/FULL exterior se une directamente:

    https://spark.apache.org/docs/latest/sql-programming-guide.html

    Porque de este error: https://issues.apache.org/jira/browse/SPARK-11111 exterior se une en la Chispa de antes 1.6 podría ser muy lento (a menos que usted realmente pequeños conjuntos de datos a unirse). Se utiliza para el uso de producto cartesiano y, a continuación, filtrado antes de 1.6. Ahora es el uso de SortMergeJoin lugar.

    OriginalEl autor Tagar

Dejar respuesta

Please enter your comment!
Please enter your name here