SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
¿POR QUÉ APACHE FLINK ES
MEJOR QUE SPARK?
Dr Rubén Casado Tejedor
• Formación
– Doctor en Informática (Ingeniería del Software)
– Ingeniero en Informática
– Ingeniero Técnico en Informática de Sistemas
• Experiencia profesional
– Big Data Manager en Accenture Digital
– Director del Master en Arquitectura Big Data en Kschool
– Organizador del Meetup Apache Flink Madrid
– Head of Big Data & Analytics en Treelogic
– Investigador y profesor en la Universidad de Oviedo, Oxford Brookes University (Reino Unido) y
INRIA/LORIA (Francia)
Sobre mi 
█ BIG DATA Y STREAMING PROCESSING
█ CONCEPTOS CLAVE EN FAST DATA
█ DIFERENCIAS ENTRE FLINK Y SPARK
‒ Code demo
█ CONCLUSIONES
█ BIG DATA Y STREAMING PROCESSING
VOLUMEN
Grandes cantidades de datos.
Necesidad de soluciones tecnológica y
económicamente escalables.
VARIEDAD
Información estructurada, semi y
desestructurada. Necesidad de
almacenar y procesar distintos tipos de
información.
VELOCIDAD
Alta frecuencia de generación de
información. Necesidad de producir
resultados en tiempo real.
STREAMING PROCESSING es el
paradigma de procesamiento para
STORM
VELOCIDAD
APACHE FLINK
STREAMING PROCESSING
Analizar según sucede
Plataforma tradicional de BI Plataforma Big Data batch processing
Analytical Database Data as a platform
Data Ingest
Data Collection
Coche
autodirigido
Waze
¿QUÉ ES STREAMING PROCESSING?
CLASIFICACIÓN EJEMPLOS LATENCIA TOLERANCIA AL RETRASO
Hard • Marcapasos
• Sistema antibloqueo de frenos
• Microsegundos - milisegundos • Ninguna  fallo total del
sistema, pérdidas de vidas
humanas, etc.
Soft • Sistema de reservas online
• VoIP
• Milisegundos - segundos • Baja  fallo total del
Sistema, sin pérdidas de
vidas humanas.
Near • Sistema de video-conferencia
• Domótica
• Segundos - minutos • Alta  sin riesgo de fallo
del sistema
ARQUITECTURA GENERAL
STREAMING PROCESSING SYSTEM
CAPA DE
ADQUISICIÓN
COLA DE
MENSAJES
CAPA DE
PROCESAMIENTO
ALMACENAMIENTO EN
MEMORIA
CAPA DE ACCESO
ALMACENAMIENTO
LARGA DURACIÓN
ORIGEN
2009
UC Berkeley
empieza a trabajar
en Spark
2010
Yahoo! crea S4
2010
Cloudera crea
Flume
2011
NathanMarzcrea
Storm
2014
Stratosphere
evoluciona a
Apache Flink
2013
Se publica Spark
v0.7 con la
primera version de
Spark Streaming
2013
Linkedin presenta
Samza
2012
LinkedIn desarrolla
Kafka
2015
Ebay libera
Pulsar
2015
DataTorrent libera
como incubator
Apache Apex
2016
Se publica
Apache Storm v1.0
con grandes cambios
2016
Google promueve
Apache Beam
con el apoyo de
DataArtisans y Cloudera
2016
Se publica
Apache Spark 2.0
con notables cambios
█ CONCEPTOS CLAVE EN FAST DATA
SEMÁNTICA DE PROCESAMIENTO
AT-LEAST-ONCE AT-MOST-ONCE EXACTLY-ONCE
Cada mensaje se procesa al menos
una vez. Se asegura que todos los
mensajes recibidos son procesados,
pero podría pasar que algún mensaje
se procesase más de una vez.
Cada mensaje se procesa como
máximo una vez. Se asegura que
ningún mensaje es procesado más de
una vez, pero podría pasar que algún
mensaje no se procesase.
Cada mensaje se procesa exactamente
una vez. Ningún mensaje se queda sin
procesar y ningún mensaje se procesa
más de una vez. La más compleja de
implementar.
NOCIÓN DEL TIEMPO
ProcessingTime
Event Time
Skew
Event Time Processing Time
Una nueva esperanza Episodio IV 1977
El Imperio Contraataca Episodio V 1980
El Retorno del Jedi Episodio VI 1983
La Amenaza Fantasma Episodio I 1999
El ataque de los Clones Episodio II 2002
La venganza de los Sith Episodio III 2005
El despertar de la fuerza Episodio VII 2015
9:008:00 14:0013:0012:0011:0010:002:001:00 7:006:005:004:003:00
NOCIÓN DEL INFINITO
VENTANAS
13:00 14:008:00 9:00 10:00 11:00 12:00
Fijas Deslizantes
1 2 3
54
Sesiones
2
431
Key 2
Key 1
Key 3
Tiempo
Nº elementos
2 3 4
TIPOS DE VENTANAS
Cuando juntamos tiempo y ventanas….
TRIGGER Y WATERMARK
Estrategia early and late firings
█ DIFERENCIAS ENTRE FLINK Y SPARK
‒ Code demo
¿QUÉ SON?
Plataforma de procesamiento distribuido basado
en memoria para data-at-rest y data-in-motion.
• Motor de procesamiento streaming
‒ Batch como caso especial de streaming
• API sencillo para batch y streaming en
múltiples lenguajes
‒ Java, Scala, SQL, Python (WIP), R (WIP)
• Librerías para CEP, ML y Grafos
• Integración con ecosistema Big Data
‒ Hadoop, Kafka, HBase, etc.
• Open Source
‒ Proyecto Apache desde 2014
‒ Evolución del prroyecto I+D europeo Stratosphere
comenzado en 2010
‒ Apoyo de la empresa DataArtisans
Plataforma de procesamiento distribuido basado
en memoria para data-at-rest y data-in-motion.
• Motor de procesamiento batch
‒ Streaming mediante micro-batching
• API sencillo para batch y streaming en
múltiples lenguajes
‒ Java, Scala, SQL, Python, R
• Librerías para ML y Grafos
• Integración con ecosistema Big Data
‒ Hadoop, Kafka, HBase, etc.
• Open Source
‒ Liberado en 2010 y proyecto Apache desde 2013
(incubating) – 2014 (top)
‒ Comenzado en 2009 por UC Berkeley
‒ Apoyo de la empresa Databricks
Apache Flink Apache Spark
¿CÓMO SON?
• Arquitectura maestro-esclavo
‒ Client
‒ JobManager
‒ TaskManager
‒ TaskSlot
• Modelo workflow DAG
‒ Map, Reduce, GroupBy, Join, etc.
• Stateful
‒ Memoria, disco, RockDB
• Shell interactivo de Scala
• Tolerancia a fallos mediante checkpoints
• Optimizador del plan de ejecución
‒ Nativo, diferenciado para batch y streaming
• Control de back pressure
• Arquitectura maestro-esclavo
‒ Driver
‒ Cluster Manager
‒ Worker Node
‒ Task
• Modelo workflow DAG
‒ Map, Reduce, GroupBy, Join, etc.
• Stateful
‒ Memoria, externo (v2.x)
• Shell interactivo de Scala
• Tolerancia a fallos mediante checkpoints
• Optimizador del plan de ejecución
‒ Catalyst (v2.x). Solo para APIs de alto nivel
• Control de back pressure
Apache Flink Apache Spark
PRINCIPALES DIFERENCIAS ENTRE
FLINK Y SPARK STREAMING
EVENT-AT-TIME VS MICRO-BATCHING
Diseño
Al utilizar un motor para batch, Spark tiene que simular el
streaming hacienda “batches pequeños”  micro-
batching.
Esto provoca una latencia ya que es necesario terminar el
micro-batch de elementos antes de empezar a
procesarlo. Tamaño mínimo 0,5 sg.
Flink es un motor streaming nativo por lo que procesa
elemento a elemento evitando esa latencia.
GESTIÓN AVANZADA DEL TIEMPO
Funcionalidad
Flink proporciona API para poder utilizar el event time o el processing time de
forma sencilla. En caso de usar el event time, Flink se encarga
automáticamente de gestionar los eventos desordenados (watermarks).
Spark Streaming solo trabaja con processing time por lo que no puede
gestionar eventos desordenados.
• Planificado event time para Structured Streaming
CODE DEMO (I)
Event time (Flink) vs Processing time (Spark)
Basado en código de la comunidad Apache Flink
https://github.com/dataArtisans/oscon.git
MODELO DE VENTANAS AVANZADO
Funcionalidad
Flink proporciona API para la gestión de los 3 tipos de ventanas
permitiendo definir el tamaño e intervalo por tiempo y nº de
elementos.
Spark NO incluye ventanas por sesión y el tamaño de las NO se
puede definir por nº de elementos.
Flink incluye otros conceptos avanzados para gestión de
ventanas
• Triggers: permite lanzar la ejecución de una ventana sin terminar al cumplirse las
condiciones especificadas.
• Evictors: permite eliminar elementos de la ventana bajo las condiciones
especificadas.
3
4
VERSIONADO DE APLICACIONES
Funcionalidad
Para asegurar la semántica exactly-one, la consistencia de estados,
y la tolerancia a fallos, tanto Flink como Spark utilizan checkpoints
para guardar snapshots de su estado.
Basado en ese mismo mecanismo Flink proporciona un API para
savepoints, permitiendo hacer versionado de aplicaciones.
Una nueva aplicación Flink (v1) puede partir del savepoint de una
versión anterior de la aplicación (v0). Esto se puede usar para A/B
Testing, implementar Arquitecturas Kappa, hacer rollbacks de
versiones, etc.
Los checkpoints de Spark Streaming no proporcionan la misma
funcionalidad.
CODE DEMO (II)
Savepoints (Flink) vs Checkpoints (Spark)
Basado en código de la comunidad Apache Flink
https://github.com/dataArtisans/oscon.git
3
6
ITERACIONES
Rendimiento
Flink tiene un API para soporte nativo de Iteraciones. Importante
para algoritmos iterativos muy habituales en machine learning y
graph processing:
• Iterate: se ejecuta sobre el resultado anterior (o el dataset inicial)
• Delta Iterate: se ejecutan solo sobre la información que ha
cambiado
En Spark las iteraciones se tienen que programar como un bucle
tradicional. Por tanto, en cada iteración se planifican y ejecutan las
operaciones. Además no es posible hacer iteraciones delta.
En Flink solo hay una planificiación y se pueden usar interaciones
delta. El API DeltaIterate de Flink solo es válido para batch
(DataSet).
GESTIÓN DE LA MEMORIA
Rendimiento
Flink tiene desde sus inicios su propio gestor de memoria dentro de la
JVM (estilo C++). La información se se almacena serializada como arrays
de bytes dentro de la JVM. La memoria se reserva/libera y usa usando
una buffer interno.
• Evita lanzar excepciones de OutOfMemory.
• Reduce el Gargabe Collection
• No necesita optimizaciones
• Más robusto y mejor rendimiento
Spark comenzó el proyecto Tungsten en la v1.4 (beta), y primera oficial
en v1.6. Evolución en v2.x
JVM Heap
User
FunctionsFlinkRuntime
THROUGHPUT & LATENCY
Rendimiento
El comportamiento de Flink es lineal, mientras
que el de Spark es a escalones debido a su
diseño de micro-batching.
Flink consigue menor latencia ante el mismo
throughput de Spark Streaming.
Flink consigue una mejor relación
troughput/latency que Spark Streaming
Flink bate a Spark Streaming en el benchmark
de referencia actualmente sobre tecnologías de
streaming processing
https://yahooeng.tumblr.com/post/135321837876/benchmarking-streaming-
computation-engines-at
http://data-artisans.com/extending-the-yahoo-streaming-benchmark/
█ CONCLUSIONES
¿CUÁNDO USAR …?
• Necesidad de latencia baja
• Diseño de una arquitectura pura de streaming
• Necesidad de una lógica de ventanas
complicada
• Montar una arquitectura de datos donde la
parte de streaming es la principal y la batch
secundaria
• Poder beneficiarse en la parte batch de las
iteraciones nativas
• No hay un requisito estricto de baja latencia
• Existe ya una arquitectura de datos con Spark
• Montar una arquitectura de datos donde la
parte batch es la principal y la de streaming
secundaria
• La lógica de negocio se puede implementar
con ventanas por tiempo
• Poder beneficiarse de las librerías de SQL y
ML en la arquitectura
Apache Flink Apache Spark
COMPARACIÓN CON OTRAS TECNOLOGÍAS
Procesamiento Event-at-time Micro-batching Event-at-time Event-at-time
Gestión de estado Sí en 1.x. Externa Si. Memoria.
Si. Memoria y BD
embebida.
Si. BD embebida.
Semántica
at least once
exactly-once con Trident
exactly once exactly once at least once
Ventana deslizante
Sí en 1.x. Por tiempo y nº
eventos
Si. Por tiempo
Si. Por tiempo y nº
eventos.
No
Ventana no-deslizante
Sí en 1.x. Por tiempo y nº
eventos
Si. Por tiempo (micro-
batch)
Si. Por tiempo y nº
eventos.
Si. Por tiempo
Ventana por sesión No No Sí No
Gestión eventos desordenados Sí en 1.x No Sí No
Latencia < segundos segundos < segundos < segundos
Rendimiento Medio-Alto Medio-Alto Alto Alto
Lenguajes
Java, Scala, Ruby,
Python, Javascript, Perl
Scala, Java, Python, R Java, Scala, Python Java, Scala
¡GRACIAS!
Rubén Casado Tejedor
ruben.casado.tejedor@accenture.com
ruben_casado
http://www.meetup.com/es-ES/Meetup-de-Apache-Flink-en-Madrid/

