Oagapov (обсуждение | вклад) |
Oagapov (обсуждение | вклад) Нет описания правки |
||
| Строка 18: | Строка 18: | ||
==== Порядок перехода ==== | ==== Порядок перехода ==== | ||
===== | ===== 1. Разверните Kafka и Clickhouse ===== | ||
Поднять Kafka и Clickhouse доступные друг другу | Поднять Kafka и Clickhouse доступные друг другу | ||
===== | ===== 2. Создайте хранилища в Платформе ===== | ||
[[Файл:Подключение Kafka.png|альт=Подключение Kafka|мини|Подключение Kafka]] | |||
Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''kafka''. В качестве имени экземпляра укажите ''model_ch''. | Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''kafka''. В качестве имени экземпляра укажите ''model_ch''. | ||
[[Файл:Подключение Clickhouse.png|альт=Подключение Clickhouse|мини|Подключение Clickhouse]] | |||
Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''clickhouse''. В качестве имени экземпляра также укажите ''model_ch.'' | Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа ''clickhouse''. В качестве имени экземпляра также укажите ''model_ch.'' | ||
В качестве параметров укажите валидную JSON структуру подключения для Kafka и Clickhouse соответственно. Подробное описание | В качестве параметров укажите валидную JSON структуру подключения для Kafka и Clickhouse соответственно. Подробное описание подключения к хранилищам по [https://vendor.era-platform.ru/docs/era/latest/entities/domain/storage.html ссылке]. | ||
===== 3. Подключите продуктовый слой (домен) к созданному хранилищу ===== | |||
Переустановите или обновите продуктовый слой рабочего домена. | |||
С этого момента все исторические данные (классы) будут храниться в СУБД Clickhouse и соответствующие отчеты и дашборды будут строить статистику на основе данных из СУБД Clickhouse. | |||
Версия от 19:29, 1 апреля 2025
Краткое описание архитектуры подключения Платформы Эра к Kafka и СУБД Clickhouse
Связка Kafka и ClickHouse широко используется для хранения и обработки больших объёмов статистики, особенно в системах, где данные поступают непрерывно и в реальном времени. Kafka в этом тандеме выполняет роль промежуточного буфера: она собирает события из платформы Эра и надёжно сохраняет их в очередях — топиках. Kafka обеспечивает масштабируемость, высокую отказоустойчивость и гарантированную доставку данных, даже если аналитическая система временно недоступна.
ClickHouse, в свою очередь, используется как высокопроизводительная аналитическая база данных, идеально подходящая для хранения больших массивов информации и молниеносного выполнения SQL-запросов. Благодаря колонковой архитектуре и эффективной компрессии, ClickHouse позволяет выполнять сложную аналитику на миллиардах строк практически мгновенно. В сочетании с Kafka получается гибкая, надёжная и масштабируемая архитектура: данные поступают в реальном времени, хранятся с минимальными затратами и мгновенно доступны для анализа, визуализации и построения отчётов.
Настройка хранения исторических данных в СУБД Clickhouse настраивается для каждого рабочего (продуктового) домена платформы.
Показания для перехода на Kafka и Clickhouse
- Использование более 10 млн строк в архивных таблицах (классы Archive*);
- Наличие значимых таймаутов при построении отчетов (более 30 секунд);
- Причём коробочный предельный таймаут построения отчетов 60 секунд;
Ожидаемый эффект - таймаут не более 1 секунды. Время построения отчетов не зависит от количества строк в архивных классах (таблицах).
СУБД Clickhouse используется только для хранения архивных таблица статистики. Для хранения остальных классов (таблиц) продолжает использоваться СУБД PostgreSQL.
Порядок перехода
1. Разверните Kafka и Clickhouse
Поднять Kafka и Clickhouse доступные друг другу
2. Создайте хранилища в Платформе

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

Для рабочего домена в приложении Настройки, меню Хранилища (storages) добавьте хранилище типа clickhouse. В качестве имени экземпляра также укажите model_ch.
В качестве параметров укажите валидную JSON структуру подключения для Kafka и Clickhouse соответственно. Подробное описание подключения к хранилищам по ссылке.
3. Подключите продуктовый слой (домен) к созданному хранилищу
Переустановите или обновите продуктовый слой рабочего домена.
С этого момента все исторические данные (классы) будут храниться в СУБД Clickhouse и соответствующие отчеты и дашборды будут строить статистику на основе данных из СУБД Clickhouse.