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

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

Материал из Платформа Эра. Документации
Нет описания правки
Нет описания правки
Строка 20: Строка 20:
💻 Репозиторий на GitHub: https://github.com/ClickHouse/ClickHouse
💻 Репозиторий на GitHub: https://github.com/ClickHouse/ClickHouse


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


* Использование более 10 млн строк в архивных таблицах (классы Archive*);
* Использование более 10 млн строк в архивных таблицах (классы Archive*);
Строка 30: Строка 30:
СУБД Clickhouse используется только для хранения архивных таблица статистики. Для хранения остальных классов (таблиц) продолжает использоваться СУБД PostgreSQL.  
СУБД Clickhouse используется только для хранения архивных таблица статистики. Для хранения остальных классов (таблиц) продолжает использоваться СУБД PostgreSQL.  


==== Порядок перехода ====
==== Порядок подключения ====


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

Версия от 19:55, 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.