Требования к настройке баз данных со стороны платформы MyBPM
1. Требования к настройке Apache Kafka
Необходимо чтобы пользователь, из-под которого платформа присоединяется к кластеру Apache Kafka, имел следующие возможности:
1.1. Автоматическое создание топиков
На каждом брокере кластера Apache Kafka нужно настроить автоматическое создание топиков.
Данную настройку нужно делать на каждом брокере с помощью параметра (нужно установить его в true
):
auto.create.topics.enable=true
1.2. Множественное количество партиций
Необходимо настроить множественное количество партиций при создании топика. Количество партиций настраивается в зависимости от объёма данных, которые будут использоваться в системе.
Таблица рекомендаций количества партиций в автоматически создаваемом топике:
Оценка количества данных | Рекомендуемая величина |
---|---|
Мало данных | 12 |
Среднее кол-во данных | 48 |
Большое кол-во данных | 480 |
Огромное кол-во данных | 4800 |
Данную настройку нужно делать на каждом брокере с помощью параметра:
num.partitions=48
1.3. Нужно настроить топик __offsets
Нужно настроить множественные партиции и фактор репликации на топик __offsets
.
Данную настройку нужно делать на каждом брокере с помощью параметров:
offsets.topic.num.partitions=48
offsets.topic.replication.factor=3
1.5. Фактор репликации на топики, создаваемые по-умолчанию
Нужно настроить фактор репликации на топики, создаваемые по-умолчанию. Для этого на каждый брокер нужно установить следующие настройки:
transaction.state.log.replication.factor=3
default.replication.factor=3
transaction.state.log.min.isr=2
1.6. Очистку топиков по-умолчанию необходимо выключить
Для этого необходимо установить следующие настройки на каждом брокере:
log.retention.hours=-1
Минус один обозначает, что топики, созданные автоматически, самостоятельно очищаться не будут
2. Требования к настройке Elastic Search
2.1. Разрешение на создание шаблонов индексов с шаблонами проекций полей (mapping)
Пользователь, который подключается базе данных Elastic Search со стороны платформы MyBPM, будет создавать шаблоны индексов. При том, эти шаблоны индексов могут содержать шаблоны проекций полей (mapping). Следовательно, у этого пользователя должны быть права для этого.
3. Требования к настройке PostgreSQL
Смотрите в другом разделе: Настройка PostgreSQL
4. Требования к настройке MongoDB
4.1. Автоматическое создание баз-данным
Платформа создаёт различное количество баз-данных, и их имена генерируются динамически, поэтому необходимо, чтобы пользователь, из-под которого платформа подключается к MongoDB имел возможность создавать новые базы данных и коллекции в них.
4.2. Создание индексов
Для ускорения работы некоторых аспектов системы, необходимо чтобы можно было создавать индексы на любые коллекции в любой базе данных.