Slide 1

Slide 1 text

Bruno Tinoco - Agosto 2020 Streaming com Apache Kafka Type here if add info needed for every slide

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

3 26/09/2020 Type here if add info needed for every slide

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

5 Apache Kafka Type here if add info needed for every slide Open Source distributed event streaming plataform

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

13 ksqlDB... Type here if add info needed for every slide ksqldb.io

Slide 14

Slide 14 text

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...

Slide 15

Slide 15 text

15 Kafka Streams Type here if add info needed for every slide Anatomia de uma aplicação...

Slide 16

Slide 16 text

16 Demo Type here if add info needed for every slide C> || # https://github.com/brunocrt/esbank