Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Построение системы realtime-аналитики на ClickH...
Search
Big Data & AI Conference 2020
September 17, 2020
Technology
0
160
Построение системы realtime-аналитики на ClickHouse
Егор Матешук, CDO, Qvant.ru
Big Data & AI Conference 2020
September 17, 2020
Tweet
Share
More Decks by Big Data & AI Conference 2020
See All by Big Data & AI Conference 2020
Как искусственный интеллект помогает снизить вредные выбросы в атмосферу на металлургическом производстве.
aiconforg
0
96
Как сломать рекламную индустрию: повышаем эффективность рекламы с помощью Emotion Recognition
aiconforg
0
58
Цифровой помощник для маневрового диспетчера
aiconforg
0
270
Прогресс ученика: Как анализ больших данных помогает быстрее и дешевле достичь образовательных целей
aiconforg
0
110
Рекомендательная система для увеличения кросс-продаж: опыт инвестиционной компании
aiconforg
0
37
Дополненная аналитика: практический подход к автоматизации внутренней аналитики
aiconforg
1
51
Что делать, если данных мало?
aiconforg
0
65
Как оценить эмоциональную реакцию на рекламу дистанционно, быстро и точно.
aiconforg
0
73
Учет новых слов в языковых моделях классификации
aiconforg
0
44
Other Decks in Technology
See All in Technology
「実体」で築く共通認識: 開発現場のコミュニケーション最適化 / Let's Get on the Same Page with Concrete Artifacts: Optimization of Communication in dev teams
kazizi55
0
150
菸酒生在 LINE Taiwan 的後端雙刀流
line_developers_tw
PRO
0
250
IIWレポートからみるID業界で話題のMCP
fujie
0
540
ユーザーのプロフィールデータを活用した推薦精度向上の取り組み
yudai00
0
430
マルチテナント+マルチプロダクト SaaS への AI Agent の組み込み方
kworkdev
PRO
2
370
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.9k
AWS と定理証明 〜ポリシー言語 Cedar 開発の舞台裏〜 #fp_matsuri / FP Matsuri 2025
ytaka23
9
2.5k
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
110
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
210
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
7.5k
工具人的一生: 開發很多 AI 工具讓我 慵懶過一生
line_developers_tw
PRO
0
260
「伝える」を加速させるCursor術
naomix
0
640
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Thoughts on Productivity
jonyablonski
69
4.7k
Into the Great Unknown - MozCon
thekraken
39
1.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Rails Girls Zürich Keynote
gr2m
94
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
660
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Transcript
Real-time аналитика для DSP Как мы выбирали архитектуру для real-time
аналитики Егор Матешук
О чем сегодня поговорим • Какие есть подходы к построению
real-time аналитики? • Какие у них плюсы и минусы? • Почему мы выбрали ClickHouse? 2
3 Для начала: какой аналитикой мы занимаемся?
Первая версия архитектуры Требования к первой версии аналитики для DSP
• Использовать адаптированные технологии • Поддерживать гео-распределенность • Поставлять данные с задержкой до 15 минут 4
5 Первая версия архитектуры DSP UI
С какими проблемами столкнулись? • Сложности мониторинга • Сложность сверки
• Проблемы с ускорением доставки 6
7 Новые требования На основе этого опыта были сформированы новые
требования: • Уменьшить “зоопарк” • Дать доступ разработчикам к данным • Ускорить доставку
Какие есть схемы для real-time аналитики? • Lambda • Kappa
8
9 Serving Backend Serving Layer Queries Lambda Batch Layer Streaming
Layer Data storage Raw data Results Batch Engine Real-time Engine
Lambda • Batch Layer - надежная пакетная обработка • Streaming
Layer - быстрая потоковая обработка • Serving Layer - абстракция для агрегатов из двух предыдущих слоев 10
11 Stream Storage Stream Processing Serving Layer Batch Processing Batch
Storage
12 Stream Storage Stream Processing Serving Layer Batch Processing Batch
Storage
13 Stream Storage Stream Processing Serving Layer Batch Processing Batch
Storage
14 Serving Backend Serving Layer Queries Lambda Batch Layer Streaming
Layer Data storage Raw data Results Batch Engine Real-time Engine
15 Lambda Data storage Raw data Results Queries
16 Lambda Плюсы + Скорость стрима + Надежность батча +
Простой репроцессинг Минусы - Дублирование логики - Дублирование сервисов
17 Kappa Serving Backend Serving Layer Queries Data storage Raw
data Results Streaming Layer Real-time Engine
Kappa • Streaming Layer - потоковая обработка • Serving Layer
- хранилище агрегатов 18
19 Kappa Serving Backend Serving Layer Queries Data storage Raw
data Results Streaming Layer Real-time Engine
20 Kappa Queries Data storage Raw data Results
21 Lambda Плюсы + Скорость стрима + Без дублирования кода
Минусы - Ограничения реализации - Сложный репроцессинг
И тут появляется ClickHouse • Интеграция с Kafka • Хранение
больших объемов данных • Materialized view • Быстрые агрегаты • Передача готовых данных “на фронт” 22
23 Роль Materialized View Raw data Aggregate Σ
Роль Materialized View • Быстрая доставка новых данных • Избавление
от периодических джоб 24
25 Serving Backend Serving Layer Queries Lambda Batch Layer Streaming
Layer Data storage Raw data Results Batch Engine Real-time Engine
26 Queries Lambda Data storage Raw data Results SQL Mat
View
27 Первая версия архитектуры DSP UI
28 Вторая версия архитектуры DSP UI
Что нужно учитывать • Mat View проигрывает по функционалу Flink
• Заливку из кафки удобнее делать отдельными инструментами • “Грабли” в поддержке базы 29
Результаты • Уменьшение “зоопарка” технологий • Сокращение времени доставки данных
• Упрощение разработки 30
Выводы ClickHouse позволяет • Решать задачу аналитики в реальном времени
• Упростить разработку аналитического решения 31
Буду рад вопросам и конструктивной критике :) Это всё Егор
Матешук
[email protected]
https://t.me/Egorios