Конфигурация модуля MDX#

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

Настройка

Описание

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

Конфигурационный файл

insight.mdx.optimize-enabled

Указывает, следует ли включать оптимизацию операторов для MDX-запросов в MDXK

true

insight.properties

insight.mdx.calculate-total-need

Определяет, вычисляет ли MDX-запрос в MDXK глобальные итоговые и промежуточные итоги

true

insight.properties

insight.mdx.schema.create-from-dataset

Указывает, будет ли MDX-запрос в MDXK создавать схему из набора данных

true

insight.properties

insight.mdx.schema.refresh.disable

Указывает, следует ли отключать обновление для MDX-запроса в MDXK

false

insight.properties

insight.mdx.sql.orderby.enable

Указывает, следует ли включать SQL ORDERBY в MDXK

true

insight.properties

insight.mdx.sql.calcite-engine-hint.enable

Определяет, должен ли OLAP принудительно использовать фреймворк Calcite при подключении BI-инструментов к MDXK и выполнении запросов, содержащих подобные представленным

false

insight.properties

insight.mdx.skip-axis-nonempty-check

Указывает, следует ли пропускать проверку на нулевое значение при вычислении оси в MDXK

true

insight.properties

insight.mdx.mondrian.olap.case.sensitive

Определяет, является ли оператор MDX-запроса в MDXK чувствительным к регистру

true

insight.properties

insight.mdx.mondrian.xmlaSessionTimeToLive

Определяет время жизни XMLA-сессии для клиента который работает с Mondrian. При значении 0 XMLA-сессия не будет очищаться планировщиком. Отрицательное значение запрещено.
Формат значения: <число><единица измерения>. Допустимыми единицы измерения времени: d (дни), h (часы), m (минуты), s (секунды), ms (милисекунды)

1d

insight.properties

insight.mdx.mondrian.rolap.maxQueryThreads

Задает максимальное количество потоков запросов в MDXK

50

insight.properties

insight.mdx.mondrian.query.sql.page.size

Задает максимальное количество записей, получаемых на одной странице при выполнении MDX-запроса с пагинацией

10000

insight.properties

insight.mdx.mondrian.rolap.generate.formatted.sql

Определяет, должен ли MDX-запрос в MDXK форматировать выходной SQL-оператор

false

insight.properties

insight.mdx.mondrian.rolap.star.EnableRolapCubeMemberCache

Указывает, следует ли отключать кеширование членов иерархии для MDX-запроса в MDXK

false

insight.properties

insight.mdx.mondrian.rolap.star.disableCaching

Указывает, следует ли отключать кеширование для MDX-запроса в MDXK: true — очищать, false — не очищать

true

insight.properties

insight.mdx.mondrian.rolap.star.cacheTimeToLive

Определяет, сколько времени Mondrian должен хранить кеш Rolap схемы пользователя. По истечении времени схема и весь связанный кеш будут удалены. Если время не истекло и получен запрос по этой же схеме, то таймер ожидания будет перезапущен.
При значении 0 кеш не будет очищаться планировщиком. Отрицательное значение запрещено.
Формат значения: <число><единица измерения>. Допустимыми единицы измерения времени: d (дни), h (часы), m (минуты), s (секунды), ms (милисекунды)

300s

insight.properties

insight.mdx.mondrian.rolap.ignoreInvalidMembers

Определяет, игнорирует ли MDX-запрос в MDXK недействительные члены

true

insight.properties

insight.mdx.mondrian.rolap.ignoreInvalidMembersDuringQuery

Указывает, игнорирует ли MDX-запрос в MDXK недействительные члены в запросах

true

insight.properties

insight.mdx.mondrian.olap.pure-axes-calculate.source.type

Указывает тип источника размерных данных при вычислении оси MDX-запроса в MDXK. Необязательными параметрами являются: SNAPSHOT, PARTIAL_CUBE, ALL_CUBE

PARTIAL_CUBE

insight.properties

insight.mdx.mondrian.olap.pure-axes-calculate.cardinality-gap

Задает максимальную кардинальность (эксклюзивность) таблицы измерений, которую любой SQL на одной таблице измерений в MDXK вынужден соблюдать, например, insight.mdx.mondrian.olap.pure-axes-calculate.source.type=SNAPSHOT, специальное значение -1 означает, что всегда вынужден, а 0 - что не вынужден

-1

insight.properties

insight.mdx.mondrian.olap.pure-axes-calculate.total-cardinality-gap

