Это кто там твитит про #jbreak @gamussa

Ты кто такой? Давай… Solutions Architect Developer Advocate @gamussa in internetz Ну подпишись, плиз… @gamussa @ @confluentinc

Маркетинг и тщеславие ©

Дисклеймер 1. Это не введение в кафки 2.Это не введение stream processing 3.В это зале люди знакомы С кафкой @gamussa @ @confluentinc

@gamussa @ @confluentinc

@gamussa @ @confluentinc

Дисклеймер 1.Да, это маркетинг кафки 2.Да, это маркетинг stream processing @gamussa @ @confluentinc

Консьюмеры Продюсеры @gamussa @ @confluentinc

Что такое поточная обработка? @gamussa @ @confluentinc

Это когда пьешь прям из шланга

Аналогия с UNIX – системами Connect API Kafka Streams / KSQL Connect API $ cat < in.txt | grep “ksql” | tr a-z A-Z > out.txt Apache Kafka

KSQL это декларативный язык обработки поточных данных

KSQL это поточный SQL движок для Apache Kafka

для начала, Базовые концепции KSQL 15

Базовые абстракции БД - таблица Hadoop - файл Стримы -? @gamussa 16 @confluentinc

Бревно (eng. Log)

Стримы превращаются в Таблицы @gamussa 19 @confluentinc

Таблицы превращаются в стримы @gamussa 20 @confluentinc

Одно превращается в друое @gamussa 21 @confluentinc

Одно превращается в друое @gamussa 22 @confluentinc

СТРИМЫ «-» ТАБЛИЦЫ 24

26

Kafka Connect @gamussa 27 @confluentinc

Чувак, а код-то где? 28

Как запускать? #1 STAND-ALONE AKA ‘LOCAL MODE’ Kafka Cluster JVM KSQL CLI KSQL Server 29

Как запускать? #2 CLIENT-SERVER Kafka Cluster JVM JVM JVM KSQL Server KSQL Server KSQL Server KSQL CLI 30

Как запускать? #3 AS A STANDALONE APPLICATION Kafka Cluster JVM JVM JVM KSQL Server KSQL Server KSQL Server 31

Когда лучше не брать KSQL? Традиционный SQL с конечным результатом •Ограничение на хранение данных в Kafka •Нет индексов BI инструменты (Tableau и проч) •Нет индексов •Нет JDBC • BI инструменты не очень хорошо дружат с потоковыми результатами

Трейдоф Гибкость • • • • Consumer, Producer subscribe() poll() send() flush() Простота Kafka Streams • filter() • join() • aggregate() KSQL • Select…from… • Join…where… • Group by..

KSQL Kafka Streams Все знают SQL Кодить код не надо! Потоковая обработка для разработчиков SQL выражения Java или Scala код Стримы и таблицы KStream и KTable Да - KSQL кластер JVM Деплоим SQL запросы Деплоим Java как jar, war, контейнеры

А дальше что? https://github.com/confluentinc/cp-demo http://confluent.io/ksql https://slackpass.io/confluentcommunity #ksql

Приходите к нам работать! https://www.confluent.io/careers/ @gamussa @ @confluentinc

Всем спасибо! Вопросы? @gamussa viktor@confluent.io https://www.confluent.io/careers/ @gamussa @ @confluentinc