NoSQL хранилище

NoSQL хранилище - это глобальное свойство конфигурации сервера, определяющее, как SberMobile Server хранит свои данные в базе данных NoSQL. Его поля сопоставляются с файлом конфигурации сервера.

Использовать встроенную службу

Имя ключа в файле конфигурации: databaseCassandraUseEmbeddedService

Тип значения: Boolean

Возможные значения: true или false

Значение по умолчанию: true

Если эта опция включена, SberMobile Server запускает встроенную службу Cassandra и использует ее в качестве основной базы данных. Если задан параметр IP-адрес сервера, он будет использоваться в качестве адреса прослушивания для встроенной службы Cassandra. В противном случае адрес прослушивания будет определен автоматически.

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

Использовать внешний YAML-файл конфигурации

Имя ключа в файле конфигурации: databaseCassandraUseYamlConfiguration

Тип значения: Boolean

Возможные значения:true или false

Значение по умолчанию: false

Если эта опция включена, встроенный сервис Cassandra будет загружать свои параметры конфигурации не из SberMobile Server конфигурации( файлserver.xml по умолчанию), а из специального файла cassandra.yaml в директории установки сервера. Текущие параметры могут потребоваться для тонкой настройки встроенного сервиса Cassandra, когда параметров из конфигурации сервера недостаточно.

Адрес сервера базы данных

Ключевое имя в конфигурационном файле: databaseCassandraHost

Тип значения: String

Возможные значения: любой действительный IP-адресу

Значение по умолчанию: "" (пусто)

IP-адрес сервера Cassandra.

Порт базы данных

Ключевое имя в файле конфигурации: databaseCassandraNativePort

Тип значения: Integer

Возможные значения: 0 или более

Значение по умолчанию: 9042

Порт, используемый сервером Cassandra для связи с клиентом.

Путь к папке хранилища

Ключевое имя в файле конфигурации: databaseCassandraStorageDirectory

Тип значения: String

Возможные значения: любой допустимый путь

Значение по умолчанию: "" (пусто)

Директория, в которой хранятся первичные данные пространства ключей. Когда директория оставлена пустой, она будет помещена в папку установки SberMobile.

Путь к папке commitlog

Ключевое имя в файле конфигурации: databaseCassandraCommitlogDirectory

Тип значения: String

Возможные значения: любой допустимый путь

Значение по умолчанию: "" (пусто)

Директория, в которой хранятся журналы фиксации. Когда значение оставлено пустым, директория будет помещена в папку установки SberMobile.

Путь к папке с кэшем

Ключевое имя в файле конфигурации: databaseCassandraCachesDirectory

Значение: String

Возможные значения: любой допустимый путь

Значение по умолчанию: "" (пусто)

Директория, в которой хранятся данные кэша. Когда значение оставлено пустым, директория будет помещена в папку установки SberMobile.

Пространство ключей хранилища конфигураций

Имя ключа в файле конфигурации: databaseCassandraConfigurationKeyspace

Тип значения: String

Возможные значения: Любое допустимое имя пространства ключей.

Значение по умолчанию: aggregate

Ключевое пространство, используемое Cassandra для хранения конфигурации. Используется для обеспечения корректной работы одного экземпляра БД Cassandra с несколькими серверами SberMobile.

Пространство ключей хранилища событий

Имя ключа в файле конфигурации: databaseCassandraEventHistoryKeyspace

Тип значения: String

Возможные значения: Любое допустимое имя пространства ключей.

Значение по умолчанию: aggregate

Ключевое пространство, используемое Cassandra для хранения истории событий. Используется для обеспечения корректной работы одного экземпляра БД Cassandra с несколькими серверами SberMobile.

Пространство ключей хранилища двоичных данных

Имя ключа в файле конфигурации: databaseCassandraBinaryDataKeyspace

Тип значения: String

Возможные значения: Любое допустимое имя пространства ключей.

Значение по умолчанию: aggregate

Ключевое пространство, используемое Cassandra для хранения двоичных данных. Используется для обеспечения корректной работы одного экземпляра БД Cassandra с несколькими серверами SberMobile.

Пространство ключей хранилища статистики

Имя ключа в файле конфигурации: databaseCassandraStatisticsKeyspace

Тип значения: String

Возможные значения: Любое допустимое имя пространства ключей.

Значение по умолчанию: aggregate

Ключевое пространство, используемое Cassandra для хранения статистики. Используется для обеспечения корректной работы одного экземпляра БД Cassandra с несколькими серверами SberMobile.

Внутреннее пространство ключей

Имя ключа в файле конфигурации: databaseCassandraInternalKeyspace

Тип значения: String

Возможные значения: Любое допустимое имя пространства ключей.

Значение по умолчанию: aggregate

Ключевое пространство, используемое Cassandra для хранения системных данных SberMobile Server. Используется для обеспечения корректной работы одного экземпляра БД Cassandra с несколькими серверами SberMobile.

Фактор репликации

Имя ключа в файле конфигурации: databaseReplicationFactor

Тип значения: Integer

Возможные значения: 1 или более

По умолчанию: 1

Фактор репликации описывает, сколько копий ваших данных существует. Установите значение больше единицы, если вы хотите обмениваться данными между узлами вашего NoSQL-кластера.

