SlideShare une entreprise Scribd logo
1  sur  26
Introducción Apache Spark 
Gustavo Arjones 
gustavo@socialmetrix.com 
@arjones
Gustavo Arjones 
Co-founder & CTO, Socialmetrix 
Lic. Ciencias Computación 
MBA Marketing Servicios 
@arjones 
gustavo@socialmetrix.com 
Brasileño, en ARG desde 2008
Qué es 
Apache Spark?
Qué es Spark? 
Apache Spark™ is a fast and general engine for large-scale 
data processing. 
• Procesamiento In-memory (preferencialmente) 
• Framework de Procesamiento Unificado 
• Para Ingenieros & Data Scientists
Principales Pilares 
Task Scheduler 
• Prepara los jobs a traves de DAG (Directed 
acyclic graph) 
• Enganchan funciones para ejecutar los stages 
• Cache-aware; considera data utilización & 
localización (data locality) 
• Partitioning-aware para reducir shuffles por la 
red 
RDD (Resilient Distributed Datasets) 
• Estructura de datos Immutable (In-memory) 
• Tolerante a fallas (Se reama en caso de falla) 
• Estructura de datos que puede ser operada en 
paralelo 
•Rica interfaz de Transformations & Actions
Porqué me 
gusta?
Viene de buen “origen” 
BDAS, the Berkeley Data Analytics Stack (AMPLAB)
Compacto y poderoso 
• Escrito en Scala, con wrappers para Python y Java*
API muy expresiva 
Ver: https://spark.apache.org/docs/latest/api/scala/#org.apache.spark.rdd.RDD
Consola interactiva 
• Aprender, prototipado rápido 
• Análisis interactivo sobre los datos
Plataforma Unificada
Plataforma Unificada 
• No es necesario copiar datos/ETL entre sistemas 
• Varios tipos de procesamientos en el mismo código 
(claridad) 
• Reutilización de código (Batch & Realtime) 
• Un único sistema para aprender 
• Un único sistema para mantener 
Big Deal para 
Arquitectura Lambda
Plataforma Unificada (lines of code) 
140000 
120000 
100000 
80000 
60000 
40000 
20000 
0 
Hadoop 
MapReduce 
Storm 
(Streaming) 
Impala 
(SQL) 
Giraph 
(Graph) 
Spark 
non-test, non-example source lines 
GraphX 
SparkSQL 
Streaming
Spark UI
Código Testeable! 
• El contexto puede crear RDD
Proyecto muy activo (y ganando tracción)
Proyecto MUY activo (y ganando tracción) 
250 
200 
150 
100 
50 
0 
Patches 
MapReduce Storm 
Yarn Spark 
*as of June 1, 2014 
45000 
40000 
35000 
30000 
25000 
20000 
15000 
10000 
5000 
0 
Lines Added 
MapReduce Storm 
Yarn Spark 
16000 
14000 
12000 
10000 
8000 
6000 
4000 
2000 
0 
Lines Removed 
MapReduce Storm 
Yarn Spark
Y más … 
• Esfuerzo para estandarización de la plataforma 
• Certificación para Distros & Apps gratis 
• Material de training gratis 
• Databricks levantó $47M 
• Databricks Cloud???
Y Hadoop?
Modelo Map-Reduce 
iter. 1 iter. 2 . . . 
Input 
HDFS 
read 
HDFS 
write 
HDFS 
read 
HDFS 
write 
Input 
query 1 
query 2 
query 3 
result 1 
result 2 
result 3 
. . . 
HDFS 
read 
Lento porque necesita replicación, serialización y I/O
Spark (in-memory + DAG execution engine) 
iter. 1 iter. 2 . . . 
Input 
Distributed 
memory 
Input 
query 1 
query 2 
query 3 
. . . 
one-time 
processing 
10-100× más rápido
Spark y Hadoop pueden ser amigos 
• YARN / Mesos 
• Acceso HDFS / S3 
• Usando Input/Output 
formats de Hadoop
DEMO 
http://bit.ly/NardozSparkDemo
Donde aprender 
más?
Mucha documentación disponible 
https://spark.apache.org/documentation.html 
http://spark-summit.org/2014/training 
http://shop.oreilly.com/product/06369200285 
12.do 
http://arjon.es/tag/spark/
Gracias & Obrigado! 
Gustavo Arjones 
gustavo@socialmetrix.com 
@arjones

Contenu connexe

Tendances

Tendances (20)

Big data para desarrolladores utilizando hadoop y openstack
Big data para desarrolladores utilizando hadoop y openstack Big data para desarrolladores utilizando hadoop y openstack
Big data para desarrolladores utilizando hadoop y openstack
 
Open analytics. data analytics con hadoop
Open analytics. data analytics con hadoopOpen analytics. data analytics con hadoop
Open analytics. data analytics con hadoop
 
Taller hadoop
Taller hadoopTaller hadoop
Taller hadoop
 