Weitere ähnliche Inhalte

Was ist angesagt?

PCAP Graphs for Cybersecurity and System Tuning
PCAP Graphs for Cybersecurity and System TuningPCAP Graphs for Cybersecurity and System Tuning
PCAP Graphs for Cybersecurity and System TuningDr. Mirko Kämpf
 
Gnss Opportunities In Precision Agriculture
Gnss Opportunities In Precision AgricultureGnss Opportunities In Precision Agriculture
Gnss Opportunities In Precision AgricultureTamme van der Wal
 
Working with ArcGIS Online
Working with ArcGIS OnlineWorking with ArcGIS Online
Working with ArcGIS OnlineEsri
 
Real Time Location Systems in Healthcare
Real Time Location Systems in HealthcareReal Time Location Systems in Healthcare
Real Time Location Systems in Healthcarejetweedy
 
Cloudera training: secure your Cloudera cluster
Cloudera training: secure your Cloudera clusterCloudera training: secure your Cloudera cluster
Cloudera training: secure your Cloudera clusterCloudera, Inc.
 
Système d’Information Géographique et Télédétection: généralités
Système d’Information Géographique et Télédétection: généralitésSystème d’Information Géographique et Télédétection: généralités
Système d’Information Géographique et Télédétection: généralitésInstitut Pasteur de Madagascar
 
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...Databricks
 
