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

Streaming com Apache Kafka

Bruno Tinoco
September 26, 2020

Streaming com Apache Kafka

This was a presentation in portguese language used at the RanchoDev 2020 developers conference where I talked about building streaming applications with Apache Kafka, including a sample application architecture available on github
https://github.com/brunocrt/esbank

Bruno Tinoco

September 26, 2020
Tweet

More Decks by Bruno Tinoco

Other Decks in Programming

Transcript

  1. Bruno Tinoco - Agosto 2020 Streaming com Apache Kafka Type

    here if add info needed for every slide
  2. 2 Agenda 1. Streams 2. Kafka Streams 3. Demo Hands-on

    4. Outros detalhes Type here if add info needed for every slide
  3. 4 Streams... Type here if add info needed for every

    slide Video, Audio, Texto... Provedor Consumidor Fluxo contínuo Fluxo contínuo de dados disponíveis por um determinado período tempo
  4. 5 Apache Kafka Type here if add info needed for

    every slide Open Source distributed event streaming plataform
  5. 6 Kafka vs Outros... Type here if add info needed

    for every slide Aplicações assíncronas mais do que uma versão mais rápida de jobs analíticos
  6. 7 Resolve... Type here if add info needed for every

    slide  Processamento de eventos com latência de milissegundos  Processamento com estado, incluindo joins e agregações distribuídas  Janelas com dados fora de ordem  Processamento distribuído tolerante a falhas  Recursos de reprocessamento para que você possa recalcular a saída quando seu código mudar
  7. 8 Aplicações Type here if add info needed for every

    slide  Centro Nervoso de Eventos (Event Bus) entre sistemas  BI em tempo real  Publicação de conteúdo para várias aplicações  Predição apartir de eventos  Sistema de alertas em tempo real  Hub de comunicações entre serviços  Analytics pipeline
  8. 9 Kafka Streams Type here if add info needed for

    every slide Kafka Streams é uma biblioteca para construir aplicações de Streaming Kafka Topic #2 REST Call Update Database ? Kafka Streams App Kafka Topic #1
  9. 10 Kafka Streams Type here if add info needed for

    every slide Sequência, linha do tempo, pipeline e estado... presente Stream passado futuro eventos
  10. 11 KStream Kafka Streams Type here if add info needed

    for every slide KStream e KTable são abstrações chaves... User1 100 User2 300 User3 500 User1 110 User2 320 chave valor KTable User1 110 User2 320 User3 500
  11. 12 Kafka Streams Type here if add info needed for

    every slide Construindo a Topologia do Processamento... Source Topics Filter Transformations Sink Topic Join
  12. 14 Kafka Clients... Type here if add info needed for

    every slide  C/C++  Python  Go (AKA golang)  Erlang  .NET  Clojure  Ruby  Node.js*  Proxy (HTTP REST, etc)  Perl  stdin/stdout  PHP  Rust  Storm  Scala DSL  Clojure  Swift Preferência para Java ou Scala, mas...
  13. 15 Kafka Streams Type here if add info needed for

    every slide Anatomia de uma aplicação...
  14. 16 Demo Type here if add info needed for every

    slide C> || # https://github.com/brunocrt/esbank