Задает максимальную кардинальность (эксклюзивную) любого результата total-axis SQL, который вынужден вести себя как insight.mdx.mondrian.olap.pure-axes-calculate.source.type=SNAPSHOT, специальное значение -1 означает, что всегда вынужден, а 0 - что не вынужден

0

insight.properties

insight.mdx.mondrian.olap.support-non-default-all-member

Определяет, поддерживает ли MDX-запрос в MDXK все члены не по умолчанию

false

insight.properties

insight.mdx.mondrian.olap.cell.calc.join-dims

Определяет, присоединяется ли MDX-запрос в MDXK к другим таблицам измерений при вычислении ячейки

true

insight.properties

insight.mdx.mondrian.rolap.return-null-when-divide-zero

Определяет, возвращает ли MDX-запрос в MDXK 0, если делитель равен 0

true

insight.properties

insight.mdx.mondrian.rolap.optimize-tuple-size-in-aggregate.enable

Указывает, следует ли включать оптимизацию размера кортежей при агрегации MDX-запроса в MDXK

false

insight.properties

insight.mdx.mondrian.rolap.calculate-cell-when-non-measure

Указывает, следует ли агрегировать данные ячеек, когда MDX-запрос в MDXK не имеет мер

false

insight.properties

insight.mdx.mondrian.sql.fetch-dim-from-snapshot

Определяет, предпочитает ли MDX-запрос в MDXK извлекать данные об измерениях из моментальных снимков

true

insight.properties

insight.mdx.mondrian.sql.enableOrderBy

Указывает, добавлять ли collation (способ сортировки и сравнения) при запросе SQL в MDXK

true

insight.properties

insight.mdx.mondrian.jdbc.timezone

Задает часовой пояс в формате GMT для службы запросов JDBC в MDXK. Смещает выдаваемые значения даты/времени на разницу часовых поясов в JVM и в значении параметра.

Соответствует часовому поясу JVM

insight.properties

insight.mdx.mondrian.schema.init-level-group-order-by-key

Определяет, должен ли MDX-запрос в MDXK инициализировать уровень по значению ключа

true

insight.properties

insight.mdx.mondrian.query.filter-pushdown.enable

Указывает, включен ли в MDXK режим MDX-запросов для фильтрации pushdown

true

insight.properties

insight.mdx.mondrian.query.filter-pushdown.in-clause-max-size

Задает максимальное количество фильтрующих клаузул MDX-запросов в MDXK

20

insight.properties

insight.mdx.mondrian.query.sql.customize.enable

Указывает, следует ли включать настройку MDX-запросов в MDXK SQL

true

insight.properties

insight.mdx.mondrian.query.sql.customize.class

Определяет класс реализации MDX-запроса CustomizeSqlQuery в MDXK

io.kylin.mdx.web.mondrian.rolap.sql.KylinSqlQuery

insight.properties

insight.mdx.mondrian.query.sql.max.size

Задает максимальное количество строк запроса для SQL-запроса в MDXK

50000

insight.properties

insight.mdx.mondrian.olap.triggers.enable

Указывает, уведомлять ли Mondrian при изменении конфигурационных свойств MDX-запроса в MDXK

true

insight.properties

insight.mdx.mondrian.rolap.nonempty

Указывает, нужно ли в MDXK задавать непустое значение для каждой оси запроса

false

insight.properties

insight.mdx.mondrian.rolap.compareSiblingsByOrderKey

Указывает, проверяет ли MDX-запрос в MDXK сиблинговые члены и извлекает ли члены из исходного выражения для проверки

false

insight.properties

insight.mdx.mondrian.rolap.maxSqlThreads

Задает максимальное количество экземпляров Mondrian, которые поддерживают SQL в MDXK

100

insight.properties

insight.mdx.mondrian.rolap.maxCacheThreads

Задает максимальное количество потоков на один экземпляр Mondrian, когда MDX-запрос в MDXK поддерживает кеширование

100

insight.properties

insight.mdx.mondrian.rolap.queryTimeout

Установка времени тайм-аута MDX-запроса, в секундах

insight.properties

insight.mdx.mondrian.olap.NullMemberRepresentatio

Определяет, как отображать MDX-запрос в MDXK, когда результат пуст

null

insight.properties

insight.mdx.mondrian.visualtotal.solve.order

Определяет общий порядок настройки MDX-запроса в MDXK

insight.properties

insight.mdx.mondrian.cross-join.native.enable

