workshop kafka streams
Date: 18 May, 9:00 – 13:30
Trainers: Felix Crisan, Valentina Crisan
Location: Adobe Romania , Anchor Plaza, Bulevardul Timișoara 26Z, București 061331
Number of places: 20 no more places left
Streams processing is one of the most active topics in big data architecture discussions nowadays, with many open and proprietary solutions available on the market ( Apache Spark Streaming, Apache Storm, Apache Flink, Google DataFlow..). But starting with release 0.11.0.0 Apache Kafka as well introduced the capability to process the streams of data that flow through Kafka – thus understanding what you can do with Kafka Streams and how is different from other solutions in the market it’s key in knowing what to choose for your particular use case.
This workshop aims to cover the most important parts of Kafka streams: the concepts (streams, tables, handling state, interactive queries, .. ), the practicality (what can you do with it and what is the difference between the API and the KSQL server) and to explain what means building an application that uses Kafka Streams. We will be focusing on the stream processing part of Kafka, assuming that participants are already familiar with the basic concepts of Apache Kafka – the distributed messaging bus.
Description:
The workshop will be split in two parts: understanding the concepts of Kafka Streams and what can you get functional wise with Kafka Streams ( we will use KSQL for the exercises) and a second part that will focus on the details required to understand when building a streaming application. Both parts will contain some theory and some hands on exercises.
Agenda:
– Kafka Streams concepts: streams & tables ( KStreams, KTables, Global KTables), persistent/non persistent queries, state-full operations and how state is handled, …
– how to work with Kafka Streams: Streams DSL and KSQL Server
– hands on exercises with KSQL to understand the functional capabilities
– create a stream based on a CSV, JSON or AVRO topic
– stream operations: Create as select, filter, tumbling windows, joins
– create table from a stream aggregations
– create table based on an existing topic
– join tables with streams
– what you need to know when building an application with Streams DSL ( Java)
– word count application debunked (hands on) – how to implement word count using Streams DSLFor the word count application, we will use Java, thus if you would like to also test the code and learn the details – please bring your own Java environment (Java 8, Maven 3, Eclipse or IntelliJ IDEA).