Перейти к основному содержанию
Перейти к основному содержанию

Архитектура

Архитектура ClickStack построена вокруг трех ключевых компонентов: ClickHouse, HyperDX и коллектора OpenTelemetry (OTel). Экземпляр MongoDB используется для хранения состояния приложения. Вместе они формируют высокопроизводительный стек наблюдаемости с открытым исходным кодом, оптимизированный для работы с логами, метриками и трейсами.

Обзор архитектуры

Архитектура

ClickHouse: движок базы данных

В основе ClickStack находится ClickHouse — колоночная база данных, разработанная для massively‑масштабируемой аналитики в режиме реального времени. Она обеспечивает приём и выполнение запросов к данным наблюдаемости, позволяя:

  • Выполнять поиск с задержкой менее секунды по терабайтам событий
  • Принимать до миллиардов записей с высокой кардинальностью в день
  • Достигать степени сжатия данных наблюдаемости не менее чем в 10 раз
  • Иметь нативную поддержку полуструктурированных данных в формате JSON, что позволяет динамически изменять схему
  • Использовать мощный SQL‑движок с сотнями встроенных аналитических функций

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

Коллектор OpenTelemetry: ингестия данных

ClickStack включает предварительно настроенный коллектор OpenTelemetry (OTel) для приёма телеметрии открытым, стандартизированным способом. Пользователи могут отправлять данные по протоколу OTLP через:

  • gRPC (порт 4317)
  • HTTP (порт 4318)

Коллектор экспортирует телеметрию в ClickHouse эффективными батчами. Он поддерживает оптимизированные схемы таблиц для каждого источника данных, обеспечивая масштабируемую производительность для всех типов сигналов телеметрии.

HyperDX: интерфейс

HyperDX — это пользовательский интерфейс для ClickStack. Он предоставляет:

  • Поиск на естественном языке и в стиле Lucene
  • Live tailing логов для отладки в реальном времени
  • Единые представления логов, метрик и трейсов
  • Session replay (воспроизведение сессий) для наблюдаемости фронтенда
  • Создание дашбордов и настройку оповещений
  • SQL-интерфейс для продвинутого анализа

Разработанный специально для ClickHouse, HyperDX сочетает мощный поиск с интуитивными сценариями работы, позволяя пользователям быстро выявлять аномалии, расследовать проблемы и получать инсайты.

MongoDB: состояние приложения

ClickStack использует MongoDB для хранения состояния на уровне приложения, включая:

  • Дашборды
  • Оповещения
  • Профили пользователей
  • Сохранённые визуализации

Такое разделение состояния и данных о событиях обеспечивает высокую производительность и масштабируемость, а также упрощает резервное копирование и настройку.

Такая модульная архитектура позволяет ClickStack предоставлять платформу наблюдаемости «из коробки», которая отличается высокой скоростью работы, гибкостью и основана на открытом исходном коде.