Определяет, использовать ли нативный Cross JOIN при отправке запросов в MDXK

true

insight.properties

insight.mdx.mondrian.filter.row.limit

Указывает, добавлять ли условие Limit при подключении BI-инструментов к MDXK и выполнении операции Filter. По умолчанию установлено значение 0, что означает, что условие Limit не добавляется. Если значение равно 10, то в запрос будет добавлено SQL-условие limit 10. Примечание: Параметры здесь должны быть записаны в целых положительных числах, иначе при выполнении MDX-запроса вернется ошибка. Примечание: После установки этого параметра может произойти обратная операция выбора из выпадающего списка в инструментах анализа данных

0

insight.properties

insight.mdx.mondrian.result.limit

Указывает количество строк, возвращаемых проверкой SQL, и количество ячеек. Если предел превышен, то будет возвращена непосредственно ошибка

100000

insight.properties

insight.mdx.mondrian.mdprop.mdx.subqueries

Указывает уровень поддержки подзапросов в MDX-запросе. По умолчанию параметр принимает значение 2 и не поддерживает подзапросы

insight.properties

insight.mdx.mondrian.query.sql.model-priority-hint.enable

Если эта опция включена, то модель, на которую ссылается набор данных, будет указываться в SQL-запросах как модель с высоким приоритетом через указание MODEL_PRIORITY

true

insight.properties

insight.mdx.xmla.support-rowset-visibilities

Определяет, следует ли включить поддержку ограничений HIERARCHY_VISIBILITY и MEASURE_VISIBILITY, предусмотренных XML/A Schema

insight.properties

insight.mdx.mondrian.query.limit

Максимальное количество одновременных запросов, которое допускает система

1000

insight.properties

insight.mdx.mondrian.query.kylin.enabled

Добавляет все связи таблиц в SQL-запрос, используя тип JOIN-а, указанный в модели Kylin. Актуально только для Kylin драйвера

true

insight.properties

Конфигурация модуля MDX для работы GROUPING SETS#

Ниже приведена сводная информация о конфигурировании системы для работы GROUPING SETS.

Настройка

Описание

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

Конфигурационный файл

insight.mdx.mondrian.rolap.aggregates.Use

Укажите возможность использования агрегационных таблиц компонентом MDXK для работы GROUPING SETS

false

insight.properties

insight.mdx.mondrian.rolap.aggregates.Read

Укажите возможность чтения агрегационных таблиц компонентом MDXK для работы GROUPING SETS

false

insight.properties

insight.mdx.mondrian.rolap.groupingsets.enable

Укажите возможность генерации агрегационных SQL-запросов с использованием GROUPING SETS

false

insight.properties

Параметры интеграции с Platform V Monitor (OPM)#

Система поддерживает асинхронную отправку событий аудита в компонент COTE.

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

Базовые параметры#

Параметр

Описание

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

Конфигурационный файл

insight.MDXK.auditSE.enabled

Включение/отключение отправки событий в компонент COTE

true

insight.properties

insight.MDXK.auditSE.host

FQDN/IP-адрес сервера компонента COTE

insight.properties

insight.MDXK.auditSE.endpoint-prefix

Базовый префикс для каждого endpoint сервера компонента COTE

insight.properties

insight.MDXK.auditSE.port

Порт сервера компонента COTE

insight.properties

insight.MDXK.auditSE.timeout

Тайм-аут обращения к API сервера компонента COTE в миллисекундах

10 000

insight.properties

insight.MDXK.auditSE.node-id

IP и FQDN (через пробел) узла АС или FQDN среды контейнеризации, с которого происходит отправка событий аудита

insight.properties

insight.MDXK.auditSE.user-node-id-headers

Список HTTP-заголовков для попытки извлечения IP-запроса инициатора операции

insight.properties

insight.MDXK.auditSE.metamodel-module

Имя модуля в метамодели

insight.properties

insight.MDXK.auditSE.OTTS.enabled

Включение (true) или отключение (false) аутентификации с Аудит через компонент «One-Time Password (OTP) / OTT» (OTTS)

true

insight.properties

insight.MDXK.auditSE.OTTS.url

URL сервиса OTTS. Используется встроенным в клиент OTTS программным БН как шаблон для формирования ссылок при вызове серверов OTTS, указанных в параметре insight.MDXK.auditSE.OTTS.hosts

-

insight.properties

insight.MDXK.auditSE.OTTS.hosts

