Agrupar elementos de un RDD en Scala

Agrupar por clave – groupByKey() Agrupa los elementos de un RDD por clave. val words = sc.parallelize(List(«avion», «tren», «barco», «coche», «moto», «bici»), 2) val rdd_with_key = words.keyBy(_.length) // se usa la longitud de la palabra como clave rdd_with_key.groupByKey.collect() res: Array[(Int, Iterable[String])] = Array((4,CompactBuffer(tren, moto, bici)), (5,CompactBuffer(avion, barco, coche)))   Reducir por clave – reduceByKey() Agrega…

Read More »

Selección aleatoria de partes de RDDs en Scala

Fracción de RDD – sample() Nos devuelve un RRD que representa una fracción de los datos val rdd1= sc.parallelize(1 to 10, 4) val rdd2 = rdd1.sample(false, 0.25, 1234) rdd2.collect() res: Array[Int] = Array(4, 7, 8)   Selección aleatoria de elementos por clave –  sampleByKey() Nos devuelve un RDD que representa usa selección aleatoria con las…

Read More »

Filtrar RDDs en Scala

Filtrar RDD – filter() Nos devuelve un RDD después de aplicar una función de filtro sobre el RDD original val rdd1 = sc.parallelize(List(«pescado azul», «cielo azul», «pescado blanco», «carne roja»)) val rdd2 = rdd1.filter(_.contains(«azul»)) rdd2.collect res: Array[String] = Array(pescado azul, cielo azul)   Elementos distintos de RDD – distinct() Nos devuelve un RDD con los…

Read More »

Mapear RDDs en Scala

Mapear – map() Nos devuelve un RDD después de aplicar una función de transformación al RDD original. val rdd1 = sc.parallelize(List(1,2,3,4,5,6,7,8,9)) val rdd2 = rdd1.map(_ * 2) rdd2.collect res: Array[Int] = Array(2, 4, 6, 8, 10, 12, 14, 16, 18) Mapear 2 – flatMap() Similar a la función map, pero la función devuelve una secuencia…

Read More »

Unión e interseción de RDD en Scala

Union – union() Nos devuelve la unión de los dos RDDs val rdd1 = sc.parallelize(1 to 4, 1) val rdd2 = sc.parallelize(8 to 10, 1) rdd1.union(rdd2).collect() res: Array[Int] = Array(1, 2, 3, 4, 8, 9, 10)   Unión por clave – join() Nos devuelve la unión de dos RDDs unidos por clave. Si los conjuntos…

Read More »

Función en Scala

Función sin parámetros Ejemplo de función simple en Scala def hola_mundo() = { println(«¡Hola, mundo!») } HolaMundo hola_mundo: ()Unit res: HolaMundo.type = HolaMundo$@123f7624   Función con parámetros Ejemplo de función en Scala que admite parámetros def suma(x: Int = 2, y: Int = 3): Int = { x + y } suma(2,3) suma: (x: Int,…

Read More »