Escribir dataframe en Elastic con Scala

Prerequisitos Tener configurado la paquetería de Spark para IntelliJ IDEA Incluir en el fichero pon la paquetería propia de Elastic: <!– https://mvnrepository.com/artifact/org.elasticsearch/elasticsearch-spark-20 –> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch-spark-20_2.11</artifactId> <version>6.4.2</version> </dependency>   Ejemplo de como escribir un dataframe transformado a Mapa en un Elastic 6.4.2 local en Scala 2.1.1. package com.scala import org.apache.spark.sql.SparkSession import org.apache.spark.{SparkConf, SparkContext} import org.elasticsearch.spark._…

Autor: Diego Calvo

Read More »

Como crear un SparkSession con Scala 2.11 y Maven3

En este post vamos a mostrar la manera de invocar un SparkSession para escribir un fichero en disco mediante hfds. Para ello toma como punto de partida el post Mi primera Apache Spark con Scala con Maven en Intelligent Idea. En el paquete com.fer.cam se crea una Objeto denominado Main y se añade las siguientes…

Read More »

Análisis de Regresión lineal en Python Spark

Ejemplo de Regresión lineal simple en Python Spark Se muestra un ejemplo de regresión lineal simple sobre un conjunto de datos que se genera de forma aleatoria. Entra regresión se ejecuta sobre una sesión de Spark utilizando la librería propia de Spark para machine learning. # -*- coding: utf-8 -*- “”” Spark Regression “”” from…

Autor: Diego Calvo

Read More »

Ejecución distribuida de Spark Scala en IntelliJ Idea mediante SBT

Ejemplo en Scala Spark de multiplicar por dos un vector En este ejemplo se muestran los pasos a seguir para crear un proyecto spark en Scala y ejecutarlo como un trabajo en el sistema distribuido Crear proyecto Entrar en el entorno de desarrollo IntelliJ Idea y crear un nuevo proyecto Scala de tipo SBT Configurar…

Autor: Diego Calvo

Read More »

Ejecución distribuida Spark para Python

Ejemplo “Hola mundo” Definir el script en Python a ejecutar Código del fichero hola_mundo.py from pyspark.sql import SparkSession spark = SparkSession.builder.appName(“Hola_Mundo”).getOrCreate() print(“Hola mundo”) spark.stop() Nota: Al ser un lenguaje interpretado no es necesario compilarlo para su ejecución.   Ejecución distribuida del script Para ejecutar de forma distribuida el script en python detro de un entorno…

Autor: Diego Calvo

Read More »

Procesar datos en tiempo real (streaming) en Scala

Prerequisitos Limpiar todos los hdfs generados, utilizando la linea de comandos hdfs dfs -rm -r /streaming hdfs dfs -mkdir /streaming hdfs dfs -ls /streaming Generar datos usados para iniciar el análisis Se genera una serie de datos en formato json que se almacenan en un fichero hdfs. val events = sc.parallelize( “””  [{“accion”:”Abrir”, “tiempo”:”2018-08-01T00:01:17Z”},  …

Autor: Diego Calvo

Read More »

Unir dataframes en Scala

Ejemplo: Unir tablas Unir tablas que tenga el identificador comun val df_personas = Seq(   (1,”Paco”,”Garcia”,24,24000),   (2,”Juan”,”Garcia”,26,27000),   (3,”Lola”,”Martin”,29,31000),   (4,”Sara”,”Garcia”,35,34000) ).toDF(“id”,”nombre”, “apellido”,”edad”,”salario”) val df_gustos = Seq(   (1,”Rojo”,”Pasta”),   (2,”Amarillo”,”Pizza”),   (3,”Azul”,”Patatas”),   (5,”Rojo”,”Pizza”),   (6,”Negro”,”Pulpo”) ).toDF(“id”, “color”,”comida”) df_personas     .join(df_gustos, “id”)     .select(“nombre”, “edad”, “color”, “comida”)     .show() +——+—-+——–+——-+ |nombre|edad| color| comida|…

Autor: Diego Calvo

Read More »

Agrupar elementos de un dataframe en Scala

Ejemplo: Agrupar datos de forma simple Ejemplo donde se agrupa la tabla personas por apellido df.groupBy(“apellido”).count().show() +——–+—–+ |apellido|count| +——–+—–+ | Martin| 1| | Garcia| 3| +——–+—–+ Ejemplo: Agrupar datos combinado con filtro Ejemplo donde se agrupa la tabla personas por apellido y se selecciona los que tenga más de 2 apariciones. df.groupBy(“apellido”).count().filter(“count > 2”).show() +——–+—–+…

Autor: Diego Calvo

Read More »

Ordenar dataframe en Scala

Ejemplo: Ordenar datos simple Ejemplo donde se ordena la tabla personas por nombre df.sort(desc(“nombre”)).show() df.sort($”nombre”.desc).show() df.orderBy($”nombre”.desc).show() +——+——–+—-+——-+ |nombre|apellido|edad|salario| +——+——–+—-+——-+ | Sara| Garcia| 35| 34000| | Paco| Garcia| 24| 24000| | Lola| Martin| 29| 31000| | Juan| Garcia| 26| 27000| +——+——–+—-+——-+   Ejemplo: Ordenar datos por varios criterios Ejemplo donde se ordena la tabla personas por…

Autor: Diego Calvo

Read More »

Funciones estadísticas de dataframes en Scala

Ejemplo de funciones estadiscias: media Muestra un ejemplo de como realizar la media sobre un conjunto de datos val df = Seq(   (“Paco”,”Garcia”,24,24000),   (“Juan”,”Garcia”,26,27000),   (“Lola”,”Martin”,29,31000),   (“Sara”,”Martin”,32,32000),   (“Sara”,”Garcia”,35,34000) ).toDF(“nombre”, “apellido”,”edad”,”salario”) df   .select(avg(“edad”))   .show() +———+ |avg(edad)| +———+ | 29.2| +———+ Ejemplo de funciones estadiscias: suma Muestra un ejemplo de como…

Autor: Diego Calvo

Read More »