SlideShare una empresa de Scribd logo
1 de 59
Descargar para leer sin conexión
Stratio - Spark
Early adopters
Jorge López-Malla Matute
Índice
jlopezm@stratio.com
@jorgelopezmalla
Abel Rincón Matarranz
Consolidación y locura por el SQL y el Streaming
arincon@stratio.com
@ganger85
Inicios o ¿dónde está mi map & reduce?1
3
2
4El auge de los data scientist Spark 2.0 and beyond
5 Ruegos y preguntas
Presentación
Presentación
ABEL RINCÓN MATARRANZ
SKILLS
Presentación
Presentación
JORGE LÓPEZ-MALLA
@jorgelopezmalla
Después de unos años trabajando en
proyectos con tecnologías tradicionales
empecé a trabajar con Big en I+D y
desde entonces me enamoré de este
mundo.
Tras trabajar en diversos proyectos
usando Spark como tecnología base
estoy a cargo de las modificaciones de
Spark para la plataforma Stratio
SKILLS
La empresa
Stratio acompaña a las empresas en su viaje hacia la Transformación Digital. Mediante el trabajo duro y la
creatividad, nuestra meta es reinventar a las empresa alrededor de sus datos para que así estas puedan
competir en este nuevo mundo digital.
Nuestra solución es un producto de transformación que utiliza tecnologías Big Data de tercera generación
para ejecutar la forma más completa de Transformación Digital, garantizando escalabilidad, flexibilidad
máxima y adaptación a nuevos mercados.
Si tenéis alguna pregunta o quereis a una demostración en vivo de nuestro producto, contactar
con: contact@stratio.com
Presentación
Nuestro producto
Presentación
Inicios o ¿dónde está mi
map & reduce?
1
• Spark nace como una prueba de concepto de Mesos en 2010.
• Sólo nace con naturaleza Batch.
• Todo el Big Data era Hadoop.
• Tenía muchos Bugs.
• Casi nadie sabía Scala.
• Casi imposible encontrar documentación.
Inicios
Inicios o ¿dónde está mi map & reduce?
• Mesos nace como un gestor de recursos para soportar múltiples frameworks como Hadoop
• Spark nace como una prueba de concepto de Mesos en 2010.
• Su objetivo era dar toda la funcionalidad del ecosistema en un sólo proyecto
• Otro objetivo era quitar las dependencias de Hadoop.
• YARN aparece poco después
Spark y Mesos
Inicios o ¿dónde está mi map & reduce?
Scala ¿amigo o enemigo?
Inicios o ¿dónde está mi map & reduce?
private IntWritable key = new IntWritable(1);
private IntWritable output = new IntWritable(1);
protected void map(LongWritable key,
Text value,
Context context) {
String[] fields = value.split("t");
key.set(Integer.parseInt(fields[0]));
output.set(Integer.parseInt(fields[1]));
context.write(key, output);
}
DoubleWritable average = new DoubleWritable();
protected void reduce(IntWritable key,
Iterable<IntWritable> values,
Context context){
int sum = 0;
int count = 0;
for((IntWritable value: values) {
sum += value.get();
count++;
}
average.set(sum / (double) count);
context.write(key, average);
}
val sc = new SparkContext(new SparkConf)
sc.textFile("....").map(line => {
val Array(key, value) = line.split("t")
(key.toInt, (value.toInt, 1))})
.reduceByKey((tuple1, tuple2) =>
(tuple1._1 + tuple2._1, tuple1._2 + tuple2._2))
.map(keyValue =>
keyValue._2._1/keyValue._2._2).saveAsTextFile("")
• A principios 2014 es el proyecto con más actividad en Apache
• Logran mejorar x100(en el mejorde los casos) la velocidad de Hadoop
• Tienen integrado en un sólo poryecto soluciones de Batch, Streaming, ML y Grafos.
• Posibilidad de tres gestores de recursos (M&R sólo admite YARN) YARN, Mesos y Standalone
• Y todo esto con la séptima parte de las líneas de código de las soluciones de Hadoop
¿Cómo acabó las versiones 0.X?
Inicios o ¿dónde está mi map & reduce?
Spark y sus módulos
Inicios o ¿dónde está mi map & reduce?
1º Commit a github
Spark 0.3
28/03/2010
Spark 0.7
27/02/2013
alpha de Streaming
Python API
Spark 0.6
15/10/2012
Spark + Pregel
Java API
Spark 0.8
25/07/2013
alpha de MlLib
YARN
Spark 0.9
22/02/2014
Pregel -> GraphX
HA en Standalone
Y Stratio ¿qué hizo?
Inicios o ¿dónde está mi map & reduce?
Stratio Deep
Inicios o ¿dónde está mi map & reduce?
Stratio Deep
Inicios o ¿dónde está mi map & reduce?
Stratio Meta
Inicios o ¿dónde está mi map & reduce?
Consolidación y locura por el
SQL y el Streaming
2
• Existe una versión previa de Shark (Hive sobre Spark)
• Nace como módulo en la versión 1.0
• Evoluciona de ser un módulo más a prácticamente el core de Spark
• StructuredRDD -> Dataframe -> Dataset
• Cobran importancia las herramientas de BI
SparkSQL - Introducción
Consolidación y locura por el SQL y el Streaming
Spark SQL Impresiones
Consolidación y locura por el SQL y el Streaming
Spark SQL DataStores
Consolidación y locura por el SQL y el Streaming
• Las bases de datos NOSQL estaban en auge
• En las primeras versiones del 1. de Spark se centran en la parte de SQL
• StructuredRDD
• Los Dataframes nacen en Spark 1.3
• Con los dataframes llega las interfaces necesarias para crear Datastores.
• Se cargan dinámicamente mediante el comando packages.
• El primer datastore fue el de Cassandra.
Spark SQL DataStores
Consolidación y locura por el SQL y el Streaming
Spark SQL BI
Consolidación y locura por el SQL y el Streaming
• SparkSQL nace con la idea de adaptar Hive a Spark
• Hive Thriftserver
• Una vez que los datos se han generado se vió el valor añadido de poder consultarlo.
• Varias herramientas de BI se adaptan para poder consumir datos usando Spark.
Spark SQL BI
Consolidación y locura por el SQL y el Streaming
Spark SQL BI
Consolidación y locura por el SQL y el Streaming
Proyecto Tungsten
Consolidación y locura por el SQL y el Streaming
Spark SQL errores aprendidos
Consolidación y locura por el SQL y el Streaming
• Los datos no vienen tan “limpios” como esperamos
• SparkSQL aplica un estándar a procesamientos complejos
• SparkSQL trabaja con orígenes o destinos de datos heterogéneos.
• Algunas propiedades o comportamientos heredados son erróneos
○ spark.sql.shuffle.partitions
○ lecturas en parquet de diferentes carpetas.
○ usar comportamiento estructurado en bd no estructurados
Spark Streaming, la locura del real time
Consolidación y locura por el SQL y el Streaming
Conectividad
Consolidación y locura por el SQL y el Streaming
Kafka
Consolidación y locura por el SQL y el Streaming
Real-time detección de fraude
DATA RECEIVER
REAL-TIME
AGGREGATION
CONSOLIDATION
Dashboardi
ng
Reporting
FRAUD
DETECTION
Spark streaming + agregaciones + Machine Learning
Consolidación y locura por el SQL y el Streaming
ETL
Apache flume + Spark Streaming
REAL-TIME
AGGREGATION
Dashboarding
Reporting
Consolidación y locura por el SQL y el Streaming
Spark Streaming lecciones aprendidas
Consolidación y locura por el SQL y el Streaming
• La memoria no es gratis, updateStateByKey
○ Reduce antes de actualizar
○ TTL
○ Borra claves con None
○ mapWithState experimental desde 1.6
• Kafka
○ Estudiar el particionado y la distribución de los eventos por caso de uso
○ kafka direct disponible desde 1.3
Y Stratio ¿qué hizo?
Consolidación y locura por el SQL y el Streaming
Stratio Crossdata
Consolidación y locura por el SQL y el Streaming
• Tras SparkSQL Crossdata se remodeló
• Ahora tenía un modelo de conectores para diversas BD (SQL y NOSQL)
• Stratio Deep deja de existir y pasan a usarse conectores para distintas BD.
• Se hizo un gran esfuerzo en el conector ODBC
• Se añade la comunicación Streaming/Batch
Stratio Crossdata
Consolidación y locura por el SQL y el Streaming
Datavis
Consolidación y locura por el SQL y el Streaming
Stratio Streaming / Decision
REQUESTS
kafka
zookeeper
Siddhi
CEP
requests
events
Service discovery
STREAMA
(xN)
INTERACTIVE
SHELL
API
STREAMING
STREAMING
CREATE
STREAM
ALTER STREAM
ADD QUERY
DROP STREAM
INSERT INTO
LIST STREAMS
SAVE2CASSANDRA
LISTEN
STREAM
AUDITING
STATISTICS
INDEX
SAVE2MONGO
FAILOVER CASSANDRA
Kafka
ack ack
CASSANDRA
CASSANDRA
Consolidación y locura por el SQL y el Streaming
Sparkta: A first look
DRIVER - SUPERVISOR
AGGREGATION POLICY
QUERY
SERVICES
Aggregation policy
definition is sent to the
engine
Allows multiple application to be
defined, each of which is bound to a
context, executing the aggregation
workflow
others
AGGREGATION WORKFLOW
Consolidación y locura por el SQL y el Streaming
El auge de los data scientist3
Introducción
El auge de los data scientist
• Spark nace con la intención de aunar todos los problemas del procesamiento Big Data en un
proyecto
• El Machine Learning siempre estuvo en el proyecto pero hubo tiempos en los que era la
“estrella”
• Con el auge de los data scientist nacen herramientas que “facilitan” el uso de Spark.
• Python se convirtió en una necesidad.
Evolución del Machine Learning en Spark
El auge de los data scientist
Evolución de Python en Spark
El auge de los data scientist
• Desde que hay API de Python para ml las contribuciones se doblan
• El performance de usar Dataframes con Python a RDD mejora sustancialmente
Herramientas gráficas para usar Spark
El auge de los data scientist
• Aunque usar Spark es mucho más sencillo que usar Hadoop, sigue habiendo partes que
requieren un conocimiento específico de Spark
• Se crean herramientas en las “únicamente” nos tenemos que preocupar de la codificación.
• Implementan representación de resultados por gráficos de forma nativa
Casos de Uso de ML -> Perfilado
El auge de los data scientist
group data by
behavioral
similarity
labeled data decision
tree
interpreted
rules
behavioral
features
CLUSTERING PROFILING
Casos de Uso de ML -> Analisis de patrones
El auge de los data scientist
a3
a3
a2
a1
a0
a1
a2
a2
a3
User 1 Self-Management Behaviour
ABCDEFGHIJKLM User 1 Behaviour (Journey)
ABCDFGIJKM P1 Most Common Path
Spark MlLib lecciones aprendidas
Consolidación y locura por el SQL y el Streaming
• Múltiples tipos de entradas es un problema.
• No hay que dejarse llevar por últimas versiones.
• El Machine Learning requiere mucho trabajo manual
○ ¡Ayuda a tu data scientist todo lo que puedas!
• Streaming y MlLib se pueden juntar, teniendo en cuenta el entrenamiento
Y Stratio ¿qué hizo?
El auge de los data scientist
...
Stratio Intelligence
El auge de los data scientist
...
Multiuser
Environment
Manage users and
provision of notebooks
Analytic
Environment
User 1 front-end
User N front-end
Kernel Code interpreter
Analytic Environment
Notebook server
User 1 back-end
User N back-end
User code
Stratio Intelligence
El auge de los data scientist
Docker
Docker
Docker
user 1
user 2
user3
Kernels
Kernels
Kernels
Spark 2.04
Introducción
Spark 2.0
• Spark 2.0 and beyond
○ Spark 2.0
■ Todo es SQL
■ el Dataframe ha muerto, ¡larga vida al Dataset!
■ SparkSession
■ Structured Streaming
■ Necesidad de más gestores de recursos además de YARN y Standalone
○ La Realidad de Stratio
■ ¡Adaptaciones!
■ Integraciones con Mesos DC/OS
■ Todos los proyectos hacen uso de algún algoritmo de Machine Learning
Tungsten - mejora de rendimiento
Spark 2.0
Python
Spark 2.0
Nuestro producto
Spark 2.0
Ruegos y preguntas
Ruegos y preguntas
people@stratio.com
WE ARE HIRING
@StratioBD
¡Esto es todo amigos!
MUCHAS GRACIAS Y ANIMAROS A COMPARTIR CONOCIMIENTO
Spark meetup barcelona

Más contenido relacionado

Similar a Spark meetup barcelona

Meetup Spark y la Combinación de sus Distintos Módulos
Meetup Spark y la Combinación de sus Distintos MódulosMeetup Spark y la Combinación de sus Distintos Módulos
Meetup Spark y la Combinación de sus Distintos MódulosJorge Lopez-Malla
 
Introducción a Apache Spark
Introducción a Apache SparkIntroducción a Apache Spark
Introducción a Apache SparkSocialmetrix
 
Meetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark FundamentalsMeetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark FundamentalsDataLab Community
 
Herramientas de visualización de datos
Herramientas de visualización de datosHerramientas de visualización de datos
Herramientas de visualización de datosBBVA API Market
 
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...Stratio
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoBig Data Spain
 
Herramientas BigData.pptx
Herramientas BigData.pptxHerramientas BigData.pptx
Herramientas BigData.pptxMauricio Bedoya
 
Spark: una chispa con la velocidad del rayo ¿el sustituto de Hadoop?
Spark: una chispa con la velocidad del rayo  ¿el sustituto de Hadoop?Spark: una chispa con la velocidad del rayo  ¿el sustituto de Hadoop?
Spark: una chispa con la velocidad del rayo ¿el sustituto de Hadoop?Fernando Alfonso Casas De la Torre
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricksEduardo Castro
 
Primeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid MeetupPrimeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid Meetupdhiguero
 
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014Stratio
 
Lado oscuro de big data y el ingeniero del siglo xxi
Lado oscuro de big data y el ingeniero del siglo xxiLado oscuro de big data y el ingeniero del siglo xxi
Lado oscuro de big data y el ingeniero del siglo xxiJosé Carlos García Serrano
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?Socialmetrix
 
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BI
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BIAzure4Research - Big Data Analytics con Hadoop, Spark y Power BI
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BIAlberto Diaz Martin
 
Azure Databricks
Azure DatabricksAzure Databricks
Azure Databricksnnakasone
 
Analitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataAnalitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataJosé Carlos García Serrano
 

Similar a Spark meetup barcelona (20)

Meetup Spark y la Combinación de sus Distintos Módulos
Meetup Spark y la Combinación de sus Distintos MódulosMeetup Spark y la Combinación de sus Distintos Módulos
Meetup Spark y la Combinación de sus Distintos Módulos
 
Introducción a Apache Spark
Introducción a Apache SparkIntroducción a Apache Spark
Introducción a Apache Spark
 
Meetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark FundamentalsMeetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark Fundamentals
 
Herramientas de visualización de datos
Herramientas de visualización de datosHerramientas de visualización de datos
Herramientas de visualización de datos
 
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...
Meetup: Cómo monitorizar y optimizar procesos de Spark usando la Spark Web - ...
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén Casado
 
Herramientas BigData.pptx
Herramientas BigData.pptxHerramientas BigData.pptx
Herramientas BigData.pptx
 
Spark: una chispa con la velocidad del rayo ¿el sustituto de Hadoop?
Spark: una chispa con la velocidad del rayo  ¿el sustituto de Hadoop?Spark: una chispa con la velocidad del rayo  ¿el sustituto de Hadoop?
Spark: una chispa con la velocidad del rayo ¿el sustituto de Hadoop?
 
Congreso Academy Journal Celaya 2017
Congreso Academy Journal Celaya 2017Congreso Academy Journal Celaya 2017
Congreso Academy Journal Celaya 2017
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricks
 
Primeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid MeetupPrimeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid Meetup
 
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014
Primeros pasos con Spark - Spark Meetup Madrid 30-09-2014
 
Meetup Fun[ctional] spark with scala
Meetup Fun[ctional] spark with scalaMeetup Fun[ctional] spark with scala
Meetup Fun[ctional] spark with scala
 
Fun[ctional] spark with scala
Fun[ctional] spark with scalaFun[ctional] spark with scala
Fun[ctional] spark with scala
 
Lado oscuro de big data y el ingeniero del siglo xxi
Lado oscuro de big data y el ingeniero del siglo xxiLado oscuro de big data y el ingeniero del siglo xxi
Lado oscuro de big data y el ingeniero del siglo xxi
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?
 
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BI
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BIAzure4Research - Big Data Analytics con Hadoop, Spark y Power BI
Azure4Research - Big Data Analytics con Hadoop, Spark y Power BI
 
Azure Databricks
Azure DatabricksAzure Databricks
Azure Databricks
 
Scala@real life
Scala@real lifeScala@real life
Scala@real life
 
Analitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big dataAnalitica y toma de decisiones en tiempo real sobre plataformas big data
Analitica y toma de decisiones en tiempo real sobre plataformas big data
 

Más de Jorge Lopez-Malla

Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018
Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018
Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018Jorge Lopez-Malla
 
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018Jorge Lopez-Malla
 
Haz que tus datos sean sexys
Haz que tus datos sean sexysHaz que tus datos sean sexys
Haz que tus datos sean sexysJorge Lopez-Malla
 
Kerberizing spark. Spark Summit east
Kerberizing spark. Spark Summit eastKerberizing spark. Spark Summit east
Kerberizing spark. Spark Summit eastJorge Lopez-Malla
 
Meetup errores en proyectos Big Data
Meetup errores en proyectos Big DataMeetup errores en proyectos Big Data
Meetup errores en proyectos Big DataJorge Lopez-Malla
 
Apache Big Data Europa- How to make money with your own data
Apache Big Data Europa- How to make money with your own dataApache Big Data Europa- How to make money with your own data
Apache Big Data Europa- How to make money with your own dataJorge Lopez-Malla
 

Más de Jorge Lopez-Malla (9)

Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018
Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018
Geoposicionamiento Big Data o It's bigger on the inside Codemetion Madrid 2018
 
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018
Geoposicionamiento Big Data o It's bigger on the inside Commit conf 2018
 
Haz que tus datos sean sexys
Haz que tus datos sean sexysHaz que tus datos sean sexys
Haz que tus datos sean sexys
 
Mesos con europa 2017
Mesos con europa 2017Mesos con europa 2017
Mesos con europa 2017
 
Kerberizing spark. Spark Summit east
Kerberizing spark. Spark Summit eastKerberizing spark. Spark Summit east
Kerberizing spark. Spark Summit east
 
Meetup spark + kerberos
Meetup spark + kerberosMeetup spark + kerberos
Meetup spark + kerberos
 
Codemotion 2016
Codemotion 2016Codemotion 2016
Codemotion 2016
 
Meetup errores en proyectos Big Data
Meetup errores en proyectos Big DataMeetup errores en proyectos Big Data
Meetup errores en proyectos Big Data
 
Apache Big Data Europa- How to make money with your own data
Apache Big Data Europa- How to make money with your own dataApache Big Data Europa- How to make money with your own data
Apache Big Data Europa- How to make money with your own data
 

Último

4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.ariannytrading
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
Normas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISINormas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISIfimumsnhoficial
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEANDECE
 

Último (20)

4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Normas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISINormas para los aceros basados en ASTM y AISI
Normas para los aceros basados en ASTM y AISI
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSE
 

Spark meetup barcelona

  • 2. Jorge López-Malla Matute Índice jlopezm@stratio.com @jorgelopezmalla Abel Rincón Matarranz Consolidación y locura por el SQL y el Streaming arincon@stratio.com @ganger85 Inicios o ¿dónde está mi map & reduce?1 3 2 4El auge de los data scientist Spark 2.0 and beyond 5 Ruegos y preguntas
  • 4. Presentación Presentación JORGE LÓPEZ-MALLA @jorgelopezmalla Después de unos años trabajando en proyectos con tecnologías tradicionales empecé a trabajar con Big en I+D y desde entonces me enamoré de este mundo. Tras trabajar en diversos proyectos usando Spark como tecnología base estoy a cargo de las modificaciones de Spark para la plataforma Stratio SKILLS
  • 5. La empresa Stratio acompaña a las empresas en su viaje hacia la Transformación Digital. Mediante el trabajo duro y la creatividad, nuestra meta es reinventar a las empresa alrededor de sus datos para que así estas puedan competir en este nuevo mundo digital. Nuestra solución es un producto de transformación que utiliza tecnologías Big Data de tercera generación para ejecutar la forma más completa de Transformación Digital, garantizando escalabilidad, flexibilidad máxima y adaptación a nuevos mercados. Si tenéis alguna pregunta o quereis a una demostración en vivo de nuestro producto, contactar con: contact@stratio.com Presentación
  • 7. Inicios o ¿dónde está mi map & reduce? 1
  • 8. • Spark nace como una prueba de concepto de Mesos en 2010. • Sólo nace con naturaleza Batch. • Todo el Big Data era Hadoop. • Tenía muchos Bugs. • Casi nadie sabía Scala. • Casi imposible encontrar documentación. Inicios Inicios o ¿dónde está mi map & reduce?
  • 9. • Mesos nace como un gestor de recursos para soportar múltiples frameworks como Hadoop • Spark nace como una prueba de concepto de Mesos en 2010. • Su objetivo era dar toda la funcionalidad del ecosistema en un sólo proyecto • Otro objetivo era quitar las dependencias de Hadoop. • YARN aparece poco después Spark y Mesos Inicios o ¿dónde está mi map & reduce?
  • 10. Scala ¿amigo o enemigo? Inicios o ¿dónde está mi map & reduce? private IntWritable key = new IntWritable(1); private IntWritable output = new IntWritable(1); protected void map(LongWritable key, Text value, Context context) { String[] fields = value.split("t"); key.set(Integer.parseInt(fields[0])); output.set(Integer.parseInt(fields[1])); context.write(key, output); } DoubleWritable average = new DoubleWritable(); protected void reduce(IntWritable key, Iterable<IntWritable> values, Context context){ int sum = 0; int count = 0; for((IntWritable value: values) { sum += value.get(); count++; } average.set(sum / (double) count); context.write(key, average); } val sc = new SparkContext(new SparkConf) sc.textFile("....").map(line => { val Array(key, value) = line.split("t") (key.toInt, (value.toInt, 1))}) .reduceByKey((tuple1, tuple2) => (tuple1._1 + tuple2._1, tuple1._2 + tuple2._2)) .map(keyValue => keyValue._2._1/keyValue._2._2).saveAsTextFile("")
  • 11. • A principios 2014 es el proyecto con más actividad en Apache • Logran mejorar x100(en el mejorde los casos) la velocidad de Hadoop • Tienen integrado en un sólo poryecto soluciones de Batch, Streaming, ML y Grafos. • Posibilidad de tres gestores de recursos (M&R sólo admite YARN) YARN, Mesos y Standalone • Y todo esto con la séptima parte de las líneas de código de las soluciones de Hadoop ¿Cómo acabó las versiones 0.X? Inicios o ¿dónde está mi map & reduce?
  • 12. Spark y sus módulos Inicios o ¿dónde está mi map & reduce? 1º Commit a github Spark 0.3 28/03/2010 Spark 0.7 27/02/2013 alpha de Streaming Python API Spark 0.6 15/10/2012 Spark + Pregel Java API Spark 0.8 25/07/2013 alpha de MlLib YARN Spark 0.9 22/02/2014 Pregel -> GraphX HA en Standalone
  • 13. Y Stratio ¿qué hizo? Inicios o ¿dónde está mi map & reduce?
  • 14. Stratio Deep Inicios o ¿dónde está mi map & reduce?
  • 15. Stratio Deep Inicios o ¿dónde está mi map & reduce?
  • 16. Stratio Meta Inicios o ¿dónde está mi map & reduce?
  • 17. Consolidación y locura por el SQL y el Streaming 2
  • 18. • Existe una versión previa de Shark (Hive sobre Spark) • Nace como módulo en la versión 1.0 • Evoluciona de ser un módulo más a prácticamente el core de Spark • StructuredRDD -> Dataframe -> Dataset • Cobran importancia las herramientas de BI SparkSQL - Introducción Consolidación y locura por el SQL y el Streaming
  • 19. Spark SQL Impresiones Consolidación y locura por el SQL y el Streaming
  • 20. Spark SQL DataStores Consolidación y locura por el SQL y el Streaming • Las bases de datos NOSQL estaban en auge • En las primeras versiones del 1. de Spark se centran en la parte de SQL • StructuredRDD • Los Dataframes nacen en Spark 1.3 • Con los dataframes llega las interfaces necesarias para crear Datastores. • Se cargan dinámicamente mediante el comando packages. • El primer datastore fue el de Cassandra.
  • 21. Spark SQL DataStores Consolidación y locura por el SQL y el Streaming
  • 22. Spark SQL BI Consolidación y locura por el SQL y el Streaming • SparkSQL nace con la idea de adaptar Hive a Spark • Hive Thriftserver • Una vez que los datos se han generado se vió el valor añadido de poder consultarlo. • Varias herramientas de BI se adaptan para poder consumir datos usando Spark.
  • 23. Spark SQL BI Consolidación y locura por el SQL y el Streaming
  • 24. Spark SQL BI Consolidación y locura por el SQL y el Streaming
  • 25. Proyecto Tungsten Consolidación y locura por el SQL y el Streaming
  • 26. Spark SQL errores aprendidos Consolidación y locura por el SQL y el Streaming • Los datos no vienen tan “limpios” como esperamos • SparkSQL aplica un estándar a procesamientos complejos • SparkSQL trabaja con orígenes o destinos de datos heterogéneos. • Algunas propiedades o comportamientos heredados son erróneos ○ spark.sql.shuffle.partitions ○ lecturas en parquet de diferentes carpetas. ○ usar comportamiento estructurado en bd no estructurados
  • 27. Spark Streaming, la locura del real time Consolidación y locura por el SQL y el Streaming
  • 28. Conectividad Consolidación y locura por el SQL y el Streaming
  • 29. Kafka Consolidación y locura por el SQL y el Streaming
  • 30. Real-time detección de fraude DATA RECEIVER REAL-TIME AGGREGATION CONSOLIDATION Dashboardi ng Reporting FRAUD DETECTION Spark streaming + agregaciones + Machine Learning Consolidación y locura por el SQL y el Streaming
  • 31. ETL Apache flume + Spark Streaming REAL-TIME AGGREGATION Dashboarding Reporting Consolidación y locura por el SQL y el Streaming
  • 32. Spark Streaming lecciones aprendidas Consolidación y locura por el SQL y el Streaming • La memoria no es gratis, updateStateByKey ○ Reduce antes de actualizar ○ TTL ○ Borra claves con None ○ mapWithState experimental desde 1.6 • Kafka ○ Estudiar el particionado y la distribución de los eventos por caso de uso ○ kafka direct disponible desde 1.3
  • 33. Y Stratio ¿qué hizo? Consolidación y locura por el SQL y el Streaming
  • 34. Stratio Crossdata Consolidación y locura por el SQL y el Streaming • Tras SparkSQL Crossdata se remodeló • Ahora tenía un modelo de conectores para diversas BD (SQL y NOSQL) • Stratio Deep deja de existir y pasan a usarse conectores para distintas BD. • Se hizo un gran esfuerzo en el conector ODBC • Se añade la comunicación Streaming/Batch
  • 35. Stratio Crossdata Consolidación y locura por el SQL y el Streaming
  • 36. Datavis Consolidación y locura por el SQL y el Streaming
  • 37. Stratio Streaming / Decision REQUESTS kafka zookeeper Siddhi CEP requests events Service discovery STREAMA (xN) INTERACTIVE SHELL API STREAMING STREAMING CREATE STREAM ALTER STREAM ADD QUERY DROP STREAM INSERT INTO LIST STREAMS SAVE2CASSANDRA LISTEN STREAM AUDITING STATISTICS INDEX SAVE2MONGO FAILOVER CASSANDRA Kafka ack ack CASSANDRA CASSANDRA Consolidación y locura por el SQL y el Streaming
  • 38. Sparkta: A first look DRIVER - SUPERVISOR AGGREGATION POLICY QUERY SERVICES Aggregation policy definition is sent to the engine Allows multiple application to be defined, each of which is bound to a context, executing the aggregation workflow others AGGREGATION WORKFLOW Consolidación y locura por el SQL y el Streaming
  • 39. El auge de los data scientist3
  • 40. Introducción El auge de los data scientist • Spark nace con la intención de aunar todos los problemas del procesamiento Big Data en un proyecto • El Machine Learning siempre estuvo en el proyecto pero hubo tiempos en los que era la “estrella” • Con el auge de los data scientist nacen herramientas que “facilitan” el uso de Spark. • Python se convirtió en una necesidad.
  • 41. Evolución del Machine Learning en Spark El auge de los data scientist
  • 42. Evolución de Python en Spark El auge de los data scientist • Desde que hay API de Python para ml las contribuciones se doblan • El performance de usar Dataframes con Python a RDD mejora sustancialmente
  • 43. Herramientas gráficas para usar Spark El auge de los data scientist • Aunque usar Spark es mucho más sencillo que usar Hadoop, sigue habiendo partes que requieren un conocimiento específico de Spark • Se crean herramientas en las “únicamente” nos tenemos que preocupar de la codificación. • Implementan representación de resultados por gráficos de forma nativa
  • 44. Casos de Uso de ML -> Perfilado El auge de los data scientist group data by behavioral similarity labeled data decision tree interpreted rules behavioral features CLUSTERING PROFILING
  • 45. Casos de Uso de ML -> Analisis de patrones El auge de los data scientist a3 a3 a2 a1 a0 a1 a2 a2 a3 User 1 Self-Management Behaviour ABCDEFGHIJKLM User 1 Behaviour (Journey) ABCDFGIJKM P1 Most Common Path
  • 46. Spark MlLib lecciones aprendidas Consolidación y locura por el SQL y el Streaming • Múltiples tipos de entradas es un problema. • No hay que dejarse llevar por últimas versiones. • El Machine Learning requiere mucho trabajo manual ○ ¡Ayuda a tu data scientist todo lo que puedas! • Streaming y MlLib se pueden juntar, teniendo en cuenta el entrenamiento
  • 47. Y Stratio ¿qué hizo? El auge de los data scientist
  • 48. ... Stratio Intelligence El auge de los data scientist ... Multiuser Environment Manage users and provision of notebooks Analytic Environment User 1 front-end User N front-end Kernel Code interpreter Analytic Environment Notebook server User 1 back-end User N back-end User code
  • 49. Stratio Intelligence El auge de los data scientist Docker Docker Docker user 1 user 2 user3 Kernels Kernels Kernels
  • 51. Introducción Spark 2.0 • Spark 2.0 and beyond ○ Spark 2.0 ■ Todo es SQL ■ el Dataframe ha muerto, ¡larga vida al Dataset! ■ SparkSession ■ Structured Streaming ■ Necesidad de más gestores de recursos además de YARN y Standalone ○ La Realidad de Stratio ■ ¡Adaptaciones! ■ Integraciones con Mesos DC/OS ■ Todos los proyectos hacen uso de algún algoritmo de Machine Learning
  • 52. Tungsten - mejora de rendimiento Spark 2.0
  • 54.
  • 58. ¡Esto es todo amigos! MUCHAS GRACIAS Y ANIMAROS A COMPARTIR CONOCIMIENTO