GIS Standards and Interoperability
GIS Standards and InteroperabilityGIS Standards and Interoperability
GIS Standards and InteroperabilityNasr Khashoggi
 
Interpolation 2013
Interpolation 2013Interpolation 2013
Interpolation 2013Atiqa khan
 
Les nuages de points photogrammétriques dans les domaines forestiers minie…
Les nuages de points photogrammétriques dans les domaines forestiers minie…Les nuages de points photogrammétriques dans les domaines forestiers minie…
Les nuages de points photogrammétriques dans les domaines forestiers minie…VisionGÉOMATIQUE2012
 
LiDAR Technology and Geospatial Services
LiDAR Technology and Geospatial Services LiDAR Technology and Geospatial Services
LiDAR Technology and Geospatial Services MattBethel1
 
Digital Image Processing and gis software systems
Digital Image Processing and gis software systemsDigital Image Processing and gis software systems
Digital Image Processing and gis software systemsNirmal Kumar
 
SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1YOUSSOUPHA MBODJI
 

Was ist angesagt? (19)

PCAP Graphs for Cybersecurity and System Tuning
PCAP Graphs for Cybersecurity and System TuningPCAP Graphs for Cybersecurity and System Tuning
PCAP Graphs for Cybersecurity and System Tuning
 
Geocodificação de Endereços
Geocodificação de EndereçosGeocodificação de Endereços
Geocodificação de Endereços
 
Gis
GisGis
Gis
 
Gnss Opportunities In Precision Agriculture
Gnss Opportunities In Precision AgricultureGnss Opportunities In Precision Agriculture
Gnss Opportunities In Precision Agriculture
 
Systeme d’information geographique
Systeme d’information geographiqueSysteme d’information geographique
Systeme d’information geographique
 
Working with ArcGIS Online
Working with ArcGIS OnlineWorking with ArcGIS Online
Working with ArcGIS Online
 
Real Time Location Systems in Healthcare
Real Time Location Systems in HealthcareReal Time Location Systems in Healthcare
Real Time Location Systems in Healthcare
 
Cloudera training: secure your Cloudera cluster
Cloudera training: secure your Cloudera clusterCloudera training: secure your Cloudera cluster
Cloudera training: secure your Cloudera cluster
 