'Сиды' кластера NoSQL (адреса, разделенные запятыми)

Имя ключа в файле конфигурации: databaseSeeds

Тип значения: String

Возможные значения: Список IP-адресов, разделенных запятыми

Значение по умолчанию: "" (пусто)

Список узлов, отвечающих за хранение и обработку конфигурации кластера NoSQL.

Количество изменений в блоке (0 для отключения блочных обновлений)

Ключевое имя в конфигурационном файле: databaseCassandraBatchSize

Тип значения: Integer

Возможные значения: 0 или более

По умолчанию: 0

Максимум изменений в пакетном обновлении. Ноль значений отключает пакетные обновления.

Предельный размер памяти блока

Ключевое имя в файле конфигурации: databaseCassandraBatchSizeThreshold

Тип значения: Integer

Возможные значения: 0 или более

Значение по умолчанию: 100000

Максимальный размер пакетного обновления в байтах.

Использовать аутентификацию

Имя ключа в файле конфигурации: databaseCassandraUseAuthentication

Значение: Boolean

Возможные значения: true или false

Значение по умолчанию: false

Контролирует, используется ли аутентификация для соединений с кластером Cassandra.

Вход в систему

Имя ключа в файле конфигурации: databaseCassandraLogin

Тип значения: String

Возможные значения: Любое имя пользователя, подходящее для базы данных cassandra

Значение по умолчанию: "" (пусто)

Имя пользователя, используемое для входа на хосты Cassandra.

Пароль

Имя ключа в файле конфигурации: databaseCassandraPassword

Тип значения: String

Возможные значения: Любой пароль, подходящий для базы данных Cassandra

Значение по умолчанию: "" (пусто)

Пароль для входа на хосты Cassandra.

Размер commitlog

Ключевое имя в конфигурационном файле: databaseCassandraCommitlogSize

Тип значения: Integer

Возможные значения: 8,16,32

Значение по умолчанию: 32

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

Уровень согласованности

Имя ключа в файле конфигурации: databaseCassandraConsistencyLevel

Тип значения: String

Возможные значения: ОДИН, ДВА, ТРИ, КВОРУМ, ВСЕ, ЛОКАЛЬНЫЙ_КВОРУМ, КАЖДЫЙ_КВОРУМ, ЛОКАЛЬНЫЙ_ОДИН

Значение по умолчанию: LOCAL_ONE

Уровень согласованности Cassandra.

Contact Points

Ключевое имя в файле конфигурации: databaseCassandraContactPoints

Тип значения: String

Возможные значения: Список IP-адресов или имен хостов, разделенных запятой.

Значение по умолчанию: ""

Контактные точки Cassandra, т. е. адреса координаторов кластеров.

Политика балансировки нагрузки

Ключевое имя в файле конфигурации: databaseCassandraLoadBalancing

Тип значения: Data Table

Возможные значения: По порядку, С учетом задержек, С учетом ЦОД.

Значение по умолчанию: По порядку

Политика балансировки нагрузки Cassandra для применения при распределении операций базы данных:

  • По порядку. Каждый новый запрос назначается на следующий доступный узел в последовательности.

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

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

    • Масштабирование. Масштабируемость основных узлов с точки зрения обработки все большего количества устройств и ресурсов в кластере.

    • Период. Интервал масштабирования.

    • Расход обновлений. Указывает, как часто вносятся обновления или изменения в настройки конфигурации основных узлов.

  • С учетом ЦОД. Направлен на распределение клиентских запросов между узлами по кругу с учетом топологии центра обработки данных. Обеспечивает распределение запросов между узлами в пределах одного центра обработки данных (локальный ЦОД) перед маршрутизацией на узлы в удаленных центрах обработки данных. Текущая политика имеет следующие дополнительные параметры:

    • Локальный ЦОД. Указывает центр обработки данных, который находится ближе всего к клиенту с точки зрения сетевой близости.

    • Узлов на удаленном ЦОД. Указывает количество хостов (узлов), которые будут использоваться для каждого удаленного центра обработки данных при настройке репликации данных.

    • Разрешать запросы к удаленным ЦОД при локальном уровне консистентности. Определяет, может ли клиентский запрос обслуживаться узлами в удаленных центрах обработки данных, если требуемые данные не могут быть предоставлены из локального центра обработки данных при сохранении требуемого уровня согласованности.

Политика переподключения

Имя ключа в файле конфигурации: databaseCassandraReconnectionPolicy

Тип значения: Data Table

Возможные значения: Экспоненциальная или Постоянная для политики переподключения, 1 или более миллисекунд для Начальной задержки, 1 или более миллисекунд для Максимальной задержки, 1 или более миллисекунд для Задержки.

Значение по умолчанию: Экспоненциальный

Политика переподключения Cassandra.

Таймаут запроса на чтение

Ключевое имя в файле конфигурации: databaseCassandraReadRequestTimeout

Тип значения: Integer

Возможные значения:

Значение по умолчанию: 30000

Таймаут чтения для каждого хоста Cassandra в миллисекундах.

Когда вы устанавливаете это значение, имейте в виду следующее:

  • Оно должно быть выше, чем настройки таймаута, используемые на стороне Cassandra.

  • Таймаут чтения является приблизительным и контролирует таймаут только для одного хоста Cassandra, а не для полного запроса.