Структура платформы
Высокоуровневая архитектура платформы
В современном мире бизнес-аналитики, где информация играет решающую роль в успехе любого предприятия, надежная и эффективная архитектура BI-платформы является критическим фактором. Это должно быть комплексное решение, основанное на передовых технологиях и инструментах, которое позволяет без труда собирать, обрабатывать и визуализировать данные. Хорошая BI-платформа должна состоять из нескольких ключевых компонентов, таких как высокоскоростное хранилище данных, механизмы обеспечения стабильной работы платформы, безопасности данных, модуль, отвечающий за авторизацию и ролевой доступ к платформе, инструменты визуализации и т.д. В совокупности платформа должна позволять пользователям быстро получать доступ к необходимым данным и предлагать широкий спектр инструментов для их анализа и визуализации полученных результатов.
Ниже представлена высокоуровневая архитектура платформы Visiology с кратким описанием ее основных компонентов.
В состав платформы входят следующие компоненты:
ДанКо – высокопроизводительное хранилище данных, реализованное на основе ClickHouse. Это логическое объединение нескольких компонентов:
Formula Engine – бэкенд-сервис, реализующий Tabular Object Model c помощью ClickHouse. Основные функции:
хранение и управление TOM-моделью (Tabular Object Model);
хранение больших объемов данных;
обработка аналитических запросов на языке DAX;
построение оптимальных структур хранения и индексов для более быстрой обработки DAX-запросов;
кэширование DAX-запросов;
хранение прав доступа к наборам данных.
MinIO – простое объектное хранилище, поддерживающее S3 протокол, репликацию, масштабирование, отказоустойчивость и аутентификацию. В данный момент там хранятся временные Excel- и CSV-файлы для загрузки данных в ClickHouse.
Data Management Service (DMS) – бэкенд-сервис, предоставляющий доступ к следующим функциональным возможностям:
хранение, чтение и редактирование ER-диаграммы для TOM (Tabular Object Model);
загрузка данных из различных источников с настройкой маппинга (автоматическая и по запросу):
CSV;
JDBC-совместимые базы данных;
Excel.
Настройка расписаний автоматической загрузки данных.
JDBC Bridge – работает как простой прокси-сервер без сохранения состояния, который передает SQL-запросы из ClickHouse на внешние СУБД, поддерживающие JDBC-драйвер. Этот прокси-сервер позволяет ClickHouse подключаться к источникам данных с поддержкой JDBC для загрузки данных.
Dashboard Service – позволяет создавать и публиковать интерактивные отчеты (дашборды). Данный сервис предоставляет следующие возможности:
получение, редактирование и хранение дашбордов;
формирование DAX-запросов для получения данных;
экспорт данных в формате Excel;
взаимодействие с пользовательскими виджетами, темами, пользовательскими JavaScript-скриптами, картинками;
Visiology Designer - графический дизайнер, который работает в интернет-браузере (SPA-приложение). Предоставляет следующие возможности:
редактирование и просмотр существующих дашбордов;
редактирование и просмотр рабочих областей;
создание, удаление и просмотр списка наборов данных;
редактирование набора данных;
редактирование модели данных (ER-диаграммы);
загрузка данных и настройка автоматического обновления данных.
Dashboard Viewer – данный сервис отвечает за визуализацию виджетов на экране и обеспечивает выполнение следующих операций:
получение данных для виджетов;
редактирование исходного кода виджета;
отображение виджетов на экране с учетом всех настроек;
управление логикой работы с дашбордами и темами, включая добавление и удаление виджетов, изменение их визуальных свойств и фона, применение тем, добавление и удаление листов и т. д.
Workspace Service - данный сервис позволяет взаимодействовать с рабочими областями и отвечает за выполнение следующих операций:
создание, изменение и удаление рабочих областей;
сопоставление ролей пользователей с пользователями или группами пользователей, зарегистрированными в Keycloak, а также хранение информации об этом. Каждый сервис, перед обработкой запроса на доступ, проверяет права пользователя через запрос к Workspace Service;
Keycloak – сервис авторизации, который предоставляет следующие функции:
создание, редактирование и удаление пользователей и групп для Visiology 3.x;
хранение глобальной роли GlobalAdmin в Keycloak и ее сопоставление с пользователями (глобальными администраторами);
интеграция с внешними системами авторизации, включая OpenID Connect, LDAP(S), Kerberos и SAML;
поддержка протокола OpenID Connect для аутентификации (все описанные сервисы используют этот протокол для аутентификации);
предоставление графического интерфейса для настройки Keycloak, включая все вышеупомянутые функциональные возможности.
PostgreSQL - база данных, которая используется только для Keycloak.
Мониторинг и анализ производительности (Observability) – включает в себя несколько компонентов для сбора, хранения и анализа логов, трассировок и метрик:
Grafana – инструмент для просмотра и анализа логов, трассировок и метрик, который подключается к Loki, Prometheus, Tempo и проходит авторизацию через Keycloak. Доступ к Grafana имеют только пользователи с глобальной ролью GlobalAdmin;
Loki – база данных для хранения логов;
Prometheus - база данных для хранения метрик;
Tempo - база данных для хранения трассировок;
Otelcol - сервис для сбора логов в режиме PUSH (все сервисы отправляют информацию в Otelcol) и последующей отправки этих логов, метрик и трассировок в Loki, Prometheus и Tempo.
Хранилище метаданных (PostgreSQL) - Для хранения метаданных всех компонентов платформы также используется PostgreSQL.
Для работы платформы используется веб-сервер nginx.
Разворачивание и использование
Платформа разворачивается администратором на сервере под управлением операционной системы Linux (см. Разворачивание платформы).
Клиентская часть платформы – Visiology Designer. Это веб-приложение, где загружаются данные, создаются и настраиваются дашборды. Для работы с приложением требуется интернет-браузер.
Номер текущей версии платформы отображается на кнопке в боковой панели Visiology дизайнера. Нажав на кнопку вы скопируете номер версии в буфер обмена:
Рабочий процесс
Создание дашбордов на платформе состоит из нескольких этапов:
Загрузка данных и построение модели данных в Visiology Designer.
Визуализация загруженных данных (построение дашбордов).
Тонкая настройка созданных дашбордов: переименование виджетов, изменение шрифтов, добавление эффектов, замена цветов и т.д..
После создания и настройки дашбордов вы можете поделиться ими с коллегами. Более подробную информацию о всех шагах вы найдете в разделе Быстрый старт.
Смотрите также
Разворачивание платформы
Системные требования
Термины и определения
На этой странице
Время чтения: 2 мин.
Нужна дополнительная помощь?