SlideShare a Scribd company logo
1 of 22
Clickhouse
для
бизнес
аналитики
О себе
10+ лет разработки
PHP, NodeJS, JAVA, LUA, и т.д.
Outsource, Product
На данный момент Head of
Development @Clickky
Clickhouse 2
Clickky
50Gb MYSQL
3.5Tb MongoDB (+3Gb/day)
~16k RPM == 20+KK requests/day
Backend: PHP + JAVA + LUA + nodeJS
~1.5KK lines of code
Clickhouse 3
Сложные запросы Проблемы в системе
ElasticSearch MonetDB Clickhouse
Проблемы Business Intelligence
Clickhouse 4
SQL
Линейная масштабируемость
Фокус на быстром выполнении запросов
Column-oriented
Основные идеи при создании ClickHouse
Clickhouse 6
Колоночные СУБД
Хранение
по столбцам
Чтение 3х
столбцов
Хранение
по строкам
Чтение всех столбцов
Clickhouse 5
Relative query processing time (lower is better):
Clickhouse 7
https://clickhouse.yandex/benchmark.html
Консольный клиент
HTTP
JDBC
Python, PHP, NodeJS
Go и Perl коннекторы
Интерфейсы
Clickhouse 8
Чтобы выйти из клиента, нажмите Ctrl+D (или Ctrl+C), или наберите
вместо запроса одно из: "exit", "quit", "logout", "учше",
"йгше", "дщпщге", "exit;", "quit;", "logout;", "учшеж",
"йгшеж", "дщпщгеж", "q", "й", "q", "Q", ":q", "й", "Й",
"Жй"
Консольный клиент:
Clickhouse 9
https://github.com/smi2/tabix.ui
GUI: Tabix
Clickhouse 9
Links:
Github:
https://github.com/smi2/tabix.ui
Online:
http://ui.tabix.io/
Можно построить свой Data Warehouse и копать данные с невероятной скоростью
Что делать:
Берем Hadoop или другую “не такую быструю” базу
Копируем все данные в ClickHouse
Что получаем:
Realtime аналитика бизнес-процессов
Довольные аналитики и менеджеры
Легко построить внутренние дашбордыметрики
Кейс: внутренняя база для аналитики
Clickhouse 10
Запросы
Clickhouse
SQL диалект
Приблизительные вычисления, URI
функции
Массивы, кортежи
Распределенные запросы из коробки
Внешние словари
11
Конфигурация внешних словарей находится в отдельном файле или файлах, указанных в конфигурационном параметре
dictionaries_config. Напримример - dictionaries/*.xml.
<dictionaries>
<comment>Не обязательный элемент с любым содержимым; полностью игнорируется.</comment>
<dictionary>
<name>os</name>
<source>
<mysql>
<!- - настройки подключения к серверу - логин, пароль, порт и ты ды- ->
</mysql>
<structure>
<!- - описание структуры таблицы - ->
</structure>
</source>
</dictionary>
</dictionaries>
Внешние словари
Clickhouse 10
ClickHouse: best practices
Clickhouse
Широкие таблицы, много колонок
QPS относительно небольшой, но много
данных используется в каждом запросе
Большой поток входящих данных
Аналитика по петабайтам данных
12
Clickhouse
Когда НЕ надо использовать
OLTP
Key-value
Document-oriented
Модифицирование данных
12
URL:
domainWithoutWWW()
topLevelDomain()
firstSignificantSubdomain()
path()
queryString()
extractURLParameter(URL, name)
cutWWW()
IP:
IPv4NumToString(num)
IPv4StringToNum(s)
IPv4NumToStringClassC(num)
IPv6NumToString(x)
IPv6StringToNum(s)
Clickhouse
Функции для URL и IP
14
regionToCity(id[, geobase])
regionToArea(id[, geobase])
regionToCountry(id[, geobase])
regionToContinent(id[, geobase])
regionIn(lhs, rhs[, geobase])
Clickhouse
Функции яндекс метрики
15
Статистика по referer:
SELECT splitByChar('?',referer)[1] as referrer, count() as count
FROM stat.table
WHERE toMonth(ds) = toMonth(yesterday())
AND toYear(ds) = toYear(yesterday())
GROUP BY referrer WITH TOTALS ORDER BY count DESC
FORMAT CSVWithNames;
Clickhouse
Примеры из “реальности”
16
Лиды из одной подсети:
SELECT
toDateTime(dc) as date_time, app_id,
IPv4NumToStringClassC(IPv4StringToNum(tr_ips)) as ip,
concat(concat(toString(app_id),','),IPv4NumToStringClassC(IPv4StringToNum(
tr_ips))) as uid,
FROM stat.leads
WHERE
concat(concat(toString(app_id),','),IPv4NumToStringClassC(IPv4StringToNum(tr_i
ps)))
IN (...)
Clickhouse
Примеры из “реальности”
17
Очень быстро!
Очень хорошая компрессия данных
Привычный SQL с кучей доп. возможностей
Нет транзакций, нет UPDATE / DELETE
Нет UNIQUE KEY, нет авто-приведения типов
Clickhouse
Подведем итоги:
17
★ Tutorial - https://clickhouse.yandex/tutorial.html
★ Вопросы - clickhouse-feedback@yandex-team.com
★ GitHub - https://github.com/yandex/ClickHouse
★ Документация - https://clickhouse.yandex/
Clickhouse
С чего начать?
17
Спасибо за внимание

More Related Content

What's hot

MongoDB первые впечатления
MongoDB первые впечатленияMongoDB первые впечатления
MongoDB первые впечатления
fudz1k
 
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Ontico
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Mikhail Tabunov
 
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
phpdevby
 
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
NoSQL внутри SQL: приземленные вопросы практического применения /  Дмитрий До...NoSQL внутри SQL: приземленные вопросы практического применения /  Дмитрий До...
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
Ontico
 
MongoDB в продакшен - миф или реальность?
MongoDB в продакшен - миф или реальность?MongoDB в продакшен - миф или реальность?
MongoDB в продакшен - миф или реальность?
Alexey Tokar
 
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Ontico
 
кри 2014 elastic search рациональный подход к созданию собственной системы а...
кри 2014 elastic search  рациональный подход к созданию собственной системы а...кри 2014 elastic search  рациональный подход к созданию собственной системы а...
кри 2014 elastic search рациональный подход к созданию собственной системы а...
Vyacheslav Nikulin
 
Aлександр Зайцев, LifeStreet
Aлександр Зайцев, LifeStreetAлександр Зайцев, LifeStreet
Aлександр Зайцев, LifeStreet
Ontico
 
Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)
Andrew Avdeev
 

What's hot (20)

MongoDB первые впечатления
MongoDB первые впечатленияMongoDB первые впечатления
MongoDB первые впечатления
 
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
 
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...MongoDB. Области применения, преимущества и узкие места, тонкости использован...
MongoDB. Области применения, преимущества и узкие места, тонкости использован...
 
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
NoSQL внутри SQL: приземленные вопросы практического применения /  Дмитрий До...NoSQL внутри SQL: приземленные вопросы практического применения /  Дмитрий До...
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
 
Кратко о MongoDB
Кратко о MongoDBКратко о MongoDB
Кратко о MongoDB
 
MongoDB в продакшен - миф или реальность?
MongoDB в продакшен - миф или реальность?MongoDB в продакшен - миф или реальность?
MongoDB в продакшен - миф или реальность?
 
MongoDB. Как готовить, с чем едят?
MongoDB. Как готовить, с чем едят?MongoDB. Как готовить, с чем едят?
MongoDB. Как готовить, с чем едят?
 
MongoDB basics in Russian
MongoDB basics in RussianMongoDB basics in Russian
MongoDB basics in Russian
 
No sql.mongodb scaling
No sql.mongodb scalingNo sql.mongodb scaling
No sql.mongodb scaling
 
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
 
Поиск наизнанку
Поиск наизнанкуПоиск наизнанку
Поиск наизнанку
 
кри 2014 elastic search рациональный подход к созданию собственной системы а...
кри 2014 elastic search  рациональный подход к созданию собственной системы а...кри 2014 elastic search  рациональный подход к созданию собственной системы а...
кри 2014 elastic search рациональный подход к созданию собственной системы а...
 
SphinxSearch Meetup - Tips&tricks
SphinxSearch Meetup - Tips&tricksSphinxSearch Meetup - Tips&tricks
SphinxSearch Meetup - Tips&tricks
 
Диагностика postgresql для системного администратора
Диагностика postgresql для системного администратораДиагностика postgresql для системного администратора
Диагностика postgresql для системного администратора
 
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
Бигдата — как добывать золото из данных / Александр Сербул (1С-Битрикс)
 
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
 
Aлександр Зайцев, LifeStreet
Aлександр Зайцев, LifeStreetAлександр Зайцев, LifeStreet
Aлександр Зайцев, LifeStreet
 
Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)
 
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...PostgreSQL: практические примеры оптимизации SQL-запросов /  Иван Фролков (Po...
PostgreSQL: практические примеры оптимизации SQL-запросов / Иван Фролков (Po...
 

Similar to ClickHouse как решение для бизнес аналитики. Дмитрий Кузьмин

Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Badoo Development
 
Не все базы данных одинаково полезны
Не все базы данных одинаково полезныНе все базы данных одинаково полезны
Не все базы данных одинаково полезны
Sergey Xek
 
Не все базы данных одинаково полезны
Не все базы данных одинаково полезныНе все базы данных одинаково полезны
Не все базы данных одинаково полезны
Sergey Xek
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"
Ontico
 
2013 09 17 архитектура веб-приложений
2013 09 17 архитектура веб-приложений2013 09 17 архитектура веб-приложений
2013 09 17 архитектура веб-приложений
Yandex
 
IOP202 DevCon 2012 Apache Lucene in Windows Azure
IOP202 DevCon 2012 Apache Lucene in Windows AzureIOP202 DevCon 2012 Apache Lucene in Windows Azure
IOP202 DevCon 2012 Apache Lucene in Windows Azure
Vadim Novitskiy
 
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Dmitry Degtyarev
 
MySQL для высоконагруженных проектов
MySQL для высоконагруженных проектовMySQL для высоконагруженных проектов
MySQL для высоконагруженных проектов
Softline
 

Similar to ClickHouse как решение для бизнес аналитики. Дмитрий Кузьмин (20)

Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
 
Выступление Сергея Аверина, Badoo, на High Performance Conference
Выступление Сергея Аверина, Badoo, на High Performance ConferenceВыступление Сергея Аверина, Badoo, на High Performance Conference
Выступление Сергея Аверина, Badoo, на High Performance Conference
 
Не все базы данных одинаково полезны
Не все базы данных одинаково полезныНе все базы данных одинаково полезны
Не все базы данных одинаково полезны
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
 
Не все базы данных одинаково полезны
Не все базы данных одинаково полезныНе все базы данных одинаково полезны
Не все базы данных одинаково полезны
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендеринг
 
Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"Дмитрий Дегтярев, "Хабикаса"
Дмитрий Дегтярев, "Хабикаса"
 
So Your WAF Needs a Parser
So Your WAF Needs a ParserSo Your WAF Needs a Parser
So Your WAF Needs a Parser
 
2013 09 17 архитектура веб-приложений
2013 09 17 архитектура веб-приложений2013 09 17 архитектура веб-приложений
2013 09 17 архитектура веб-приложений
 
ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET» O...
ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET»  O...ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET»  O...
ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET» O...
 
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
 
IOP202 DevCon 2012 Apache Lucene in Windows Azure
IOP202 DevCon 2012 Apache Lucene in Windows AzureIOP202 DevCon 2012 Apache Lucene in Windows Azure
IOP202 DevCon 2012 Apache Lucene in Windows Azure
 
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
Длинная транзакция или когда размер имеет значение / Михаил Балаян (Odin — In...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
Migrating from PHP/MySQL to Redis/Lua, my talk on High load++ (Russian)
 
MySQL для высоконагруженных проектов
MySQL для высоконагруженных проектовMySQL для высоконагруженных проектов
MySQL для высоконагруженных проектов
 
Fors и big data appliance
Fors и big data applianceFors и big data appliance
Fors и big data appliance
 
Лекция Android. БД SQLite, ContentProvider, Loader
Лекция Android. БД SQLite, ContentProvider, LoaderЛекция Android. БД SQLite, ContentProvider, Loader
Лекция Android. БД SQLite, ContentProvider, Loader
 
Презентация аналитической системы для ритейла СуперМаг BI
Презентация аналитической системы для ритейла СуперМаг BIПрезентация аналитической системы для ритейла СуперМаг BI
Презентация аналитической системы для ритейла СуперМаг BI
 

More from HOWWEDOIT

Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
HOWWEDOIT
 
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
HOWWEDOIT
 

More from HOWWEDOIT (15)

Прогнозирование на SQL с помощью GBQ ML
Прогнозирование на SQL с помощью GBQ MLПрогнозирование на SQL с помощью GBQ ML
Прогнозирование на SQL с помощью GBQ ML
 
GCP для работы с большими данными
GCP для работы с большими даннымиGCP для работы с большими данными
GCP для работы с большими данными
 
Как боты помогают Monobank обслуживать более 800 тысяч клиентов
Как боты помогают Monobank обслуживать более 800 тысяч клиентовКак боты помогают Monobank обслуживать более 800 тысяч клиентов
Как боты помогают Monobank обслуживать более 800 тысяч клиентов
 
Difficulties of implementing AI Features to an established product company
Difficulties of implementing AI Features to an established product companyDifficulties of implementing AI Features to an established product company
Difficulties of implementing AI Features to an established product company
 
"Оптимальные цены", или как повысить розничные продажи с помощью машинного об...
"Оптимальные цены", или как повысить розничные продажи с помощью машинного об..."Оптимальные цены", или как повысить розничные продажи с помощью машинного об...
"Оптимальные цены", или как повысить розничные продажи с помощью машинного об...
 
Построение ROPO отчетов. Или как оценить вклад он-лайн рекламы в офф-лайн про...
Построение ROPO отчетов. Или как оценить вклад он-лайн рекламы в офф-лайн про...Построение ROPO отчетов. Или как оценить вклад он-лайн рекламы в офф-лайн про...
Построение ROPO отчетов. Или как оценить вклад он-лайн рекламы в офф-лайн про...
 
Лайфхаки построения мощной продуктовой sales-команды. Катерина Мартынова, Pre...
Лайфхаки построения мощной продуктовой sales-команды. Катерина Мартынова, Pre...Лайфхаки построения мощной продуктовой sales-команды. Катерина Мартынова, Pre...
Лайфхаки построения мощной продуктовой sales-команды. Катерина Мартынова, Pre...
 
Кастомные решения, best practices для управления и увеличения продаж. Олег Бе...
Кастомные решения, best practices для управления и увеличения продаж. Олег Бе...Кастомные решения, best practices для управления и увеличения продаж. Олег Бе...
Кастомные решения, best practices для управления и увеличения продаж. Олег Бе...
 
Продвинутые методики продуктовых отделов продаж с практическими примерами. Ан...
Продвинутые методики продуктовых отделов продаж с практическими примерами. Ан...Продвинутые методики продуктовых отделов продаж с практическими примерами. Ан...
Продвинутые методики продуктовых отделов продаж с практическими примерами. Ан...
 
Багаті спадкоємці, або як робити рефакторинг у продукті з бурхливою історією....
Багаті спадкоємці, або як робити рефакторинг у продукті з бурхливою історією....Багаті спадкоємці, або як робити рефакторинг у продукті з бурхливою історією....
Багаті спадкоємці, або як робити рефакторинг у продукті з бурхливою історією....
 
Подход и инструменты измерения эффективности процесса разработки или как держ...
Подход и инструменты измерения эффективности процесса разработки или как держ...Подход и инструменты измерения эффективности процесса разработки или как держ...
Подход и инструменты измерения эффективности процесса разработки или как держ...
 
Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
Что база транзакций может рассказать о здоровье вашего бизнеса. Павел Левчук
 
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
Построение и переход на новую аналитическую платформу. Цели, вызовы, решения....
 
метрики ценообразования как интернет магазины используют цены конкурентов.але...
метрики ценообразования как интернет магазины используют цены конкурентов.але...метрики ценообразования как интернет магазины используют цены конкурентов.але...
метрики ценообразования как интернет магазины используют цены конкурентов.але...
 
Визуализируй меня полностью. Павел Лоба.
Визуализируй меня полностью. Павел Лоба.Визуализируй меня полностью. Павел Лоба.
Визуализируй меня полностью. Павел Лоба.
 

ClickHouse как решение для бизнес аналитики. Дмитрий Кузьмин