База данных Аналитического портала - Продукт Modus BI
Совокупность объектов, используемых Аналитическим порталом для хранения служебной информации: структуры команд API, настроек, данных о пользователях, дашбордах и т.д.
Объекты, используемые порталом, локализованы в рамках одной базы данных, которая используется порталом постоянно для работы и является его неотъемлемой частью.
Перед использованием Аналитического портала базу данных необходимо создать. О том, как сделать базу данных для Аналитического портала, будет описано ниже.
Требования к СУБД
В качестве СУБД для размещения базы данных Аналитическому порталу требуется PostgreSQL (версии не ниже 10).
Все дальнейшее описание будет вестись из расчета использования именно этой СУБД.
СУБД PostgreSQL предварительно необходимо установить и настроить. Инструкция по установке PostgreSQL и DBeaver.
За дистрибутивами СУБД PostgreSQL и инструкциями по установке и настройке перейдите на официальный сайт разработчика:
Настройка параметра max_connections
Если СУБД PostgreSQL устанавливается впервые и будет использоваться без дополнительного ПО (пуллеров соединений, таких как PgBouncer, Pgpool-II и т.д.), то для корректной работы с Аналитическим порталом в файле конфигурации PostgreSQL необходимо правильно сконфигурировать следующий параметр:
max_connections — пиковое количество одновременно работающих пользователей (значение рассчитывается в зависимости от мощности сервера, по умолчанию 100).
До версии Аналитического портала 3.0 использовалась встраиваемая СУБД — SQLite.
Инициализация базы данных портала
Для инициализации базы данных Аналитического портала необходимо выполнить следующие шаги:
- Создать пустую базу данных.
- Указать параметры подключения к базе данных в файле настроек.
- Выполнить первоначальное заполнение при помощи специальной команды.
Шаг 1. Создание базы данных СУБД
В СУБД необходимо создать базу данных с любой основной схемой (в PostgreSQL по умолчанию — это «public»). Никаких элементов внутри созданной базы данных дополнительно создавать не требуется.
О том, как создать базу данных в СУБД PostgreSQL, можно прочесть в официальном руководстве: Создание базы данных в PostgreSQL.
Шаг 2. Указание параметров подключения к базе в файле настроек
Для подключения Аналитического портала к базе данных необходимо в файле настроек Аналитического портала modusbi.json
, в разделе metadata
, указать параметры подключения к базе данных:
driver
— Строка — Имя драйвера для подключения к серверу СУБД, всегда «postgres».datasource
— Строка — Строка, в которой закодированы параметры подключения к базе данных:<ПОЛЬЗОВАТЕЛЬ_БД>
— Строка — Логин пользователя СУБД.<ПАРОЛЬ_БД>
— Строка — Пароль пользователя СУБД.<IP-АДРЕС_PG>
— Строка — IP-адрес сервера СУБД.<ПОРТ_PG>
— Число — Порт, используемый сервером СУБД.<ИМЯ_БД>
— Строка — Имя базы данных на сервере СУБД, созданной на предыдущем шаге.
maxopenconns
— Число — Максимальное количество одновременно открытых соединений. Не должно быть больше значенияmax_connections
в настройках СУБД PostgreSQL.maxidleconns
— Число — Максимальное количество открытых (ожидающих) соединений в пуле.maxlifetime
— Число — Максимальное время жизни соединения в пуле. Указывается в секундах.
Пример: Аналитический портал и СУБД PostgreSQL установлены на одном сервере. Сервер СУБД PostgreSQL «слушает» стандартный порт «5432». Для подключения используется учетная запись пользователя СУБД с логином «admin» и паролем «pass». Имя базы данных для портала — «modusbi». Для описываемого случая, раздел metadata
файла настроек будет следующим:
{
...
"metadata": {
"driver": "postgres",
"datasource": "postgres://admin:pass@localhost:5432/modusbi?application_name=modusbi&sslmode=disable",
"maxopenconns": 100,
"maxidleconns": 20,
"maxlifetime": 3600
}
...
}
Пользователь СУБД, чей логин и пароль указывается в файле настроек портала, должен иметь в подключаемой базе данных права следующих типов: SELECT
, INSERT
, UPDATE
, DELETE
, TRUNCATE
, REFERENCES
, TRIGGER
, CREATE
, CONNECT
, TEMPORARY
, EXECUTE
, USAGE
.
Шаг 3. Первоначальное заполнение базы данных
Для первоначального заполнения базы данных необходимо запустить выполнение файла портала в режиме инициализации. Для запуска портала в режиме инициализации используется ключ -init
.
Для Windows:
C:\portal>modusbi.exe -init
Для Linux:
/opt/modusbi# ./modusbi -init
Пользователь операционной системы, под чьей учетной записи производится запуск приложения портала, должен иметь право на создание, изменение, удаление файлов в каталоге размещения исполняемого файла портала и на запуск исполняемого файла портала.
Если всё настроено верно, в файле лога modusbi.log
появится соответствующее сообщение:
«Созданы метаданные в <БД PostgreSQL>, необходимо перезапустить сервер.»
где:
<БД PostgreSQL>
— Имя созданной вами базы данных.сервер
— (который необходимо перезапустить) — это сам Аналитический портал, исполняющий роль сервера в клиент-серверной архитектуре.
Запуск с ключом -init
выполняется только при первоначальной настройке. Последующие запуски производятся без использования данного ключа.