Système d’Information Géographique et Télédétection: généralités
Système d’Information Géographique et Télédétection: généralitésSystème d’Information Géographique et Télédétection: généralités
Système d’Information Géographique et Télédétection: généralités
 
NSDI_ Concepts and Components
NSDI_ Concepts and ComponentsNSDI_ Concepts and Components
NSDI_ Concepts and Components
 
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...
Deep Learning on Apache Spark at CERN’s Large Hadron Collider with Intel Tech...
 
GIS Standards and Interoperability
GIS Standards and InteroperabilityGIS Standards and Interoperability
GIS Standards and Interoperability
 
Interpolation 2013
Interpolation 2013Interpolation 2013
Interpolation 2013
 
Enterprise GIS Planning and Framework
Enterprise GIS Planning and FrameworkEnterprise GIS Planning and Framework
Enterprise GIS Planning and Framework
 
Les nuages de points photogrammétriques dans les domaines forestiers minie…
Les nuages de points photogrammétriques dans les domaines forestiers minie…Les nuages de points photogrammétriques dans les domaines forestiers minie…
Les nuages de points photogrammétriques dans les domaines forestiers minie…
 
LiDAR Technology and Geospatial Services
LiDAR Technology and Geospatial Services LiDAR Technology and Geospatial Services
LiDAR Technology and Geospatial Services
 
Digital Image Processing and gis software systems
Digital Image Processing and gis software systemsDigital Image Processing and gis software systems
Digital Image Processing and gis software systems
 
SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1SIG ET ANALYSE SPATIALE, SESSION 1
SIG ET ANALYSE SPATIALE, SESSION 1
 
Indoor positioning
Indoor positioningIndoor positioning
Indoor positioning
 

Andere mochten auch

Advanced data science algorithms applied to scalable stream processing by Dav...
Advanced data science algorithms applied to scalable stream processing by Dav...Advanced data science algorithms applied to scalable stream processing by Dav...
Advanced data science algorithms applied to scalable stream processing by Dav...Big Data Spain
 
Big Migrations: Moving elephant herds by Carlos Izquierdo
Big Migrations: Moving elephant herds by Carlos IzquierdoBig Migrations: Moving elephant herds by Carlos Izquierdo
Big Migrations: Moving elephant herds by Carlos IzquierdoBig Data Spain
 
Converging Big Data and Application Infrastructure by Steven Poutsy
Converging Big Data and Application Infrastructure by Steven PoutsyConverging Big Data and Application Infrastructure by Steven Poutsy
Converging Big Data and Application Infrastructure by Steven PoutsyBig Data Spain
 
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...Big Data Spain
 
Finding the needle in the haystack: how Nestle is leveraging big data to defe...
Finding the needle in the haystack: how Nestle is leveraging big data to defe...Finding the needle in the haystack: how Nestle is leveraging big data to defe...
Finding the needle in the haystack: how Nestle is leveraging big data to defe...Big Data Spain
 
Big data in 140 characters by Joe Rice
Big data in 140 characters by Joe RiceBig data in 140 characters by Joe Rice
Big data in 140 characters by Joe RiceBig Data Spain
 
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 Migration and Coexistence between Relational and NoSQL Databases by Manuel H... Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...Big Data Spain
 
From data to AI with the Machine Learning Canvas by Louis Dorard Slides
From data to AI with the Machine Learning Canvas by Louis  Dorard SlidesFrom data to AI with the Machine Learning Canvas by Louis  Dorard Slides
From data to AI with the Machine Learning Canvas by Louis Dorard SlidesBig Data Spain
 
Assessing spatial accessibility to primary health care services in the Metrop...
Assessing spatial accessibility to primary health care services in the Metrop...Assessing spatial accessibility to primary health care services in the Metrop...
Assessing spatial accessibility to primary health care services in the Metrop...Big Data Spain
 
Case of success: Visualization as an example for exercising democratic transp...
Case of success: Visualization as an example for exercising democratic transp...Case of success: Visualization as an example for exercising democratic transp...
Case of success: Visualization as an example for exercising democratic transp...Big Data Spain
 
Stream Processing use cases and applications with Apache Apex by Thomas Weise
Stream Processing use cases and applications with Apache Apex by Thomas WeiseStream Processing use cases and applications with Apache Apex by Thomas Weise
Stream Processing use cases and applications with Apache Apex by Thomas WeiseBig Data Spain
 
Enabling the Bank of the Future by Ignacio Bernal
Enabling the Bank of the Future by Ignacio BernalEnabling the Bank of the Future by Ignacio Bernal
Enabling the Bank of the Future by Ignacio BernalBig Data Spain
 
VP of WW Partners by Alan Chhabra
VP of WW Partners by Alan ChhabraVP of WW Partners by Alan Chhabra
VP of WW Partners by Alan ChhabraBig Data Spain
 
From data to numbers to knowledge: semantic embeddings By Alvaro Barbero
From data to numbers to knowledge: semantic embeddings By Alvaro BarberoFrom data to numbers to knowledge: semantic embeddings By Alvaro Barbero
From data to numbers to knowledge: semantic embeddings By Alvaro BarberoBig Data Spain
 
The Rise of Engineering-Driven Analytics by Loren Shure
The Rise of Engineering-Driven Analytics by Loren ShureThe Rise of Engineering-Driven Analytics by Loren Shure
The Rise of Engineering-Driven Analytics by Loren ShureBig Data Spain
 
Why apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksWhy apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksSlim Baltagi
 
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning ModelsApache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning ModelsAnyscale
 
Apache Flink vs Apache Spark - Reproducible experiments on cloud.
Apache Flink vs Apache Spark - Reproducible experiments on cloud.Apache Flink vs Apache Spark - Reproducible experiments on cloud.
Apache Flink vs Apache Spark - Reproducible experiments on cloud.Shelan Perera
 
