Slide 1

Slide 1 text

Francesco Tisiot - Developer Advocate @ftisiot Get to Know Apache Kafka with Jupyter Notebooks

Slide 2

Slide 2 text

@ftisiot | @aiven_io Why Jupyter Notebooks

Slide 3

Slide 3 text

@ftisiot | @aiven_io Title Text Markdown Text Images Executable Code

Slide 4

Slide 4 text

@ftisiot | @aiven_io Title Text https:/ /aiven.io/blog/teach-yourself-apache-kafka-and-python-with-a-jupyter-notebook

Slide 5

Slide 5 text

@ftisiot | @aiven_io Why Apache Kafka

Slide 6

Slide 6 text

@ftisiot | @aiven_io

Slide 7

Slide 7 text

@ftisiot | @aiven_io

Slide 8

Slide 8 text

@ftisiot | @aiven_io Event-Driven Applications

Slide 9

Slide 9 text

@ftisiot | @aiven_io What is an Event

Slide 10

Slide 10 text

@ftisiot | @aiven_io Why Event Driven?

Slide 11

Slide 11 text

@ftisiot | @aiven_io What is Kafka Topic A Topic B 0 1 2 3 4 0 1 2 3

Slide 12

Slide 12 text

@ftisiot | @aiven_io Distributed Brokers Replication Factor 3 2

Slide 13

Slide 13 text

@ftisiot | @aiven_io What’s a Kafka Event? <"temp_max", 35.3> <{ shop: "Mario's Pizza", phone_line: 3 } { orderId: 123456 name: "Andrea Pirlo", pizzas: [ { pizza: "Margherita", additionalToppings: ["Tuna","Onions","Ham"] }, ... ] } , >

Slide 14

Slide 14 text

@ftisiot | @aiven_io Write to Kafka Producer Topic A Hostname + Port Authentication Encoding

Slide 15

Slide 15 text

@ftisiot | @aiven_io Read from Kafka Hostname + Port Authentication Decoding Topic Name(s) Consumer Offset 0 1 2 3

Slide 16

Slide 16 text

@ftisiot | @aiven_io Pizza Demo!

Slide 17

Slide 17 text

@ftisiot | @aiven_io Log Size

Slide 18

Slide 18 text

@ftisiot | @aiven_io Topic Partitions

Slide 19

Slide 19 text

@ftisiot | @aiven_io

Slide 20

Slide 20 text

@ftisiot | @aiven_io Selecting the Partition Same Key Same Partition

Slide 21

Slide 21 text

@ftisiot | @aiven_io Topic Partitions 2 1 3 2 1 3 Partition 0 Partition 1 Guaranteed per Partition

Slide 22

Slide 22 text

@ftisiot | @aiven_io Scaling Out P1 P2 P3 C1 C2

Slide 23

Slide 23 text

@ftisiot | @aiven_io Partitions Demo!

Slide 24

Slide 24 text

@ftisiot | @aiven_io Multiple Applications C1 C2 Consumer Group 1 CX Consumer Group 2

Slide 25

Slide 25 text

@ftisiot | @aiven_io Kafka Connect Kafka Connect Kafka Connect

Slide 26

Slide 26 text

@ftisiot | @aiven_io References https:/ /github.com/aiven/kafka-python-fake-data-producer https:/ /aiven.io @ftisiot https:/ /github.com/aiven/kafka-python-notebooks

Slide 27

Slide 27 text

@ftisiot | @aiven_io Title Text