Monta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión IMonta una Infraestructura Big Data para tu Empresa - Sesión I
Monta una Infraestructura Big Data para tu Empresa - Sesión I
 
Creación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaCreación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con Cloudera
 
Hadoop: tecnologias relacionadas
Hadoop: tecnologias relacionadasHadoop: tecnologias relacionadas
Hadoop: tecnologias relacionadas
 
Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010Bases de datos NoSQL - Huancayo - 2010
Bases de datos NoSQL - Huancayo - 2010
 
Monta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión IIMonta una Infraestructura Big Data para tu Empresa - Sesión II
Monta una Infraestructura Big Data para tu Empresa - Sesión II
 
Análisis de datos con Apache Spark
Análisis de datos con Apache SparkAnálisis de datos con Apache Spark
Análisis de datos con Apache Spark
 
Hadoop: MapReduce para procesar grandes cantidades de datos
Hadoop: MapReduce para procesar grandes cantidades de datosHadoop: MapReduce para procesar grandes cantidades de datos
Hadoop: MapReduce para procesar grandes cantidades de datos
 
Hadoop
HadoopHadoop
Hadoop
 
Big Data a traves de una implementación
Big Data a traves de una implementaciónBig Data a traves de una implementación
Big Data a traves de una implementación
 
Spark web meetup
Spark web meetupSpark web meetup
Spark web meetup
 
Monta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaMonta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu Empresa
 
MapReduce en Hadoop
MapReduce en HadoopMapReduce en Hadoop
MapReduce en Hadoop
 
Introducción a Hadoop
Introducción a HadoopIntroducción a Hadoop
Introducción a Hadoop
 
SQL 2016 Column Store Index
SQL 2016 Column Store IndexSQL 2016 Column Store Index
SQL 2016 Column Store Index
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
 
Introducción a Apache HBase
Introducción a Apache HBaseIntroducción a Apache HBase
Introducción a Apache HBase
 
Resilient Distributed Dataset - Analisis paper
Resilient  Distributed Dataset - Analisis paper Resilient  Distributed Dataset - Analisis paper
Resilient Distributed Dataset - Analisis paper
 

Similaire à Introducción a Apache Spark

Similaire à Introducción a Apache Spark (20)

Spark meetup barcelona
Spark meetup barcelonaSpark meetup barcelona
Spark meetup barcelona
 
M04 09 20_v05_plataformas_bd
M04 09 20_v05_plataformas_bdM04 09 20_v05_plataformas_bd
M04 09 20_v05_plataformas_bd
 
Tutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtimeTutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtime
 
Herramientas BigData.pptx
Herramientas BigData.pptxHerramientas BigData.pptx
Herramientas BigData.pptx
 
Introduccion a databricks
Introduccion a databricksIntroduccion a databricks
Introduccion a databricks
 
Tecnicas Big Data: Meetup Cassandra
Tecnicas Big Data: Meetup CassandraTecnicas Big Data: Meetup Cassandra
Tecnicas Big Data: Meetup Cassandra
 
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
 
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
 
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
 
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
 
Meetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark FundamentalsMeetup Junio Apache Spark Fundamentals
Meetup Junio Apache Spark Fundamentals
 
Spark Hands-on
Spark Hands-onSpark Hands-on
Spark Hands-on
 
Apache Spark y Big Data
Apache Spark y Big DataApache Spark y Big Data
Apache Spark y Big Data
 
Herramientas de visualización de datos
Herramientas de visualización de datosHerramientas de visualización de datos
Herramientas de visualización de datos
 
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
 
Cassandra Meet Up Noviembre - Drag & Drop Techs With Cassandra
Cassandra Meet Up Noviembre - Drag & Drop Techs With CassandraCassandra Meet Up Noviembre - Drag & Drop Techs With Cassandra
Cassandra Meet Up Noviembre - Drag & Drop Techs With Cassandra
 
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: 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 - ...
 

Plus de Socialmetrix

Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
Socialmetrix
 

Plus de Socialmetrix (15)

7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivo7 Disparadores de Engagement para o mercado de consumo massivo
7 Disparadores de Engagement para o mercado de consumo massivo
 
The Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media AnalyticsThe Ultimate Guide to using Social Media Media Analytics
The Ultimate Guide to using Social Media Media Analytics
 
Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...Social Media is no longer something relevant just for the area of Marketing. ...
Social Media is no longer something relevant just for the area of Marketing. ...
 
How to Create a Successful Social Media Campaign
How to Create a Successful Social Media CampaignHow to Create a Successful Social Media Campaign
How to Create a Successful Social Media Campaign
 
AWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time AnalyticsAWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
AWS re:Invent 2014 | (ARC202) Real-World Real-Time Analytics
 
Introducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidianoIntroducción a Apache Spark a través de un caso de uso cotidiano
Introducción a Apache Spark a través de un caso de uso cotidiano
 
Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
Conferencia MySQL, NoSQL & Cloud: Construyendo una infraestructura de big dat...
 
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
Construyendo una Infraestructura de Big Data rentable y escalable (la evoluci...
 
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
Social media brasil 2014 - O Marketing e as Redes Sociais em tempos de conver...
 
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
14º Encontro Locaweb - Evolução das Plataformas para Métricas Sociais
 
Call2Social
Call2SocialCall2Social
Call2Social
 
Redis
RedisRedis
Redis
 
Jugar Introduccion a Scala
Jugar Introduccion a ScalaJugar Introduccion a Scala
Jugar Introduccion a Scala
 
Endeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociaisEndeavor – métricas em mídias sociais
Endeavor – métricas em mídias sociais
 
MongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en NubeMongoDB, RabbitMQ y Applicaciones en Nube
MongoDB, RabbitMQ y Applicaciones en Nube
 

Dernier

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
silviayucra2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
241521559
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Dernier (10)

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 

Introducción a Apache Spark

  • 1. Introducción Apache Spark Gustavo Arjones gustavo@socialmetrix.com @arjones
  • 2. Gustavo Arjones Co-founder & CTO, Socialmetrix Lic. Ciencias Computación MBA Marketing Servicios @arjones gustavo@socialmetrix.com Brasileño, en ARG desde 2008
  • 3. Qué es Apache Spark?
  • 4. Qué es Spark? Apache Spark™ is a fast and general engine for large-scale data processing. • Procesamiento In-memory (preferencialmente) • Framework de Procesamiento Unificado • Para Ingenieros & Data Scientists
  • 5. Principales Pilares Task Scheduler • Prepara los jobs a traves de DAG (Directed acyclic graph) • Enganchan funciones para ejecutar los stages • Cache-aware; considera data utilización & localización (data locality) • Partitioning-aware para reducir shuffles por la red RDD (Resilient Distributed Datasets) • Estructura de datos Immutable (In-memory) • Tolerante a fallas (Se reama en caso de falla) • Estructura de datos que puede ser operada en paralelo •Rica interfaz de Transformations & Actions
  • 7. Viene de buen “origen” BDAS, the Berkeley Data Analytics Stack (AMPLAB)
  • 8. Compacto y poderoso • Escrito en Scala, con wrappers para Python y Java*
  • 9. API muy expresiva Ver: https://spark.apache.org/docs/latest/api/scala/#org.apache.spark.rdd.RDD
  • 10. Consola interactiva • Aprender, prototipado rápido • Análisis interactivo sobre los datos
  • 12. Plataforma Unificada • No es necesario copiar datos/ETL entre sistemas • Varios tipos de procesamientos en el mismo código (claridad) • Reutilización de código (Batch & Realtime) • Un único sistema para aprender • Un único sistema para mantener Big Deal para Arquitectura Lambda
  • 13. Plataforma Unificada (lines of code) 140000 120000 100000 80000 60000 40000 20000 0 Hadoop MapReduce Storm (Streaming) Impala (SQL) Giraph (Graph) Spark non-test, non-example source lines GraphX SparkSQL Streaming
  • 15. Código Testeable! • El contexto puede crear RDD
  • 16. Proyecto muy activo (y ganando tracción)
  • 17. Proyecto MUY activo (y ganando tracción) 250 200 150 100 50 0 Patches MapReduce Storm Yarn Spark *as of June 1, 2014 45000 40000 35000 30000 25000 20000 15000 10000 5000 0 Lines Added MapReduce Storm Yarn Spark 16000 14000 12000 10000 8000 6000 4000 2000 0 Lines Removed MapReduce Storm Yarn Spark
  • 18. Y más … • Esfuerzo para estandarización de la plataforma • Certificación para Distros & Apps gratis • Material de training gratis • Databricks levantó $47M • Databricks Cloud???
  • 20. Modelo Map-Reduce iter. 1 iter. 2 . . . Input HDFS read HDFS write HDFS read HDFS write Input query 1 query 2 query 3 result 1 result 2 result 3 . . . HDFS read Lento porque necesita replicación, serialización y I/O
  • 21. Spark (in-memory + DAG execution engine) iter. 1 iter. 2 . . . Input Distributed memory Input query 1 query 2 query 3 . . . one-time processing 10-100× más rápido
  • 22. Spark y Hadoop pueden ser amigos • YARN / Mesos • Acceso HDFS / S3 • Usando Input/Output formats de Hadoop
  • 25. Mucha documentación disponible https://spark.apache.org/documentation.html http://spark-summit.org/2014/training http://shop.oreilly.com/product/06369200285 12.do http://arjon.es/tag/spark/
  • 26. Gracias & Obrigado! Gustavo Arjones gustavo@socialmetrix.com @arjones

Notes de l'éditeur

  1. Each iteration is, for example, a MapReduce job