Популярні системи стримінгу
Концепції стримінгу
Mike Metzger
Data engineer
Інструменти стримінгу
- Різні інструменти залежно від потреб
- Дозволяє обрати найкращий інструмент для задачі
- Поширені системи:
- Celery
- Kafka
- Spark Streaming
Celery
- Розподілена черга завдань / FIFO
- Використовується переважно як черга робіт чи завдань
- Часто для асинхронних завдань
- Надсилання листів для скидання пароля
- Оброблення цифрових замовлень
- Зміна розміру зображень
- Дає оброблення в реальному часі великої кількості повідомлень
- Має функції для керування та масштабування (вертикально й горизонтально)
Apache Kafka
- Розподілена система стримінгу подій
- Створена для передавання подій між продюсерами та консьюмерами
- Продюсери створюють події в топіку
- Топіки — це по суті повідомлення заданого формату
- Консьюмери отримують нові події
- Різні консьюмери можуть обробляти події за потреби (логування, трансформації, ретрансляція тощо)
- Забезпечує зберігання подій за специфікацією
- Дуже потужна, але складна в налаштуванні

Застосування Kafka
- Найкраще для передавання даних між кількома системами
- Єдине джерело істини
- Захоплення змін у даних (CDC)
- Резервні копії даних
- Міграції дата-систем
Spark Streaming
- Частина Apache Spark
- Призначена для оброблення стримінгових даних
- Розширює можливості Spark для оброблення даних у Scala, Python, SQL тощо
- Корисна для великих обсягів даних і для машинного навчання
- Легко переходить від пакетної до потокової обробки
- Не для зберігання чи логування подій, а головно для оброблення або зміни даних
Давайте потренуємось!
Концепції стримінгу
Preparing Video For Download...