BIG DATA
PORQUE LA VIDA SUCEDE ENREAL-TIME
Dr Rubén Casado Tejedor@ruben_casado
VOLUMENGrandes cantidades de datos.
Necesidad de soluciones tecnológica y económicamente escalables.
VARIEDADInformación estructurada, semi y desestructurada. Necesidad de
almacenar y procesar distintos tipos de información.
VELOCIDADAlta frecuencia de generación de
información. Necesidad de producir resultados en tiempo real.
INSERT MAIN TITLE AT 36PT MIN 30PTInsert sub-title at 24pt, min 20pt
INSERT HEADING20PT MIN 18PT
Insert text maximum lines to the bottom of this box,
minimum font size 14pt and line spacing at Multiple 1.1
INSERT HEADING20PT MIN 18PT
Insert text maximum lines to the bottom of this box,
minimum font size 14pt and line spacing at Multiple 1.1
INSERT HEADING20PT MIN 18PT
Insert text maximum lines to the bottom of this box,
minimum font size 14pt and line spacing at Multiple 1.1
Cada 60 segundos
BACH PROCESSING es el paradigmade procesamiento para
APACHE HADOOPVOLUMEN
SPARK
NoSQL es la solución para la
HDFSVARIEDAD
CLAVE-VALOR, COLUMNA, DOCUMENTO, GRAFOS
STREAMING PROCESSING es el paradigma de procesamiento para
STORMVELOCIDAD
APACHE FLINK
STREAMING PROCESSINGAnalizar según sucede
Plataforma tradicional de BI Plataforma Big Data bach processing
Analytical Database Data as a platform
Data Ingest
Data Collection
Apollo 151971
Astronauta David R. Scott en el Lunar Roving Vehicle (LRV)
Cocheautodirigido
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 vidashumanas, 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 fallodel sistema
In many scenarios the computation part of the system is operating in a non-hard real-time fashion, however, the clients may not be consuming the data in real-time, due to network delays, application design, or perhaps a client application is not even running.
Put another way, what we really have is a non-hard real-time service with clients that consume data when they need it. This is a streaming data system, a non-hard realtime system that makes its data available at the moment a client application needs it, it is not soft or near, it is streaming.
ARQUITECTURA GENERALSTREAMING PROCESSING SYSTEM
CAPA DE ADQUISICIÓN
COLA DE MENSAJES
CAPA DE PROCESAMIENTO
ALMACENAMIENTO EN MEMORIA
CAPA DE ACCESO
ALMACENAMIENTO LARGA DURACIÓN
ORIGEN
2009UC Berkeley empieza a trabajaren Spark
2010Yahoo! crea S4
2010Cloudera creaFlume
2011Nathan MarzcreaStorm
2014Stratosphere evoluciona a Apache Flink
2013Se publica Spark v0.7 con la primera version de Spark Streaming
2013Linkedin presentaSamza
2012LinkedIn desarrolla Kafka
2015Ebay liberaPulsar
2015DataTorrent liberacomo incubator Apache Apex
2016Se publicaApache Storm v1.0con grandes cambios
2016Google promueveApache Beamcon el apoyo de DataArtisans y Cloudera
2016Se publicaApache Spark 2.0con notables cambios
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 TIEMPOPr
oces
sing
Tim
e
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 Deslizantes1 2 3
54
Sesiones
2
431
Key 2
Key 1
Key 3
Tiempo
2 3 4
TIPOS DE VENTANAS
Cuando juntamos tiempo y ventanas….
TRIGGER Y WATERMARK
What Where When How
Estrategia early and late firings
CONCLUSIONES
TECNOLOGÍAS DE IMPLEMENTACIÓNSTREAMING PROCESSING SYSTEM
CAPA DE ADQUISICIÓN
COLA DE MENSAJES
CAPA DE PROCESAMIENTO
ALMACENAMIENTO EN MEMORIA
CAPA DE ACCESO
ALMACENAMIENTO LARGA DURACIÓN
ORIGEN