Introduction to Apache Apex by Thomas Weise
Introduction to Apache Apex by Thomas WeiseIntroduction to Apache Apex by Thomas Weise
Introduction to Apache Apex by Thomas WeiseBig Data Spain
 

Andere mochten auch (20)

Advanced data science algorithms applied to scalable stream processing by Dav...
Advanced data science algorithms applied to scalable stream processing by Dav...Advanced data science algorithms applied to scalable stream processing by Dav...
Advanced data science algorithms applied to scalable stream processing by Dav...
 
Big Migrations: Moving elephant herds by Carlos Izquierdo
Big Migrations: Moving elephant herds by Carlos IzquierdoBig Migrations: Moving elephant herds by Carlos Izquierdo
Big Migrations: Moving elephant herds by Carlos Izquierdo
 
Converging Big Data and Application Infrastructure by Steven Poutsy
Converging Big Data and Application Infrastructure by Steven PoutsyConverging Big Data and Application Infrastructure by Steven Poutsy
Converging Big Data and Application Infrastructure by Steven Poutsy
 
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...
Are we reaching a Data Science Singularity? How Cognitive Computing is emergi...
 
Finding the needle in the haystack: how Nestle is leveraging big data to defe...
Finding the needle in the haystack: how Nestle is leveraging big data to defe...Finding the needle in the haystack: how Nestle is leveraging big data to defe...
Finding the needle in the haystack: how Nestle is leveraging big data to defe...
 
Flink vs. Spark
Flink vs. SparkFlink vs. Spark
Flink vs. Spark
 
Big data in 140 characters by Joe Rice
Big data in 140 characters by Joe RiceBig data in 140 characters by Joe Rice
Big data in 140 characters by Joe Rice
 
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 Migration and Coexistence between Relational and NoSQL Databases by Manuel H... Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
Migration and Coexistence between Relational and NoSQL Databases by Manuel H...
 
From data to AI with the Machine Learning Canvas by Louis Dorard Slides
From data to AI with the Machine Learning Canvas by Louis  Dorard SlidesFrom data to AI with the Machine Learning Canvas by Louis  Dorard Slides
From data to AI with the Machine Learning Canvas by Louis Dorard Slides
 
Assessing spatial accessibility to primary health care services in the Metrop...
Assessing spatial accessibility to primary health care services in the Metrop...Assessing spatial accessibility to primary health care services in the Metrop...
Assessing spatial accessibility to primary health care services in the Metrop...
 
Case of success: Visualization as an example for exercising democratic transp...
Case of success: Visualization as an example for exercising democratic transp...Case of success: Visualization as an example for exercising democratic transp...
Case of success: Visualization as an example for exercising democratic transp...
 
Stream Processing use cases and applications with Apache Apex by Thomas Weise
Stream Processing use cases and applications with Apache Apex by Thomas WeiseStream Processing use cases and applications with Apache Apex by Thomas Weise
Stream Processing use cases and applications with Apache Apex by Thomas Weise
 
Enabling the Bank of the Future by Ignacio Bernal
Enabling the Bank of the Future by Ignacio BernalEnabling the Bank of the Future by Ignacio Bernal
Enabling the Bank of the Future by Ignacio Bernal
 
VP of WW Partners by Alan Chhabra
VP of WW Partners by Alan ChhabraVP of WW Partners by Alan Chhabra
VP of WW Partners by Alan Chhabra
 
From data to numbers to knowledge: semantic embeddings By Alvaro Barbero
From data to numbers to knowledge: semantic embeddings By Alvaro BarberoFrom data to numbers to knowledge: semantic embeddings By Alvaro Barbero
From data to numbers to knowledge: semantic embeddings By Alvaro Barbero
 
The Rise of Engineering-Driven Analytics by Loren Shure
The Rise of Engineering-Driven Analytics by Loren ShureThe Rise of Engineering-Driven Analytics by Loren Shure
The Rise of Engineering-Driven Analytics by Loren Shure
 
Why apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksWhy apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics Frameworks
 
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning ModelsApache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
 
Apache Flink vs Apache Spark - Reproducible experiments on cloud.
Apache Flink vs Apache Spark - Reproducible experiments on cloud.Apache Flink vs Apache Spark - Reproducible experiments on cloud.
Apache Flink vs Apache Spark - Reproducible experiments on cloud.
 
Introduction to Apache Apex by Thomas Weise
Introduction to Apache Apex by Thomas WeiseIntroduction to Apache Apex by Thomas Weise
Introduction to Apache Apex by Thomas Weise
 

Ähnlich wie 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 dataJosé 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
 
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Francisco Javier Toscano Lopez
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Ricard Clau
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicasGerardo Linares
 
Docker: la revolución en virtualización
Docker: la revolución en virtualizaciónDocker: la revolución en virtualización
Docker: la revolución en virtualizaciónMarcelo Ochoa
 
Estudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveEstudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveWellness Telecom
 
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 Guillermo Alvarado Mejía
 
Big Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackBig Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackSoftware Guru
 
Introduccion a Apache Spark
Introduccion a Apache SparkIntroduccion a Apache Spark
Introduccion a Apache SparkGustavo Arjones
 
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
 

Ähnlich wie Why Apache Flink is better than Spark by Rubén Casado (20)

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
 
¿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?
 
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2
 
Rendimiento extremo en php
Rendimiento extremo en phpRendimiento extremo en php
Rendimiento extremo en php
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicas
 
Gestión Remota de Equipos con Python
Gestión Remota de Equipos con PythonGestión Remota de Equipos con Python
Gestión Remota de Equipos con Python
 
Docker: la revolución en virtualización
Docker: la revolución en virtualizaciónDocker: la revolución en virtualización
Docker: la revolución en virtualización
 
Tuning Lamp
Tuning LampTuning Lamp
Tuning Lamp
 
Scala@real life
Scala@real lifeScala@real life
Scala@real life
 
Scala @ Real life
Scala @ Real lifeScala @ Real life
Scala @ Real life
 
Estudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveEstudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y Hive
 
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
 
Big Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStackBig Data para desarrolladores utilizando Hadoop y OpenStack
Big Data para desarrolladores utilizando Hadoop y OpenStack
 
Introduccion a Apache Spark
Introduccion a Apache SparkIntroduccion a Apache Spark
Introduccion a Apache Spark
 
Spark meetup barcelona
Spark meetup barcelonaSpark meetup barcelona
Spark meetup barcelona
 
De Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache KafkaDe Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache Kafka
 
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 - ...
 
Spark web meetup
Spark web meetupSpark web meetup
Spark web meetup
 
SMBD 2011
SMBD 2011SMBD 2011
SMBD 2011
 

Mehr von Big Data Spain

Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017
Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017
Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017Big Data Spain
 
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...Big Data Spain
 
AI: The next frontier by Amparo Alonso at Big Data Spain 2017
AI: The next frontier by Amparo Alonso at Big Data Spain 2017AI: The next frontier by Amparo Alonso at Big Data Spain 2017
AI: The next frontier by Amparo Alonso at Big Data Spain 2017Big Data Spain
 
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017Big Data Spain
 
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...Big Data Spain
 
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...Big Data Spain
 
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...Big Data Spain
 
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...Big Data Spain
 
State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...Big Data Spain
 
Trading at market speed with the latest Kafka features by Iñigo González at B...
Trading at market speed with the latest Kafka features by Iñigo González at B...Trading at market speed with the latest Kafka features by Iñigo González at B...
Trading at market speed with the latest Kafka features by Iñigo González at B...Big Data Spain
 
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...Big Data Spain
 
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a... The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...Big Data Spain
 
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...Big Data Spain
 
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017Big Data Spain
 
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...Big Data Spain
 
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...Big Data Spain
 
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...Big Data Spain
 
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...Big Data Spain
 
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...Big Data Spain
 
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017Big Data Spain
 

Mehr von Big Data Spain (20)

Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017
Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017
Big Data, Big Quality? by Irene Gonzálvez at Big Data Spain 2017
 
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
 
AI: The next frontier by Amparo Alonso at Big Data Spain 2017
AI: The next frontier by Amparo Alonso at Big Data Spain 2017AI: The next frontier by Amparo Alonso at Big Data Spain 2017
AI: The next frontier by Amparo Alonso at Big Data Spain 2017
 
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017
Disaster Recovery for Big Data by Carlos Izquierdo at Big Data Spain 2017
 
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...
Presentation: Boost Hadoop and Spark with in-memory technologies by Akmal Cha...
 
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...
Data science for lazy people, Automated Machine Learning by Diego Hueltes at ...
 
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...
Training Deep Learning Models on Multiple GPUs in the Cloud by Enrique Otero ...
 
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...
Unbalanced data: Same algorithms different techniques by Eric Martín at Big D...
 
State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...State of the art time-series analysis with deep learning by Javier Ordóñez at...
State of the art time-series analysis with deep learning by Javier Ordóñez at...
 
Trading at market speed with the latest Kafka features by Iñigo González at B...
Trading at market speed with the latest Kafka features by Iñigo González at B...Trading at market speed with the latest Kafka features by Iñigo González at B...
Trading at market speed with the latest Kafka features by Iñigo González at B...
 
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...
Unified Stream Processing at Scale with Apache Samza by Jake Maes at Big Data...
 
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a... The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...
Artificial Intelligence and Data-centric businesses by Óscar Méndez at Big Da...
 
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017
Why big data didn’t end causal inference by Totte Harinen at Big Data Spain 2017
 
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...
Meme Index. Analyzing fads and sensations on the Internet by Miguel Romero at...
 
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...
Vehicle Big Data that Drives Smart City Advancement by Mike Branch at Big Dat...
 
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
 
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...
Attacking Machine Learning used in AntiVirus with Reinforcement by Rubén Mart...
 
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...
More people, less banking: Blockchain by Salvador Casquero at Big Data Spain ...
 
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017
Make the elephant fly, once again by Sourygna Luangsay at Big Data Spain 2017
 

Kürzlich hochgeladen

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
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
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 UninoveFagnerLisboa3
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
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)GDGSucre
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
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 JosephBRAYANJOSEPHPEREZGOM
 
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.pptx241521559
 
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 FabricKeyla Dolores Méndez
 
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íassuserf18419
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 

Kürzlich hochgeladen (16)

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...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
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
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
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)
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
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
 
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
 
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
 
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
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 

