Архитектура системы PIX BI
PIX BI разворачивается на сервере клиента. Взаимодействие с системой происходит с помощью браузера, устанавливать специальное приложение на локальном компьютере пользователей не нужно.
Все данные хранятся на серверах вашей компании. Внутренние конфигурационные данные PIX BI хранит в базе данных PostgreSQL. В качестве внутреннего хранилища данные PIX BI может использовать PostgreSQL либо Clickhouse.
PIX BI позволяет работать с данными из множества внешних источников: PostgreSQL, Clickhouse, MS SQL Server, а также позволяет загружать данные во внутреннее хранилище из таких источников как PostgreSQL, Clickhouse, MS SQL Server, ODBC, Excel, CSV, QVD и т.п.
Приложение PIX BI состоит из следующих компонентов:
- Приложение PIX BI:
- Бэкенд (серверная часть), написанный на языке C#, работает на платформе .NET Core;
- Фронтенд (клиентская часть), написанный на языке JavaScript (с использованием фреймворка ReactJS);
- Общение между фронтендом и бэкендом осуществляется с помощью PIX BI REST API.
- Веб-сервер:
- Apache, Nginx, или IIS. Работает как прокси, принимает от клиента HTTPS трафик, передает его в приложение PIX BI;
- СУБД PostgreSQL, выполняет функции:
- Хранит конфигурацию приложения (пользователи, группы, директории приложения, дашборды, фильтры, источники, наборы и т.д.)
- Хранит ключи шифрования для данных о подключении к источникам
- Может быть использована как внутреннее хранилище (ДВХ)
- СУБД Clickhouse:
- Может быть использована как внутреннее хранилище данных (DWH);
- Внешние СУБД (PostgreSQL, Clickhouse, MS SQL Server, и т.д.)
- Может выступать как источники данных.
Описание функционирования системы
Запросы от пользователей формируются в результате их работы с приложением в браузере на компьютере пользователя. Действия пользователя приводят к отправке запросов на сервер приложения в виде HTTP запросов REST API.
Эти запросы поступают на веб-сервер (или сетевой балансер), который обеспечивает надежное защищенное сетевое взаимодействие между браузером пользователя и серверной частью приложения с помощью HTTPS соединения.
Расшифрованные HTTP запрос поступает в приложение PIX BI.
Приложение анализирует запрос, формирует необходимый SQL запрос, и по защищенному каналу передает этот запрос в соответствующую СУБД.
СУБД выполняет запрос и возвращает серверу PIX BI необходимые данные.
Сервер PIX BI обрабатывает полученные данные, формирует из них соответствующий ответ и в формате JSON возвращает его клиентскому приложению, работающему в браузере.
Клиентское приложение, работающее в браузере, визуализирует полученные данные в виде пунктов меню, опций, либо элементов анализа данных на дашбордах.
Процессы приложения
Приложение при работе на операционной системе Linux порождает работу следующих процессов:
- Процесс сервиса pixbi.service
- Процессы сервиса apache2 или nginx (зависит от установки)
- Процессы сервиса postgresql (СУБД)
- Процессы сервиса clickhouse-server (СУБД)
- Процессы сервиса chrome (экспорт дашбордов и визуализаций в форматы картинок и документов)




