Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Streaming Data : ni pierdas el tren, ni esperes en balde

Streaming Data : ni pierdas el tren, ni esperes en balde

* ¿ Cómo detectar operaciones bancarias fraudulentas lo antes posible ?
* ¿ A qué hora sufren los trenes más retraso y que debo hacer para solucionarlo al mínimo coste?
* ¿ Qué le propongo al usuario que acaba de poner en su cesta de la compra gafas de esquí : calcetines nuevos o pantalones ?
* ¿ En que momento debería escribir y publicar un artículo para que sea leído por un máximo de personas ?

Estas son algunas de las preguntas a las que podemos dar respuesta de forma relativamente sencilla gracias a la emergencia de las nuevas tecnologías de análisis, predicción, streaming de datos, contenedores, orquestradores y cloud. ¡Crear tu flujo de datos en tiempo real, analizarlo y ponerlo en producción nunca fue tan fácil!

En esta sesión, donde habrá teoría, live coding y demos, aprenderás las bases de una arquitectura de streaming de datos, casos de usos y frameworks open-source disponibles para el mejor rendimiento, robustez, y escalabilidad.

¡El lunes volverás al trabajo con ganas de más, prometido !

Galder Zamarreño

November 24, 2017
Tweet

More Decks by Galder Zamarreño

Other Decks in Programming

Transcript

  1. STREAMING DATA :
    Ni pierdas el tren, ni esperes en balde
    Codemotion Madrid
    Galder Zamarreño Arrizabalaga

    @galderz

    24 noviembre 2017

    View Slide

  2. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    2
    Desde 2006
    INGENIERO
    @galderz
    Desarrollador y
    responsable de la comunidad
    COFUNDADOR DE
    INFINISPAN (2009)
    ME GUSTA
    EL QUESO PUES!

    View Slide

  3. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    EL PROBLEMA
    3
    Datos, datos, datos,
    datos y mas datos...
    Demanda de análisis en
    tiempo real
    Arquitecturas de
    streaming de datos

    View Slide

  4. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    4
    ARQUITECTURA DE STREAMING DE DATOS

    View Slide

  5. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    5
    ARQUITECTURA DE STREAMING DE DATOS

    View Slide

  6. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    6
    ZZZ... NO!

    View Slide

  7. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    7
    Platform-as-a-Service (PaaS)
    Plataforma para el desarrollo y ejecución de
    aplicaciones
    Publica o privada y multi lenguaje
    Es una distribución de Kubernetes con extras
    LA PLATAFORMA

    View Slide

  8. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    8
    ES

    View Slide

  9. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    9
    ¡Más Madera!
    Aprovisiona y gestiona las instancias donde
    ejecutaremos OpenShift y demás componentes
    CONTEXTO GENERAL
    Una plataforma exclusiva para la nube para el
    desarrollo y ejecución de aplicaciones
    CONTEXTO DEMO
    LA NUBE

    View Slide

  10. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    10
    Vert.x es una librería para crear aplicaciones reactivas
    Diseñada para la JVM, funciona a través de eventos y no
    bloquea
    RxJava se integra con Vert.x
    Una buena herramienta para transformar eventos y
    coordinarlos
    Ideal cuando hay multiples fuentes de eventos (apps
    modernas!)
    EL PEGAMENTO

    View Slide

  11. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    11
    DATA GRID

    View Slide

  12. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    12
    Cada nodo mantiene una porción de datos
    Algoritmos de hash consistente
    para decidir quien guarda cada elemento
    N copias de cada elemento
    CÓMO SE DISTRIBUYEN LOS DATOS?

    View Slide

  13. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    13
    ARQUITECTURA DE STREAMING DE DATOS

    View Slide

  14. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    14
    LOS DATOS
    http://transport.opendata.ch

    View Slide

  15. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    15
    ARQUITECTURA
    Data Grid
    Replication
    Delay Calculator
    Server Task
    Delay Calculator
    Server Task
    Delay Calculator
    Server Task
    Analytics
    Verticle
    Injector
    Verticle
    Analytics
    Jupyter
    Laptop
    HTTP
    Continuous Query
    Verticle
    Http App
    Verticle
    Data Grid
    Replication
    Sock JS Bridge
    Real Time Laptop
    Http
    Websockets
    JavaFX
    Injector
    Verticle

    View Slide

  16. DEMO

    View Slide

  17. INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)
    VERSATILIDAD DE INFINISPAN
    17
    Cache Distribuida Memoria Compartida Broker Eventos Analitica

    View Slide

  18. GRACIAS!
    25 noviembre 15:30-17:30 Streaming Data Workshop
    github.com/infinispan-demos/streaming-data-kubernetes
    infinispan.org
    redhat.com/en/technologies/jboss-middleware/data-grid

    View Slide