Список серверов OTTS. Порт (8080 или 8443) должен соответствовать протоколу (HTTP или HTTPS), указанному в insight.MDXK.auditSE.OTTS.url

-

insight.properties

insight.MDXK.auditSE.OTTS.id

Идентификатор приложения/namespace в OTTS

-

insight.properties

insight.MDXK.auditSE.OTTS.auth-realm

Авторизационный realm

mmt

insight.properties

insight.MDXK.auditSE.OTTS.module-attribute-id

Атрибут контекста авторизации, в котором передается идентификатор приложения/namespace в OTT. При пустом значении параметров будет использовать значение из КМ OTT

-

insight.properties

insight.MDXK.auditSE.OTTS.token-type-attribute-id

Атрибут контекста авторизации, в котором передается тип запрашиваемого токена. При пустом значении параметров будет использовать значение из КМ OTT

-

insight.properties

insight.MDXK.auditSE.OTTS.action-id

Action, используется для совместимости с ММТ

request

insight.properties

insight.MDXK.auditSE.OTTS.receiver-id

Идентификатор OTTS для приложения получателя

-

insight.properties

Параметры настройки повторной отправки данных аудита в случае возникновения проблем при отправке#

Параметр

Описание

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

Конфигурационный файл

insight.MDXK.auditSE.retry.period-ms

Стартовая длительность ожидания до осуществления повторной отправки данных в компонент COTE при проблемах отправки (в миллисекундах)

100

insight.properties

insight.MDXK.auditSE.retry.max-period-ms

Максимальная длительность ожидания до осуществления повторной отправки данных в компонент COTE при проблемах отправки (в миллисекундах)

1000

insight.properties

insight.MDXK.auditSE.retry.max-attempts

Максимальное количество повторных отправок, которые будут выполнены при проблемах отправки данных в компонент COTE

3

insight.properties

Параметры настройки пула потоков и очереди событий для асинхронной отправки данных аудита#

Параметр

Описание

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

Конфигурационный файл

insight.MDXK.auditSE.thread-pool.core-pool-size

Минимальное количество потоков в пуле (не менее 2)

4

insight.properties

insight.MDXK.auditSE.thread-pool.maximum-pool-size

Максимальное количество потоков в пуле

8

insight.properties

insight.MDXK.auditSE.thread-pool.keep-alive-time-in-seconds

Время ожидания дополнительных потоков в пуле до удаления

32

insight.properties

insight.MDXK.auditSE.thread-pool.queue-capacity

Фиксированный размер очереди событий, ожидающих отправки

256

insight.properties

Параметры чтения дополнительных конфигурационных файлов с данными учетных записей#

В целях безопасности данные учетных записей для подключения к БД вынесены в отдельный файл конфигурации. Путь ожидаемого расположения файла настраиваются с помощью параметра:

Параметр

Описание

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

Конфигурационный файл

secret.DB.path

Путь к файлу с данными учетной записи для подключения к БД

optional:${MDX_HOME}/conf/MDXK_DB_secret.properties

insight.properties

Параметры учетной записи подключения к БД#

Логин и пароль для подключения к БД настраиваются с помощью параметров:

Параметр

Описание

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

Конфигурационный файл

meta.DB.login

Логин для подключения к БД (должно быть закодировано в base64)

MDXK_DB_secret.properties

meta.DB.password

Пароль для подключения к БД (должно быть закодировано в base64)

MDXK_DB_secret.properties

Конфигурация JVM#

JVM настраивается в конфигурационном файле $MDX_HOME/semantic-mdx/set-jvm.sh. Конфигурация по умолчанию использует меньше памяти, но возможно ее изменение в соответствии с целями проекта.

Конфигурация по умолчанию имеет следующие значения:

jvm_xms=-Xms3g    # Начальная память JVM при запуске MDXK
jvm_xmx=-Xmx16g   # Максимальный объем памяти JVM при запуске MDXK

Кроме того, конфигурацию JVM можно изменить в файле $MDX_HOME/conf/insight.properties, который имеет более высокий приоритет, чем вышеупомянутый файл set-jvm.sh.

В качестве примера можно привести следующую конфигурацию:

insight.mdx.jvm.xms=-Xms3g
insight.mdx.jvm.xmx=-Xmx16g

При запуске компонента MDXK система по умолчанию загружает параметры, определенные в конфигурационном файле $MDX_HOME/semantic-mdx/set-jvm.sh.

Если параметры были изменены, перезапустите компонент MDXK, чтобы новые значения параметров вступили в силу.