Why Apache Flink is better than Spark by Rubén Casado

  • 1.
  • 2. ¿POR QUÉ APACHE FLINK ES MEJOR QUE SPARK? Dr Rubén Casado Tejedor
  • 3. • Formación – Doctor en Informática (Ingeniería del Software) – Ingeniero en Informática – Ingeniero Técnico en Informática de Sistemas • Experiencia profesional – Big Data Manager en Accenture Digital – Director del Master en Arquitectura Big Data en Kschool – Organizador del Meetup Apache Flink Madrid – Head of Big Data & Analytics en Treelogic – Investigador y profesor en la Universidad de Oviedo, Oxford Brookes University (Reino Unido) y INRIA/LORIA (Francia) Sobre mi 
  • 4. █ BIG DATA Y STREAMING PROCESSING █ CONCEPTOS CLAVE EN FAST DATA █ DIFERENCIAS ENTRE FLINK Y SPARK ‒ Code demo █ CONCLUSIONES
  • 5. █ BIG DATA Y STREAMING PROCESSING
  • 6. VOLUMEN Grandes cantidades de datos. Necesidad de soluciones tecnológica y económicamente escalables. VARIEDAD Información estructurada, semi y desestructurada. Necesidad de almacenar y procesar distintos tipos de información. VELOCIDAD Alta frecuencia de generación de información. Necesidad de producir resultados en tiempo real.
  • 7. STREAMING PROCESSING es el paradigma de procesamiento para STORM VELOCIDAD APACHE FLINK
  • 9. Plataforma tradicional de BI Plataforma Big Data batch processing Analytical Database Data as a platform Data Ingest Data Collection
  • 11. Waze
  • 12.
  • 13. ¿QUÉ ES STREAMING PROCESSING? CLASIFICACIÓN EJEMPLOS LATENCIA TOLERANCIA AL RETRASO Hard • Marcapasos • Sistema antibloqueo de frenos • Microsegundos - milisegundos • Ninguna  fallo total del sistema, pérdidas de vidas humanas, etc. Soft • Sistema de reservas online • VoIP • Milisegundos - segundos • Baja  fallo total del Sistema, sin pérdidas de vidas humanas. Near • Sistema de video-conferencia • Domótica • Segundos - minutos • Alta  sin riesgo de fallo del sistema
  • 14. ARQUITECTURA GENERAL STREAMING PROCESSING SYSTEM CAPA DE ADQUISICIÓN COLA DE MENSAJES CAPA DE PROCESAMIENTO ALMACENAMIENTO EN MEMORIA CAPA DE ACCESO ALMACENAMIENTO LARGA DURACIÓN ORIGEN
  • 15. 2009 UC Berkeley empieza a trabajar en Spark 2010 Yahoo! crea S4 2010 Cloudera crea Flume 2011 NathanMarzcrea Storm 2014 Stratosphere evoluciona a Apache Flink 2013 Se publica Spark v0.7 con la primera version de Spark Streaming 2013 Linkedin presenta Samza 2012 LinkedIn desarrolla Kafka 2015 Ebay libera Pulsar 2015 DataTorrent libera como incubator Apache Apex 2016 Se publica Apache Storm v1.0 con grandes cambios 2016 Google promueve Apache Beam con el apoyo de DataArtisans y Cloudera 2016 Se publica Apache Spark 2.0 con notables cambios
  • 16. █ CONCEPTOS CLAVE EN FAST DATA
  • 17. SEMÁNTICA DE PROCESAMIENTO AT-LEAST-ONCE AT-MOST-ONCE EXACTLY-ONCE Cada mensaje se procesa al menos una vez. Se asegura que todos los mensajes recibidos son procesados, pero podría pasar que algún mensaje se procesase más de una vez. Cada mensaje se procesa como máximo una vez. Se asegura que ningún mensaje es procesado más de una vez, pero podría pasar que algún mensaje no se procesase. Cada mensaje se procesa exactamente una vez. Ningún mensaje se queda sin procesar y ningún mensaje se procesa más de una vez. La más compleja de implementar.
  • 19. Event Time Processing Time Una nueva esperanza Episodio IV 1977 El Imperio Contraataca Episodio V 1980 El Retorno del Jedi Episodio VI 1983 La Amenaza Fantasma Episodio I 1999 El ataque de los Clones Episodio II 2002 La venganza de los Sith Episodio III 2005 El despertar de la fuerza Episodio VII 2015
  • 21. VENTANAS 13:00 14:008:00 9:00 10:00 11:00 12:00
  • 22. Fijas Deslizantes 1 2 3 54 Sesiones 2 431 Key 2 Key 1 Key 3 Tiempo Nº elementos 2 3 4 TIPOS DE VENTANAS
  • 23. Cuando juntamos tiempo y ventanas….
  • 25. Estrategia early and late firings
  • 26. █ DIFERENCIAS ENTRE FLINK Y SPARK ‒ Code demo
  • 27. ¿QUÉ SON? Plataforma de procesamiento distribuido basado en memoria para data-at-rest y data-in-motion. • Motor de procesamiento streaming ‒ Batch como caso especial de streaming • API sencillo para batch y streaming en múltiples lenguajes ‒ Java, Scala, SQL, Python (WIP), R (WIP) • Librerías para CEP, ML y Grafos • Integración con ecosistema Big Data ‒ Hadoop, Kafka, HBase, etc. • Open Source ‒ Proyecto Apache desde 2014 ‒ Evolución del prroyecto I+D europeo Stratosphere comenzado en 2010 ‒ Apoyo de la empresa DataArtisans Plataforma de procesamiento distribuido basado en memoria para data-at-rest y data-in-motion. • Motor de procesamiento batch ‒ Streaming mediante micro-batching • API sencillo para batch y streaming en múltiples lenguajes ‒ Java, Scala, SQL, Python, R • Librerías para ML y Grafos • Integración con ecosistema Big Data ‒ Hadoop, Kafka, HBase, etc. • Open Source ‒ Liberado en 2010 y proyecto Apache desde 2013 (incubating) – 2014 (top) ‒ Comenzado en 2009 por UC Berkeley ‒ Apoyo de la empresa Databricks Apache Flink Apache Spark
  • 28. ¿CÓMO SON? • Arquitectura maestro-esclavo ‒ Client ‒ JobManager ‒ TaskManager ‒ TaskSlot • Modelo workflow DAG ‒ Map, Reduce, GroupBy, Join, etc. • Stateful ‒ Memoria, disco, RockDB • Shell interactivo de Scala • Tolerancia a fallos mediante checkpoints • Optimizador del plan de ejecución ‒ Nativo, diferenciado para batch y streaming • Control de back pressure • Arquitectura maestro-esclavo ‒ Driver ‒ Cluster Manager ‒ Worker Node ‒ Task • Modelo workflow DAG ‒ Map, Reduce, GroupBy, Join, etc. • Stateful ‒ Memoria, externo (v2.x) • Shell interactivo de Scala • Tolerancia a fallos mediante checkpoints • Optimizador del plan de ejecución ‒ Catalyst (v2.x). Solo para APIs de alto nivel • Control de back pressure Apache Flink Apache Spark
  • 30. EVENT-AT-TIME VS MICRO-BATCHING Diseño Al utilizar un motor para batch, Spark tiene que simular el streaming hacienda “batches pequeños”  micro- batching. Esto provoca una latencia ya que es necesario terminar el micro-batch de elementos antes de empezar a procesarlo. Tamaño mínimo 0,5 sg. Flink es un motor streaming nativo por lo que procesa elemento a elemento evitando esa latencia.
  • 31. GESTIÓN AVANZADA DEL TIEMPO Funcionalidad Flink proporciona API para poder utilizar el event time o el processing time de forma sencilla. En caso de usar el event time, Flink se encarga automáticamente de gestionar los eventos desordenados (watermarks). Spark Streaming solo trabaja con processing time por lo que no puede gestionar eventos desordenados. • Planificado event time para Structured Streaming
  • 32. CODE DEMO (I) Event time (Flink) vs Processing time (Spark) Basado en código de la comunidad Apache Flink https://github.com/dataArtisans/oscon.git
  • 33. MODELO DE VENTANAS AVANZADO Funcionalidad Flink proporciona API para la gestión de los 3 tipos de ventanas permitiendo definir el tamaño e intervalo por tiempo y nº de elementos. Spark NO incluye ventanas por sesión y el tamaño de las NO se puede definir por nº de elementos. Flink incluye otros conceptos avanzados para gestión de ventanas • Triggers: permite lanzar la ejecución de una ventana sin terminar al cumplirse las condiciones especificadas. • Evictors: permite eliminar elementos de la ventana bajo las condiciones especificadas.
  • 34. 3 4 VERSIONADO DE APLICACIONES Funcionalidad Para asegurar la semántica exactly-one, la consistencia de estados, y la tolerancia a fallos, tanto Flink como Spark utilizan checkpoints para guardar snapshots de su estado. Basado en ese mismo mecanismo Flink proporciona un API para savepoints, permitiendo hacer versionado de aplicaciones. Una nueva aplicación Flink (v1) puede partir del savepoint de una versión anterior de la aplicación (v0). Esto se puede usar para A/B Testing, implementar Arquitecturas Kappa, hacer rollbacks de versiones, etc. Los checkpoints de Spark Streaming no proporcionan la misma funcionalidad.
  • 35. CODE DEMO (II) Savepoints (Flink) vs Checkpoints (Spark) Basado en código de la comunidad Apache Flink https://github.com/dataArtisans/oscon.git
  • 36. 3 6 ITERACIONES Rendimiento Flink tiene un API para soporte nativo de Iteraciones. Importante para algoritmos iterativos muy habituales en machine learning y graph processing: • Iterate: se ejecuta sobre el resultado anterior (o el dataset inicial) • Delta Iterate: se ejecutan solo sobre la información que ha cambiado En Spark las iteraciones se tienen que programar como un bucle tradicional. Por tanto, en cada iteración se planifican y ejecutan las operaciones. Además no es posible hacer iteraciones delta. En Flink solo hay una planificiación y se pueden usar interaciones delta. El API DeltaIterate de Flink solo es válido para batch (DataSet).
  • 37. GESTIÓN DE LA MEMORIA Rendimiento Flink tiene desde sus inicios su propio gestor de memoria dentro de la JVM (estilo C++). La información se se almacena serializada como arrays de bytes dentro de la JVM. La memoria se reserva/libera y usa usando una buffer interno. • Evita lanzar excepciones de OutOfMemory. • Reduce el Gargabe Collection • No necesita optimizaciones • Más robusto y mejor rendimiento Spark comenzó el proyecto Tungsten en la v1.4 (beta), y primera oficial en v1.6. Evolución en v2.x JVM Heap User FunctionsFlinkRuntime
  • 38. THROUGHPUT & LATENCY Rendimiento El comportamiento de Flink es lineal, mientras que el de Spark es a escalones debido a su diseño de micro-batching. Flink consigue menor latencia ante el mismo throughput de Spark Streaming. Flink consigue una mejor relación troughput/latency que Spark Streaming Flink bate a Spark Streaming en el benchmark de referencia actualmente sobre tecnologías de streaming processing https://yahooeng.tumblr.com/post/135321837876/benchmarking-streaming- computation-engines-at http://data-artisans.com/extending-the-yahoo-streaming-benchmark/
  • 40. ¿CUÁNDO USAR …? • Necesidad de latencia baja • Diseño de una arquitectura pura de streaming • Necesidad de una lógica de ventanas complicada • Montar una arquitectura de datos donde la parte de streaming es la principal y la batch secundaria • Poder beneficiarse en la parte batch de las iteraciones nativas • No hay un requisito estricto de baja latencia • Existe ya una arquitectura de datos con Spark • Montar una arquitectura de datos donde la parte batch es la principal y la de streaming secundaria • La lógica de negocio se puede implementar con ventanas por tiempo • Poder beneficiarse de las librerías de SQL y ML en la arquitectura Apache Flink Apache Spark
  • 41. COMPARACIÓN CON OTRAS TECNOLOGÍAS Procesamiento Event-at-time Micro-batching Event-at-time Event-at-time Gestión de estado Sí en 1.x. Externa Si. Memoria. Si. Memoria y BD embebida. Si. BD embebida. Semántica at least once exactly-once con Trident exactly once exactly once at least once Ventana deslizante Sí en 1.x. Por tiempo y nº eventos Si. Por tiempo Si. Por tiempo y nº eventos. No Ventana no-deslizante Sí en 1.x. Por tiempo y nº eventos Si. Por tiempo (micro- batch) Si. Por tiempo y nº eventos. Si. Por tiempo Ventana por sesión No No Sí No Gestión eventos desordenados Sí en 1.x No Sí No Latencia < segundos segundos < segundos < segundos Rendimiento Medio-Alto Medio-Alto Alto Alto Lenguajes Java, Scala, Ruby, Python, Javascript, Perl Scala, Java, Python, R Java, Scala, Python Java, Scala