Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Подключение Kafka и Clickhouse: различия между версиями

Материал из Платформа Эра. Документации
Нет описания правки
Строка 3: Строка 3:


ClickHouse, в свою очередь, используется как высокопроизводительная аналитическая база данных, идеально подходящая для хранения больших массивов информации и молниеносного выполнения SQL-запросов. Благодаря колонковой архитектуре и эффективной компрессии, ClickHouse позволяет выполнять сложную аналитику на миллиардах строк практически мгновенно. В сочетании с Kafka получается гибкая, надёжная и масштабируемая архитектура: данные поступают в реальном времени, хранятся с минимальными затратами и мгновенно доступны для анализа, визуализации и построения отчётов.
ClickHouse, в свою очередь, используется как высокопроизводительная аналитическая база данных, идеально подходящая для хранения больших массивов информации и молниеносного выполнения SQL-запросов. Благодаря колонковой архитектуре и эффективной компрессии, ClickHouse позволяет выполнять сложную аналитику на миллиардах строк практически мгновенно. В сочетании с Kafka получается гибкая, надёжная и масштабируемая архитектура: данные поступают в реальном времени, хранятся с минимальными затратами и мгновенно доступны для анализа, визуализации и построения отчётов.
Настройка хранения исторических данных в СУБД Clickhouse настраивается для каждого рабочего (продуктового) домена платформы.


'''🔗 Apache Kafka'''  
'''🔗 Apache Kafka'''  
Строка 39: Строка 37:
===== 2. Создайте хранилища в Платформе =====
===== 2. Создайте хранилища в Платформе =====
[[Файл:Подключение Kafka.png|альт=Подключение Kafka|мини|Подключение Kafka]]
[[Файл:Подключение Kafka.png|альт=Подключение Kafka|мини|Подключение Kafka]]
Обратите внимание, что настройка хранения исторических данных в СУБД Clickhouse настраивается для каждого рабочего (продуктового) домена платформы.
Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''kafka''. В качестве имени экземпляра укажите ''model_ch''.  
Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''kafka''. В качестве имени экземпляра укажите ''model_ch''.  
[[Файл:Подключение Clickhouse.png|альт=Подключение Clickhouse|мини|Подключение Clickhouse]]
[[Файл:Подключение Clickhouse.png|альт=Подключение Clickhouse|мини|Подключение Clickhouse]]

Версия от 19:33, 1 апреля 2025

Краткое описание архитектуры Kafka и СУБД Clickhouse

Связка Kafka и ClickHouse широко используется для хранения и обработки больших объёмов статистики, особенно в системах, где данные поступают непрерывно и в реальном времени. Kafka в этом тандеме выполняет роль промежуточного буфера: она собирает события из платформы Эра и надёжно сохраняет их в очередях — топиках. Kafka обеспечивает масштабируемость, высокую отказоустойчивость и гарантированную доставку данных, даже если аналитическая система временно недоступна.

ClickHouse, в свою очередь, используется как высокопроизводительная аналитическая база данных, идеально подходящая для хранения больших массивов информации и молниеносного выполнения SQL-запросов. Благодаря колонковой архитектуре и эффективной компрессии, ClickHouse позволяет выполнять сложную аналитику на миллиардах строк практически мгновенно. В сочетании с Kafka получается гибкая, надёжная и масштабируемая архитектура: данные поступают в реальном времени, хранятся с минимальными затратами и мгновенно доступны для анализа, визуализации и построения отчётов.

🔗 Apache Kafka

📌 Официальный сайт: https://kafka.apache.org

📚 Документация: https://kafka.apache.org/documentation/

💻 Репозиторий на GitHub: https://github.com/apache/kafka

🔗 ClickHouse

📌 Официальный сайт: https://clickhouse.com

📚 Документация: https://clickhouse.com/docs/en/

💻 Репозиторий на GitHub: https://github.com/ClickHouse/ClickHouse

Показания для перехода на Kafka и Clickhouse

  • Использование более 10 млн строк в архивных таблицах (классы Archive*);
  • Наличие значимых таймаутов при построении отчетов (более 30 секунд);
  • Причём коробочный предельный таймаут построения отчетов 60 секунд;

Ожидаемый эффект - таймаут не более 1 секунды. Время построения отчетов не зависит от количества строк в архивных классах (таблицах).

СУБД Clickhouse используется только для хранения архивных таблица статистики. Для хранения остальных классов (таблиц) продолжает использоваться СУБД PostgreSQL.

Порядок перехода

1. Разверните Kafka и Clickhouse

Поднять Kafka и Clickhouse доступные друг другу

2. Создайте хранилища в Платформе
Подключение Kafka
Подключение Kafka

Обратите внимание, что настройка хранения исторических данных в СУБД Clickhouse настраивается для каждого рабочего (продуктового) домена платформы.

Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа kafka. В качестве имени экземпляра укажите model_ch.

Подключение Clickhouse
Подключение Clickhouse

Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа clickhouse. В качестве имени экземпляра также укажите model_ch.

В качестве параметров укажите валидную JSON структуру подключения для Kafka и Clickhouse соответственно. Подробное описание подключения к хранилищам по ссылке.

3. Подключите продуктовый слой (домен) к созданному хранилищу

Переустановите или обновите продуктовый слой рабочего домена.

С этого момента все исторические данные (классы) будут храниться в СУБД Clickhouse и соответствующие отчеты и дашборды будут строить статистику на основе данных из СУБД Clickhouse.