Selecionar y filtrar con SQL Spark en Scala

Ejemplo: Contar datos Contar las personas que sean mayores de 30 años val df = Seq(   («Paco»,»Garcia»,24,24000),   («Juan»,»Garcia»,26,27000),   («Lola»,»Martin»,29,31000),   («Sara»,»Garcia»,35,34000) ).toDF(«nombre», «apellido»,»edad»,»salario») df.createOrReplaceTempView(«personas») spark     .sql(       «»»select         |count(*) as mayores_de_30         |from personas         |where edad > 30     «»».stripMargin)     .show +—————–+ | mayores_de_30 | +—————–+ | 1|…

Read More »

Filtrar DataFrame en Scala

Filtrar de datos con like Ejemplo que realiza un filtrado para seleccionar las personas que su apellido contiene «Garc» y cuya edad es menor de 30. val df = sc.parallelize(Seq( («Paco»,»Garcia»,24,24000,»2018-08-06 00:00:00″), («Juan»,»Garcia»,26,27000,»2018-08-07 00:00:00″), («Ana», «Martin»,28,28000,»2018-08-14 00:00:00″), («Lola»,»Martin»,29,31000,»2018-08-18 00:00:00″), («Sara»,»Garcia»,35,34000,»2018-08-20 00:00:00″) )).toDF(«nombre»,»apellido»,»edad»,»salario»,»fecha_reg») val type_df = df.select($»nombre»,$»apellido»,$»edad»,$»salario», unix_timestamp($»fecha_reg», «yyyy-MM-dd HH:mm:ss»).cast(TimestampType).as(«timestamp»)) type_df.show() val filter_df = type_df.filter(«apellido like…

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 »