Конфигурационные параметры Trino
Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.
|
ПРИМЕЧАНИЕ
|
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
connector.name |
Тип коннектора |
hive |
hive.metastore.uri |
URI для сервиса Hive Metastore |
— |
hive.storage-format |
Формат хранения данных Hive |
PARQUET |
hive.compression-codec |
Кодек компрессии для данных Hive |
SNAPPY |
hive.metastore.thrift.impersonation.enabled |
Определяет, используется ли механизм имперсонации Thrift для запросов к Hive Metastore |
true |
fs.hadoop.enabled |
Определяет, поддерживается ли доступ к HDFS |
false |
hive.config.resources |
Необязательный список конфигурационных файлов HDFS, разделенных запятыми |
/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml |
hive.non-managed-table-writes-enabled |
Определяет, включена ли возможность записи во внешние таблицы Hive |
true |
hive.metastore.authentication.type |
Определяет, используется ли аутентификация Kerberos для доступа к Hive Metastore |
— |
hive.metastore.service.principal |
Принципал Kerberos для сервиса Hive Metastore |
— |
hive.metastore.client.principal |
Принципал Kerberos для клиента Trino при подключении к Hive Metastore |
— |
hive.metastore.client.keytab |
Путь к файлу keytab для Kerberos-клиента Trino |
— |
hive.hdfs.authentication.type |
Определяет, используется ли Kerberos-аутентификация при доступе к HDFS |
— |
hive.hdfs.impersonation.enabled |
Определяет, используется ли механизм имперсонации для конечных пользователей при осуществлении доступа к HDFS |
false |
hive.hdfs.trino.principal |
Принципал Kerberos для клиента Trino при подключении к Hive Metastore |
— |
hive.hdfs.trino.keytab |
Путь к файлу keytab для Kerberos-клиента Trino |
— |
hive.metastore.thrift.client.ssl.enabled |
Определяет, используется ли SSL для Thrift-клиента Hive Metastore |
false |
hive.metastore.thrift.client.ssl.key |
Путь к keystore для SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.key-password |
Пароль для keystore, используемый при SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.trust-certificate |
Путь к truststore для SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.trust-certificate-password |
Пароль для truststore, используемый при SSL-аутентификации |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
connector.name |
Тип коннектора |
iceberg |
hive.metastore.uri |
URI для сервиса Hive Metastore |
— |
iceberg.catalog.type |
Тип каталога для Iceberg |
hive_metastore |
iceberg.file-format |
Формат файлов для таблиц Iceberg |
PARQUET |
iceberg.compression-codec |
Кодек компрессии для таблиц Iceberg |
SNAPPY |
hive.metastore.thrift.impersonation.enabled |
Определяет, используется ли механизм имперсонации Thrift для запросов к Hive Metastore |
true |
fs.hadoop.enabled |
Определяет, поддерживается ли доступ к HDFS |
false |
hive.config.resources |
Необязательный список конфигурационных файлов HDFS, разделенных запятыми |
/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml |
hive.metastore.authentication.type |
Определяет, используется ли аутентификация Kerberos для доступа к Hive Metastore |
— |
hive.metastore.service.principal |
Принципал Kerberos для сервиса Hive Metastore |
— |
hive.metastore.client.principal |
Принципал Kerberos для клиента Trino при подключении к Hive Metastore |
— |
hive.metastore.client.keytab |
Путь к файлу keytab для Kerberos-клиента Trino |
— |
hive.hdfs.authentication.type |
Определяет, используется ли Kerberos-аутентификация при доступе к HDFS |
— |
hive.hdfs.impersonation.enabled |
Определяет, используется ли механизм имперсонации для конечных пользователей при осуществлении доступа к HDFS |
false |
hive.hdfs.trino.principal |
Принципал Kerberos для клиента Trino при подключении к Hive Metastore |
— |
hive.hdfs.trino.keytab |
Путь к файлу keytab для Kerberos-клиента Trino |
— |
hive.metastore.thrift.client.ssl.enabled |
Определяет, используется ли SSL для Thrift-клиента Hive Metastore |
false |
hive.metastore.thrift.client.ssl.key |
Путь к файлу keystore для SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.key-password |
Пароль для файла keystore, используемый при SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.trust-certificate |
Путь к файлу truststore для SSL-аутентификации |
— |
hive.metastore.thrift.client.ssl.trust-certificate-password |
Пароль для файла truststore, используемый при SSL-аутентификации |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Connector properties |
В этой секции можно добавлять кастомные каталоги, нажимая +1 и вводя свойства для нового коннектора |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
resource-groups.configuration-manager |
Источник конфигурации для менеджера групп ресурсов: файл JSON или база данных |
file |
resource-groups.config-db-url |
URL базы данных, из которой следует загружать конфигурацию |
— |
resource-groups.config-db-user |
Пользователь базы данных, используемый для подключения |
— |
resource-groups.config-db-password |
Пароль пользователя базы данных, используемый для подключения |
— |
resource-groups.config-file |
Путь к конфигурационному файлу JSON для менеджера групп ресурсов |
/etc/trino/conf/resource-groups.json |
resource-groups.max-refresh-interval |
Максимальный период времени, в течение которого кластер будет продолжать прием запросов после неудачной попытки обновления конфигурации. По истечении этого периода конфигурация станет недействительной |
— |
resource-groups.refresh-interval |
Интервал времени (в секундах) между загрузками конфигурации |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Session property managers |
Источник конфигурации для менеджеров свойств сессии |
file |
session-property-manager.config-file |
Путь к конфигурационному файлу JSON для менеджеров свойств сессии |
/etc/trino/conf/session-property-config.json |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Определяет, должен ли Trino в случае неудачного выполнения перезапустить весь запрос (
|
NONE |
|
exchange.deduplication-buffer-size |
Размер внутреннего буфера координатора, используемого для хранения выходных данных стадий запросов при обеспечении отказоустойчивого исполнения |
32MB |
fault-tolerant-execution-exchange-encryption-enabled |
Определяет, использовать ли шифрование для данных спулов |
false |
task.low-memory-killer.policy |
Определяет, завершать ли принудительно стадии запросов в случае недостаточного количества памяти. Принимает одно из следующих значений:
Этот параметр используется, только если параметр |
total-reservation-on-blocked-nodes |
query-retry-attempts |
Максимальное количество попыток, предпринимаемых Trino для повторного исполнения запроса, прежде чем он будет считаться неуспешным. Этот параметр используется, только если параметр |
4 |
task-retry-attempts-per-task |
Максимальное количество попыток, предпринимаемых Trino для повторного исполнения одной стадии прежде чем запрос, к которой она принадлежит, будет считаться неуспешным. Этот параметр используется, только если параметр |
4 |
retry-initial-delay |
Минимальное время ожидания перед повторным исполнением запроса или стадии. Этот параметр используется, только если параметр |
10s |
retry-max-delay |
Максимальное время ожидания перед повторным исполнением запроса или стадии. Время ожидания увеличивается после каждого последовательного неудачного исполнения запроса или стадии. Этот параметр используется, только если параметр |
1m |
retry-delay-scale-factor |
Величина, на которую умножается время ожидания перед повторным исполнением стадии или запроса после неудачной попытки. Этот параметр используется, только если параметр |
2 |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
exchange-manager.name |
Тип хранилища для данных промежуточного обмена между стадиями распределенного запроса: HDFS или локальная файловая система |
hdfs |
exchange.base-directories |
Список URI расположений, которые менеджер Exchange использует для хранения данных спулов, разделенных запятыми |
hdfs://<adh_cluster_nameservice>/exchange-spooling-directory |
hdfs.config.resources |
Список путей к конфигурационным файлам HDFS, разделенных запятыми. Эти файлы должны существовать на всех узлах кластера Trino |
/etc/hadoop/conf/core-site.xml, /etc/hadoop/conf/hdfs-site.xml |
exchange.hdfs.auto-create-storage-dirs |
Определяет, нужно ли автоматически создавать директории хранилищ HDFS при их отсутствии |
false |
exchange.hdfs.auto-create-storage-dirs-perms |
Разрешения на доступ к автоматически созданным директориям хранилищ |
755 |
exchange.sink-buffer-pool-min-size |
Минимальный размер пула буферов для пространства обмена. Чем больше пул буферов, тем больше объем использованной памяти и выше степень параллельности записи |
10 |
exchange.sink-buffers-per-partition |
Количество буферов в одной секции в пуле буферов. Чем больше пул буферов, тем интенсивнее использование памяти и выше степень параллельности записи |
2 |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
io.trino |
Глобальный уровень логирования для Trino |
INFO |
io.trino.server |
Уровень логирования для серверных частей Trino |
INFO |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
xasecure.audit.destination.solr.batch.filespool.dir |
Путь к spool-каталогу |
/srv/ranger/trino_plugin/audit_solr_spool |
xasecure.audit.destination.solr.urls |
URL сервера Solr для сохранения аудит-событий. Оставьте значение пустым или установите значение |
— |
xasecure.audit.destination.solr.zookeepers |
Указывает строку для подключения ZooKeeper к Solr |
— |
xasecure.audit.destination.solr.force.use.inmemory.jaas.config |
Определяет, использовать ли in-memory JAAS-файл для соединения с Solr |
— |
xasecure.audit.is.enabled |
Активирует аудит Ranger |
true |
xasecure.audit.jaas.Client.loginModuleControlFlag |
Определяет требование к успешному завершению работы модуля. Возможные значения: |
— |
xasecure.audit.jaas.Client.loginModuleName |
Имя класса-аутентификатора |
— |
xasecure.audit.jaas.Client.option.keyTab |
Имя keytab-файла, из которого необходимо получить секретный ключ принципала |
— |
xasecure.audit.jaas.Client.option.principal |
Имя используемого принципала |
— |
xasecure.audit.jaas.Client.option.serviceName |
Имя пользователя или сервиса, для которого выполняется вход |
— |
xasecure.audit.jaas.Client.option.storeKey |
Установите значение |
false |
xasecure.audit.jaas.Client.option.useKeyTab |
Установите значение |
false |
xasecure.audit.jaas.Client.option.useTicketCache |
Установите значение |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
ranger.plugin.trino.access.cluster.name |
Имя для идентификации кластера Trino. Оно записывается в логи аудита, создаваемые плагином |
— |
ranger.plugin.trino.super.users |
Список имен пользователей, разделенных запятыми, которые имеют права суперпользователя |
— |
ranger.plugin.trino.super.groups |
Список групп, разделенных запятыми. Пользователи из этих групп считаются суперпользователями |
— |
ranger.plugin.trino.use.rangerGroups |
Определяет, извлекать ли матрицу соответствия пользователей группам из Apache Ranger |
— |
ranger.plugin.trino.policy.rest.url |
URL для Ranger Admin |
— |
ranger.plugin.trino.service.name |
Имя сервиса Ranger, хранящего политики для данного экземпляра Trino |
— |
ranger.plugin.trino.policy.cache.dir |
Директория, в которой хранятся политики Ranger после успешного извлечения из источника |
/srv/ranger/trino/policycache |
ranger.plugin.trino.policy.pollIntervalMs |
Период проверки политик на актуальность в миллисекундах |
30000 |
ranger.plugin.trino.policy.rest.client.connection.timeoutMs |
Тайм-аут соединения клиента Ranger REST в миллисекундах |
120000 |
ranger.plugin.trino.policy.rest.client.read.timeoutMs |
Тайм-аут чтения клиента Ranger REST в миллисекундах |
30000 |
ranger.plugin.trino.enable.implicit.userstore.enricher |
Определяет, использовать ли UserStoreEnricher для извлечения атрибутов пользователей и групп при использовани макросов или скриптов в фильтрах строк начиная с версии Ranger 2.3 |
true |
ranger.plugin.trino.policy.rest.ssl.config.file |
Путь к конфигурационному файлу RangerRestClient SSL-плагина Trino |
/etc/hbase/conf/ranger-hbase-policymgr-ssl.xml |
ranger.plugin.trino.ugi.initialize |
Определяет, инициализировать ли идентификатор Kerberos, использованный для аутентификации на сервере Ranger Admin |
true |
ranger.plugin.trino.ugi.login.type |
Тип логина. Используйте значение |
keytab |
ranger.plugin.trino.ugi.keytab.principal |
Принципал Kerberos |
— |
ranger.plugin.trino.ugi.keytab.file |
Расположение keytab-файла |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
xasecure.policymgr.clientssl.keystore |
Путь к keystore-файлу, который использует Ranger |
— |
xasecure.policymgr.clientssl.keystore.credential.file |
Путь к файлу с паролями для keystore-файла |
/etc/trino/conf/ranger-trino.jceks |
xasecure.policymgr.clientssl.truststore.credential.file |
Путь к truststore-файлу с учетными данными |
/etc/trino/conf/ranger-trino.jceks |
xasecure.policymgr.clientssl.truststore |
Путь к truststore-файлу, который использует Ranger |
— |
xasecure.policymgr.clientssl.keystore.password |
Пароль для доступа к keystore-файлу |
— |
xasecure.policymgr.clientssl.truststore.password |
Пароль для доступа к truststore-файлу |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
access-control.name |
Тип контроля доступа. Возможные значения:
|
default |
ranger.service.name |
Имя сервиса Ranger с политиками |
— |
ranger.plugin.config.resource |
Список конфигурационных файлов плагина Ranger, разделенных запятыми. Относительные пути разрешаются динамически поиском в classpath |
— |
ranger.hadoop.config.resource |
Список конфигурационных файлов Hadoop, разделенных запятыми. Относительные пути разрешаются динамически поиском в classpath |
— |
security.config-file |
Путь к конфигурационному файлу с правилами доступа |
/etc/trino/conf/rules.json |
opa.policy.uri |
URL OPA-сервера (open policy agent) |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Custom Hive configuration |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации Hive |
— |
Custom Iceberg configuration |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации Iceberg |
— |
Custom resource-groups.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации менеджера групп ресурсов |
— |
Custom session-property-config.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации менеджеров свойств сессии |
— |
Custom exchange-manager.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации менеджера Exchange |
— |
Custom log.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурации логирования |
— |
Custom ranger-trino-audit.xml |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-trino-audit.xml |
— |
Custom ranger-trino-security.xml |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-trino-security.xml |
— |
Custom ranger-trino-policymgr-ssl.xml |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-trino-policymgr-ssl.xml |
— |
Ranger plugin enabled |
Определяет, использовать ли плагин Ranger для Trino |
false |
resource-groups.json |
Файл JSON, содержащий конфигурацию менеджера групп ресурсов |
|
session-property-config.json |
Файл JSON, содержащий конфигурацию менеджеров свойств сессии |
|
ad-runtime-utils |
Файл конфигурации YAML, содержащий параметры установки Java: версию, путь установки и переменную среды |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
coordinator |
Определяет, выступает ли данный узел как координатор |
true |
http-server.authentication.allow-insecure-over-http |
Определяет, разрешены ли небезопасные HTTP-соединения при включенной аутентификации |
false |
node-scheduler.include-coordinator |
Определяет, должен ли узел-координатор также планировать и выполнять запросы |
false |
http-server.http.port |
HTTP-порт сервера |
18188 |
discovery.uri |
URI для сервиса обнаружения. Обычно — полное доменное имя (FQDN) с номером порта |
— |
join-distribution-type |
Используемый тип распределенного JOIN |
AUTOMATIC |
redistribute-writes |
Определяет, перераспределять ли данные перед записью |
true |
query.max-cpu-time |
Максимальное количество процессорного времени, которое может быть использовано для выполнения запроса по всему кластеру. Запросы, выполнение которых превышает это ограничение, принудительно завершаются |
— |
query.max-memory-per-node |
Максимальное количество памяти для выполнения запроса на узле Trino worker |
— |
query.max-memory |
Максимальное количество памяти для выполнения запроса по всему кластеру |
20GB |
query.max-total-memory |
Максимальное количество памяти для выполнения запроса по всему кластеру, включая отзываемую память |
40GB |
memory.heap-headroom-per-node |
Количество памяти, оставляемое для резерва (буфер) в heap-памяти Java-машины для распределения, не отслеживаемого Trino |
— |
exchange.deduplication-buffer-size |
Размер буфера, используемого для данных спулов при отказоустойчивом выполнении |
— |
query.client.timeout |
Тайм-аут для работы кластера без связи с клиентским приложением прежде чем он завершит работу |
5m |
query.execution-policy |
Алгоритм для организации обработки всех стадий запроса |
phased |
query.determine-partition-count-for-write-enabled |
Определяет, выбирается ли количество секций на основе количества данных, прочитанных и обработанных запросом для запросов на запись |
false |
query.max-hash-partition-count |
Максимальное количество секций для использования при обработке распределенных операций |
100 |
query.min-hash-partition-count-for-write |
Минимальное количество секций для использования при обработке распределенных операций в запросах на запись |
50 |
query.max-writer-task-count |
Максимальное количество задач, которые примут участие в записи данных во время выполнения запросов |
100 |
query.low-memory-killer.policy |
Определяет режим принудительного завершения выполнения запросов при исчерпании памяти |
total-reservation-on-blocked-nodes |
query.max-execution-time |
Максимальное время исполнения запроса в кластере перед его завершением. Это время не включает в себя анализ, планирование и нахождение в очереди |
100d |
query.max-length |
Максимальное количество символов в тексте SQL-запроса. Запросы длиннее этого значения не обрабатываются и завершаются с ошибкой |
1000000 |
query.max-planning-time |
Максимальное количество времени для планирования исполнения запроса |
10m |
query.max-run-time |
Максимальное количество времени для обработки запроса в кластере перед его завершением |
100d |
query.max-scan-physical-bytes |
Максимальное количество байт, которое может быть сканировано запросом в процессе исполнения |
— |
query.remote-task.max-error-duration |
Тайм-аут для удаленных (remote) задач, которым не удается связаться с Trino coordinator. Если координатор не получает никаких данных от удаленной задачи в течение этого времени, он считает задачу завершенной с ошибкой |
1m |
query.max-stage-count |
Максимальное разрешенное количество стадий на один запрос |
150 |
query.max-history |
Максимальное количество запросов, хранимое в истории для предоставления статистики и другой информации, а также для отображения данных в веб-интерфейсе |
100 |
query.min-expire-age |
Минимальный возраст запроса в истории для того, чтобы он мог считаться неактуальным. Неактуальные запросы удаляются из буфера истории и становятся недоступными в веб-интерфейсе |
15m |
query.remote-task.enable-adaptive-request-size |
Определяет, используется ли динамическая генерация сплитов серверных запросов, присылаемых задачами. Это может предотвратить ошибки исчерпания памяти для больших схем |
true |
query.remote-task.guaranteed-splits-per-task |
Минимальное количество сплитов, которые должны быть назначены каждой удаленной задаче для обеспечения минимального количества работы у каждой из этих задач |
3 |
query.remote-task.max-request-size |
Максимальный размер одного запроса, создаваемого удаленной задачей. Для работы этого параметра необходимо, чтобы параметр |
8MB |
query.remote-task.request-size-headroom |
Определяет размер резервной памяти, которую необходимо выделять сверх размера данных запроса. Для работы этого параметра необходимо, чтобы параметр |
2MB |
query.info-url-template |
URL для перенаправления клиентов к альтернативному расположению информации запроса |
— |
retry-policy |
Политика повторного запуска для отказоустойчивого выполнения |
NONE |
catalog.prune.update-interval |
Интервал для сокращения отброшенных каталогов. Для работы этого параметра необходимо, чтобы параметр |
5s |
catalog.store |
При значении этого параметра, равном |
— |
sql.forced-session-time-zone |
Определяет, устанавливать ли принудительно часовой пояс для всех обрабатываемых запросов в заданное значение и таким образом игнорировать часовой пояс клиента. Часовой пояс должен быть задан строкой |
— |
sql.default-catalog |
Каталог по умолчанию для всех клиентов. Любая конфигурация каталога по умолчанию, предоставляемая клиентом, перезаписывает это значение |
— |
sql.default-schema |
Схема по умолчанию для всех клиентов. Значением этого параметра должно являться имя схемы, допустимое для каталога по умолчанию. Любая конфигурация схемы по умолчанию, предоставляемая клиентом, перезаписывает это значение |
— |
sql.default-function-catalog |
Каталог по умолчанию для хранилища пользовательских функций для всех клиентов |
— |
sql.default-function-schema |
Схема по умолчанию для UDF-хранилища для всех клиентов |
— |
sql.path |
Набор путей по умолчанию к функциям или табличным функциям в определенных каталогах и схемах. Пути определяются в формате |
— |
spill-enabled |
Определяет, используется ли переброс памяти на диск во избежание превышения ограничений памяти для запроса |
false |
spiller-spill-path |
Путь для переброса памяти на диск |
— |
spiller-max-used-space-threshold |
Если для заданного пути переброса памяти процент использования дискового пространства превышает значение этого парамтра, то этот путь не будет использоваться для переброса |
0.9 |
spiller-threads |
Количество потоков переброса памяти. Увеличьте это значение, если его будет не хватать для насыщения диска, на который ведется переброс (например, при использовании RAID) |
4 |
max-spill-per-node |
Максимальный размер пространства, используемый всеми запросами на одном узле для переброса памяти. Это значение необходимо задавать только на узлах Trino worker |
100GB |
query-max-spill-per-node |
Максимальный размер пространства, используемый одним запросом на одном узле для переброса памяти. Это значение необходимо задавать только на узлах Trino worker |
100GB |
aggregation-operator-unspill-memory-limit |
Ограничение размера памяти, используемой для обратного переброса одним экземпляром оператора агрегации |
4MB |
spill-compression-codec |
Кодек компрессии, используемый при перебросе страниц памяти на диск |
NONE |
spill-encryption-enabled |
Установите значение |
false |
exchange.client-threads |
Количество потоков, используемых Exchange-клиентами для извлечения данных из других узлов Trino nodes. Более высокое значение этого параметра может привести к увеличению производительности для больших кластеров или кластеров с большой многопоточностью. Слишком большие значения могут привести к падению производительности из-за переключений контекста и дополнительного использования памяти |
25 |
exchange.concurrent-request-multiplier |
Множитель, определяющий количество одновременных запросов относительно доступного размера буфера памяти |
3 |
exchange.compression-codec |
Кодек, используемый для сжатия и распаковки файлов при обмене данными между узлами и exchange-хранилищем при отказоустойчивом режиме исполнения |
LZ4 |
exchange.data-integrity-verification |
Действие при обнаружении нарушения целостности данных |
ABORT |
exchange.max-buffer-size |
Размер буфера exchange-клиента, содержащего данные, полученные от остальных узлов перед началом их обработки |
32MB |
exchange.max-response-size |
Максимальный размер ответа, возвращаемого из exchange-запроса |
16MB |
sink.max-buffer-size |
Размер выходного буфера для данных задач, которые ожидают подбора задачами выше по плану исполнения |
32MB |
sink.max-broadcast-buffer-size |
Размер широковещательного буфера для данных задач, которые ожидают подбора задачами выше по плану исполнения |
200MB |
task.concurrency |
Локальная многопоточность по умолчанию для параллельных операторов (например, объединение и агрегация) |
— |
task.http-response-threads |
Максимальное количество потоков, которые могут быть созданы для обработки HTTP-ответов |
100 |
task.http-timeout-threads |
Количество потоков, используемых для обработки тайм-аутов при создании HTTP-ответов |
3 |
task.info-update-interval |
Интервал времени для обновления информации о задаче, используемый планировщиком. Более высокие значения могут привести к снижению нагрузки на процессор координатора, но также и к неоптимальному планированию генерации сплитов |
3s |
task.max-drivers-per-task |
Максимальное количество драйверов, которые задача может выполнять одновременно |
2147483647 |
task.max-partial-aggregation-memory |
Максимальный размер результата частичной агрегации для распределенных агрегаций |
16MB |
task.max-worker-threads |
Количество потоков, используемых узлом worker для обработки сплитов |
— |
task.min-drivers |
Целевое количество работающих leaf-сплитов на узле Trino worker |
— |
task.min-drivers-per-task |
Минимальное количество драйверов, которые гарантированно будут выполняться одновременно для одной задачи при условии, что у задачи остаются сплиты для обработки |
3 |
task.min-writer-count |
Минимальное количество одновременных потоков на запись для одного запроса одного узла Trino worker при условии, что не используются предпочтительное секционирование и масштабирование задач записи |
1 |
task.max-writer-count |
Максимальное количество одновременных потоков на запись для одного запроса одного узла Trino worker при условии, что не используются предпочтительное секционирование и масштабирование задач записи |
— |
task.interrupt-stuck-split-tasks-enabled |
Установите значение |
true |
task.interrupt-stuck-split-tasks-warning-threshold |
Ограничение на время выполнения сплитов, после которого выводится стек вызовов на эндпойнте /v1/maxActiveSplits и генерируются метрики JMX |
10m |
task.interrupt-stuck-split-tasks-timeout |
Тайм-аут блокировки потока обработки сплита, после которого Trino считает задачу завершенной с ошибкой |
10m |
task.interrupt-stuck-split-tasks-detection-interval |
Интервал проверки наличия сплитов, чье время обработки превышает значение параметра |
2m |
use-preferred-write-partitioning |
Определяет, включено ли использование предпочтительного секционирования записи. Если имеет значение |
true |
scale-writers |
Определяет, используется ли масштабирование записи с помощью динамического увеличения количества задач на запись в кластере |
true |
task.scale-writers.enabled |
Определяет, используется ли масштабирование количества одновременных обработчиков записи в одной задаче |
true |
writer-scaling-min-data-processed |
Минимальный размер несжатых данных, которые должны быть обработаны прежде чем может быть добавлен новый обработчик записи |
100MB |
optimizer.dictionary-aggregation |
Определяет, используется ли оптимизация для агрегации в справочниках |
false |
optimizer.optimize-hash-generation |
Установите значение |
false |
optimizer.optimize-metadata-queries |
Определяет, следует ли перемещать агрегацию после оператора |
true |
optimizer.distinct-aggregations-strategy |
Режим оптимизации, используемый для множественных раздельных агрегаций |
AUTOMATIC |
optimizer.push-table-write-through-union |
Определяет, использовать ли параллельную запись при использовании оператора |
true |
optimizer.join-reordering-strategy |
Режим переупорядочивания объединений. Значение |
AUTOMATIC |
optimizer.max-reordered-joins |
Максимальное количество объединений, которые могут быть переупорядочены за один раз, если параметр |
8 |
optimizer.optimize-duplicate-insensitive-joins |
Определяет, следует ли уменьшать количество строк, порождаемых при объединениях, если оптимизатор обнаруживает возможность пропуска строк в результате выполнения дублирующихся объединений |
true |
optimizer.use-exact-partitioning |
Определяет, следует ли заново секционировать данные, если секционирование в стадии ранее по плану исполнения не соответствует в точности тому, что ожидает стадия далее по плану исполнения |
false |
optimizer.use-table-scan-node-partitioning |
Определяет, следует ли при чтении таблиц использовать секционирование табличного узла, предоставленное коннектором |
true |
optimizer.table-scan-node-partitioning-min-bucket-to-task-ratio |
Минимальное соотношение количества bucket и задач, при достижении или превышении которого используется секционирование табличных узлов для сканирования |
0.5 |
optimizer.filter-conjunction-independence-factor |
Масштаб допуска независимости для оценки селективности конъюнкции множественных предикатов |
0.75 |
optimizer.join-multi-clause-independence-factor |
Масштаб допуска независимости для оценки результатов объединения множественных операторов |
0.25 |
optimizer.non-estimatable-predicate-approximation.enabled |
Определяет, следует ли использовать оптимизатор на основе затрат для определения необходимости повторного секционирования результатов стадии, которые уже были секционированы |
true |
optimizer.join-partitioned-build-min-row-count |
Минимальное количество строк на стороне сборки объединения, необходимое для использования секционированного поиска соединения |
1000000 |
optimizer.min-input-size-per-task |
Минимальный размер входных данных, необходимых для одной задачи |
5GB |
optimizer.min-input-rows-per-task |
Минимальное количество входных строк, необходимых для одной задачи |
10000000 |
log.annotation-file |
Имя файла с дополнительными свойствами, содержащего аннотации для добавления к сообщениям в логе для TCP-вывода или файлового вывода в формате JSON, определенного параметрами |
— |
log.path |
Путь к лог-файлу, используемому Trino. Этот путь является относительным к директории данных, заданной как |
— |
log.max-size |
Максимальный размер для лог-файла главного приложения |
100MB |
log.max-total-size |
Максимальный общий размер лог-файлов главного приложения |
1GB |
log.compression |
Формат компрессии, используемый для лог-файлов при ротации. Возможные значения: |
GZIP |
http-server.log.enabled |
Определяет, используется ли логирование для HTTP-сервера |
true |
http-server.log.compression.enabled |
Определяет, используется ли компрессия лог-файлов для HTTP-сервера |
true |
http-server.log.path |
Путь к лог-файлу HTTP-сервера |
/var/log/trino/http-request.log |
http-server.log.max-history |
Максимальное количество лог-файлов HTTP-сервера перед использованием ротации |
15 |
http-server.log.max-size |
Максимальный размер лог-файла HTTP-сервера |
— |
re2j.dfa-states-limit |
Максимальное количество состояний для использования, когда RE2J собирает быстрый, но потенциально ресурсоемкий детерминированный конечный автомат (ДКА) для поиска соответствий регулярных выражений |
2147483647 |
re2j.dfa-retries |
Количество повторных попыток использования алгоритма ДКА RE2J по достижении ограничения количества состояний. После этого для всех последующих вводных данных для этого запроса он использует недетерминированный конечный автомат (НКА), который является более медленным, но менее ресурсоемким |
5 |
http-server.authentication.type |
Механизм аутентификации для пользовательского доступа к Trino |
— |
node.internal-address-source |
Установите значение |
FQDN |
access-control.config-files |
Путь к файлу конфигурации контроля доступа |
/etc/trino/conf/access-control.properties |
password-authenticator.config-files |
Файл конфигурации Password Authenticator |
/etc/trino/conf/coordinator/password-authenticator.properties |
web-ui.user |
Имя пользователя для аутентификации в веб-интерфейсе |
trino |
internal-communication.shared-secret |
Строка, используемая узлами Trino из одного кластера для аутентификации в нем |
— |
web-ui.authentication.type |
Механизм аутентификации, используемый для пользовательского доступа к веб-интерфейсу |
NONE |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.authentication.krb5.service-name |
Имя сервиса Kerberos для аутентификации |
trino |
http-server.authentication.krb5.principal-hostname |
Сетевое имя хоста из принципала Kerberos |
— |
http-server.authentication.krb5.keytab |
Путь к файлу keytab для Kerberos-аутентификации |
/etc/security/keytabs/trino.service.keytab |
http.authentication.krb5.config |
Путь к файлу конфигурации Kerberos |
/etc/krb5.conf |
http-server.authentication.krb5.user-mapping.file |
Файл, содержащий правила для соотнесения принципалов Kerberos с локальными именами пользователей |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.http.enabled |
Определяет, включен ли HTTP для HTTP-сервера |
true |
internal-communication.https.required |
Определяет, используется ли SSL/TLS для всех внутренних коммуникаций |
false |
http-server.https.enabled |
Определяет, используется ли HTTPS для HTTP-сервера |
false |
http-server.https.port |
HTTPS-порт сервера |
18188 |
http-server.https.keystore.path |
Путь к файлу keystore для HTTPS |
— |
http-server.https.keystore.key |
Пароль для keystore, используемый в HTTPS |
— |
http-server.https.truststore.path |
Путь к файлу truststore для HTTPS |
— |
http-server.https.truststore.key |
Пароль для truststore, используемый в HTTPS |
— |
internal-communication.https.keystore.path |
Путь к файлу keystore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.keystore.key |
Пароль для keystore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.truststore.path |
Путь к файлу truststore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.truststore.key |
Пароль для truststore для внутренней коммуникации в кластере Trino через HTTPS |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
password-authenticator.name |
Название реализации аутентификатора |
ldap |
ldap.url |
URL LDAP-сервера |
— |
ldap.ssl.truststore.path |
Пусть к PEM- или JKS-файлу keystore |
— |
ldap.user-bind-pattern |
Пользовательская строка соединения LDAP для аутентификации по паролю. Должна содержать шаблон |
${USER}@example.com |
ldap.allow-insecure |
Определяет, разрешено ли подключение к LDAP-серверу без TLS |
false |
ldap.user-base-dn |
База поиска LDAP для пользователя, пытающегося подключиться к серверу. Пример: |
— |
ldap.bind-dn |
LDAP-имя пользователя, используемое Trino при создании запросов на членство в группе. Пример: |
— |
ldap.bind-password |
Пароль, используемый Trino при создании запросов на членство в группе |
— |
ldap.group-auth-pattern |
Задает LDAP-запрос для авторизации членства в группе LDAP |
(&(objectClass=person)(sAMAccountName=${USER})(memberof=CN=AuthorizedGroup,OU=Groups,DC=example,DC=com)) |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.authentication.oauth2.issuer |
URL сервера авторизации OAuth2 |
— |
http-server.authentication.oauth2.client-id |
Идентификатор клиента OAuth2 для Trino |
— |
http-server.authentication.oauth2.client-secret |
Пароль клиента OAuth2 для аутентификации |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.authentication.jwt.key-file |
Определяет либо URL сервиса JWKS, либо путь к файлу PEM или HMAC |
— |
http-server.authentication.jwt.required-issuer |
Определяет строку, которая должна совпадать с полем автора JWT ( |
— |
http-server.authentication.jwt.required-audience |
Определяет строку, которая должна совпадать с полем аудитории JWT ( |
— |
http-server.authentication.jwt.principal-field |
Поле в JWT, идентифицирующее субъект |
sub |
http-server.authentication.jwt.user-mapping.pattern |
Шаблон регулярного выражения для приведения всех имен пользователей к формату Trino для JWT-аутентификации |
— |
http-server.authentication.jwt.user-mapping.file |
Файл JSON с правилами приведения пользователей для JWT-аутентификации |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.authentication.certificate.user-mapping.pattern |
Шаблон регулярного выражения для приведения всех имен пользователей к формату Trino для аутентификации на основе сертификатов |
— |
http-server.authentication.certificate.user-mapping.file |
Путь к файлу JSON с правилами приведения пользователей для аутентификации на основе сертификатов |
/etc/trino/conf/coordinator/user-mapping.json |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
password-authenticator.name |
Определяет название реализации аутентификатора |
file |
file.password-file |
Путь к файлу пароля |
— |
file.refresh-period |
Определяет, как часто нужно перезагружать файл пароля |
5s |
file.auth-token-cache.max-size |
Максимальное количество аутентифицированных паролей в кеше |
1000 |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
catalog.management |
Тип менеджера каталогов |
static |
Postgres JDBC URL |
URL для JDBC-подключения к хранилищу каталогов Postgres |
jdbc:postgresql://{{ groups['adpg.adpg'][0] | d(omit) }}:5432/catalog |
Postgres username |
Имя пользователя хранилища каталогов Postgres для JDBC-подключения |
catalog |
Postgres password |
Пароль для JDBC-подключения к хранилищу каталогов Postgres |
— |
Enable cleanup |
Определяет, включена ли очистка каталогов старых версий |
true |
Encryption password |
Пароль для шифрования свойств |
— |
RegEx pattern |
Шаблон регулярного выражения для определения свойств, подлежащих шифрованию |
— |
Cleanup old version catalogs |
Интервал очистки каталогов старых версий. Минимальное значение -- |
30d |
Time to live of old version catalogs |
Время жизни (TTL) каталогов старых версий. Минимальное значение — |
365d |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
node.environment |
Название окружения, в котором функционирует узел. Должно совпадать для всех узлов кластера Trino |
adh |
node.id |
Уникальный идентификатор узла |
— |
node.data-dir |
Путь к директории для хранения данных узла |
/srv/trino/data/coordinator |
node.server-log-file |
Путь к журнальному файлу сервера для узла |
/var/log/trino/coordinator/server.log |
node.launcher-log-file |
Путь к журнальному файлу запуска для узла |
/var/log/trino/coordinator/launcher.log |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
user-mapping.json |
Содержимое файла user-mapping.json, определяющего регулярные выражения для приведения всех имен пользователей к формату Trino |
|
env.sh |
Содержимое файла env.sh, определяющего настройки окружения для Trino |
|
jvm.config |
Содержимое файла jvm.config, определяющего настройки виртуальной машины Java для Trino |
|
Custom password-authenticator.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле password-authenticator.properties |
— |
Custom config.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле config.properties |
— |
Custom node.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле node.properties |
— |
Enable custom ulimits |
Включение этой опции позволяет указать ограничения на использование ресурсов для процесса (ulimits). Если значения не указаны, будут использованы системные настройки по умолчанию. Настройки ulimit описаны в таблице ниже |
|
| Параметр | Описание | Соответствующая опция команды ulimit в CentOS |
|---|---|---|
LimitCPU |
Ограничение в секундах на количество процессорного времени, которое может потреблять процесс |
cpu time ( -t) |
LimitFSIZE |
Максимальный размер файлов, которые может создать процесс, в блоках по 512 байт |
file size ( -f) |
LimitDATA |
Максимальный размер сегмента данных процесса, в килобайтах |
data seg size ( -d) |
LimitSTACK |
Максимальный размер стека, выделенный процессу, в килобайтах |
stack size ( -s) |
LimitCORE |
Максимальный размер файла дампа (core dump) в байтах, который процесс может сохранить, в блоках по 512 байт |
core file size ( -c) |
LimitRSS |
Максимальное количество памяти RAM (resident set size), которое может быть выделено процессу, в килобайтах |
max memory size ( -m) |
LimitNOFILE |
Максимальное количество дескрипторов открытых файлов, разрешенное для процесса |
open files ( -n) |
LimitAS |
Максимальный размер виртуальной памяти (адресного пространства) процесса, в килобайтах |
virtual memory ( -v) |
LimitNPROC |
Максимальное количество процессов |
max user processes ( -u) |
LimitMEMLOCK |
Максимальный размер памяти, который может быть заблокирован для процесса, в килобайтах. Блокировка памяти гарантирует, что память всегда находится в оперативной памяти (RAM) и файл подкачки не используется |
max locked memory ( -l) |
LimitLOCKS |
Максимальное количество файлов, заблокированных процессом |
file locks ( -x) |
LimitSIGPENDING |
Максимальное количество сигналов, ожидающих доставки в вызывающий поток |
pending signals ( -i) |
LimitMSGQUEUE |
Максимальное количество байтов в очередях сообщений POSIX. Очереди сообщений POSIX позволяют процессам обмениваться данными в форме сообщений |
POSIX message queues ( -q) |
LimitNICE |
Максимальный уровень приоритета NICE, который может быть назначен процессу |
scheduling priority ( -e) |
LimitRTPRIO |
Максимальный приоритет планирования в реальном времени |
real-time priority ( -r) |
LimitRTTIME |
Максимальный размер буфера конвейера (pipe), в блоках по 512 байт |
pipe size ( -p) |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
coordinator |
Определяет, выступает ли данный узел как координатор |
false |
http-server.authentication.allow-insecure-over-http |
Определяет, разрешены ли небезопасные HTTP-соединения при включенной аутентификации |
true |
http-server.http.port |
HTTP-порт сервера |
18189 |
discovery.uri |
URI для сервиса обнаружения. Обычно — полное доменное имя (FQDN) с номером порта |
— |
join-distribution-type |
Используемый тип распределенного JOIN |
AUTOMATIC |
redistribute-writes |
Определяет, перераспределять ли данные перед записью |
true |
query.max-cpu-time |
Максимальное количество процессорного времени, которое может быть использовано запросом по всему кластеру. Запросы, превышающие это ограничение, принудительно завершаются |
1_000_000_000d |
query.max-memory-per-node |
Максимальное количество памяти, которое запрос может использовать на узле Trino worker |
— |
query.max-memory |
Максимальное количество памяти, которое запрос может использовать по всему кластеру |
20GB |
query.max-total-memory |
Максимальное количество памяти, которое запрос может использовать по всему кластеру, включая отзываемую память |
40GB |
memory.heap-headroom-per-node |
Количество памяти, оставляемое для резерва (буфер) в heap-памяти Java-машины для распределения, не отслеживаемого Trino |
— |
exchange.deduplication-buffer-size |
Размер буфера, используемого для данных спулов при отказоустойчивом выполнении |
— |
query.client.timeout |
Тайм-аут для работы кластера без связи с клиентским приложением прежде чем он завершит работу |
5m |
query.execution-policy |
Алгоритм для организации обработки всех стадий запроса |
phased |
query.determine-partition-count-for-write-enabled |
Определяет, выбирается ли количество секций на количестве данных, которые были считаны и подготовлены запросом для запросов на запись |
false |
query.max-hash-partition-count |
Максимальное количество секций для использования при обработке распределенных операций |
100 |
query.min-hash-partition-count-for-write |
Минимальное количество секций для использования при обработке распределенных операций в запросах на запись |
50 |
query.max-writer-task-count |
Максимальное количество задач, которые примут участие в записи данных во время запросов |
100 |
query.low-memory-killer.policy |
Определяет режим принудительного завершения запросов при исчерпании памяти |
total-reservation-on-blocked-nodes |
query.max-execution-time |
Максимальное время исполнения запроса в кластере перед его завершением. Это время не включает в себя анализ, планирование и нахождение в очереди |
100d |
query.max-length |
Максимальное количество символов в тексте SQL-запроса. Запросы длиннее этого значения не обрабатываются и завершаются с ошибкой |
1000000 |
query.max-planning-time |
Максимальное количество времени для планирования исполнения запроса |
10m |
query.max-run-time |
Максимальное количество времени для обработки запроса в кластере перед его завершением |
100d |
query.max-scan-physical-bytes |
Максимальное количество байт, которое может быть сканировано запросом в процессе исполнения |
— |
query.remote-task.max-error-duration |
Тайм-аут для удаленных (remote) задач, которым не удается связаться с Trino coordinator. Если координатор не получает никаких данных от удаленной задачи в течение этого времени, он считает задачу завершенной с ошибкой |
1m |
query.max-stage-count |
Максимальное разрешенное количество стадий на один запрос |
150 |
query.max-history |
Максимальное количество запросов, хранимое в истории для предоставления статистики и другой информации, а также для отображения данных в веб-интерфейсе |
100 |
query.min-expire-age |
Минимальный возраст запроса в истории для того, чтобы он мог считаться неактуальным. Неактуальные запросы удаляются из буфера истории и становятся недоступными в веб-интерфейсе |
15m |
query.remote-task.enable-adaptive-request-size |
Определяет, используется ли динамическая генерация сплитов серверных запросов, присылаемых задачами. Это может предотвратить ошибки исчерпания памяти для больших схем |
true |
query.remote-task.guaranteed-splits-per-task |
Минимальное количество сплитов, которые должны быть назначены каждой удаленной задаче для обеспечения минимального количества работы у каждой из этих задач |
3 |
query.remote-task.max-request-size |
Максимальный размер одного запроса, создаваемого удаленной задачей. Для работы этого параметра необходимо, чтобы был включен параметр |
8MB |
query.remote-task.request-size-headroom |
Определяет размер резервной памяти, которую необходимо выделять сверх размера данных запроса. Для работы этого параметра необходимо, чтобы был включен параметр |
2MB |
query.info-url-template |
URL для перенаправления клиентов к альтернативному расположению информации запроса |
— |
retry-policy |
Политика повторного запуска для отказоустойчивого выполнения |
NONE |
sql.forced-session-time-zone |
Определяет, устанавливать ли принудительно часовой пояс для всех обрабатываемых запросов в заданное значение и таким образом игнорировать часовой пояс клиента. Часовой пояс должен быть задан строкой |
— |
sql.default-catalog |
Каталог по умолчанию для всех клиентов. Любая конфигурация каталога по умолчанию, предоставляемая клиентом, перезаписывает это значение |
— |
sql.default-schema |
Схема по умолчанию для всех клиентов. Значением этого параметра должно являться имя схемы, допустимое для каталога по умолчанию. Любая конфигурация схемы по умолчанию, предоставляемая клиентом, перезаписывает это значение |
— |
sql.default-function-catalog |
Каталог по умолчанию для хранилища пользовательских функций для всех клиентов |
— |
sql.default-function-schema |
Схема по умолчанию для UDF-хранилища для всех клиентов |
— |
sql.path |
Набор путей по умолчанию к функциям или табличным функциям в определенных каталогах и схемах. Пути определяются в формате |
— |
spill-enabled |
Определяет, используется ли переброс памяти на диск во избежание превышения ограничений памяти для запроса |
false |
spiller-spill-path |
Путь для переброса памяти на диск |
— |
spiller-max-used-space-threshold |
Если для заданного пути переброса памяти процент использования дискового пространства превышает значение этого парамтра, то этот путь не будет использоваться для переброса |
0.9 |
spiller-threads |
Количество потоков переброса памяти. Увеличьте это значение, если его будет не хватать для насыщения диска, на который ведется переброс (например, при использовании RAID) |
4 |
max-spill-per-node |
Максимальный размер пространства, используемый всеми запросами на одном узле для переброса памяти. Это значение необходимо задавать только на узлах Trino worker |
100GB |
query-max-spill-per-node |
Максимальный размер пространства, используемый одним запросом на одном узле для переброса памяти. Это значение необходимо задавать только на узлах Trino worker |
100GB |
aggregation-operator-unspill-memory-limit |
Ограничение размера памяти, используемой для обратного переброса одним экземпляром оператора агрегации |
4MB |
spill-compression-codec |
Кодек компрессии, используемый при перебросе страниц памяти на диск |
NONE |
spill-encryption-enabled |
Установите значение |
false |
exchange.client-threads |
Количество потоков, используемых Exchange-клиентами для извлечения данных из других узлов Trino nodes. Более высокое значение этого параметра может привести к увеличению производительности для больших кластеров или кластеров с большой многопоточностью. Слишком большие значения могут привести к падению производительности из-за переключений контекста и дополнительного использования памяти |
25 |
exchange.concurrent-request-multiplier |
Множитель, определяющий количество одновременных запросов относительно доступного размера буфера памяти |
3 |
exchange.compression-codec |
Кодек, используемый для сжатия и распаковки файлов при обмене данными между узлами и exchange-хранилищем при отказоустойчивом режиме исполнения |
LZ4 |
exchange.data-integrity-verification |
Действие при обнаружении нарушения целостности данных |
ABORT |
exchange.max-buffer-size |
Размер буфера exchange-клиента, содержащего данные, полученные от остальных узлов перед началом их обработки |
32MB |
exchange.max-response-size |
Максимальный размер ответа, возвращаемого из exchange-запроса |
16MB |
sink.max-buffer-size |
Размер выходного буфера для данных задач, которые ожидают подбора задачами выше по плану исполнения |
32MB |
sink.max-broadcast-buffer-size |
Размер широковещательного буфера для данных задач, которые ожидают подбора задачами выше по плану исполнения |
200MB |
task.concurrency |
Локальная многопоточность по умолчанию для параллельных операторов (например, объединение и агрегация) |
— |
task.http-response-threads |
Максимальное количество потоков, которые могут быть созданы для обработки HTTP-ответов |
100 |
task.http-timeout-threads |
Количество потоков, используемых для обработки тайм-аутов при создании HTTP-ответов |
3 |
task.info-update-interval |
Интервал времени для обновления информации о задаче, используемый планировщиком. Более высокие значения могут привести к снижению нагрузки на процессор координатора, но также и к неоптимальному планированию генерации сплитов |
3s |
task.max-drivers-per-task |
Максимальное количество драйверов, которые задача может выполнять одновременно |
2147483647 |
task.max-partial-aggregation-memory |
Максимальный размер результата частичной агрегации для распределенных агрегаций |
16MB |
task.max-worker-threads |
Количество потоков, используемых узлом worker для обработки сплитов |
— |
task.min-drivers |
Целевое количество работающих leaf-сплитов на узле Trino worker |
— |
task.min-drivers-per-task |
Минимальное количество драйверов, которые гарантированно будут выполняться одновременно для одной задачи при условии, что у задачи остаются сплиты для обработки |
3 |
task.min-writer-count |
Минимальное количество одновременных потоков на запись для одного запроса одного узла Trino worker при условии, что не используются предпочтительное секционирование и масштабирование задач записи |
1 |
task.max-writer-count |
Максимальное количество одновременных потоков на запись для одного запроса одного узла Trino worker при условии, что не используются предпочтительное секционирование и масштабирование задач записи |
— |
task.interrupt-stuck-split-tasks-enabled |
Установите значение |
true |
task.interrupt-stuck-split-tasks-warning-threshold |
Ограничение на время выполнения сплитов, после которого выводится стек вызовов на эндпойнте /v1/maxActiveSplits и генерируются метрики JMX |
10m |
task.interrupt-stuck-split-tasks-timeout |
Тайм-аут блокировки потока обработки сплита, после которого Trino считает задачу завершенной с ошибкой |
10m |
task.interrupt-stuck-split-tasks-detection-interval |
Интервал проверки наличия сплитов, чье время обработки превышает значение параметра |
2m |
use-preferred-write-partitioning |
Определяет, включено ли использование предпочтительного секционирования записи. При значении |
true |
scale-writers |
Определяет, используется ли масштабирование записи с помощью динамического увеличения количества задач на запись в кластере |
true |
task.scale-writers.enabled |
Определяет, используется ли масштабирование количества одновременных обработчиков записи в одной задаче |
true |
writer-scaling-min-data-processed |
Минимальный размер несжатых данных, которые должны быть обработаны прежде чем может быть добавлен новый обработчик записи |
100MB |
node-scheduler.max-splits-per-node |
Целевое значение общего количества сплитов, которые могут выполняться на каждом узле Trino worker, при условии, что все сплиты имеют стандартный вес |
256 |
node-scheduler.min-pending-splits-per-task |
Минимальное количество сплитов со стандартным весом, не находящихся в обработке, которые гарантированно будут распределены на узел (даже если узел уже достиг предела общего количества сплитов) для одной задачи, при условии, что у задачи остались сплиты для обработки |
16 |
node-scheduler.max-adjusted-pending-splits-per-task |
Максимальное количество сплитов со стандартным весом, не находящихся в обработке, которые гарантированно будут распределены на узел (даже если узел уже достиг предела общего количества сплитов) для одной задачи, при условии, что у задачи остались сплиты для обработки |
2000 |
node-scheduler.max-unacknowledged-splits-per-task |
Максимальное количество сплитов, которые либо стоят в очереди координатора, но еще не отправлены, либо получены Trino worker с подтверждением |
2000 |
node-scheduler.min-candidates |
Минимальное количество узлов-кандидатов, которые должны пройти оценку планировщиком при выборе узла для генерации сплита |
10 |
node-scheduler.policy |
Политика планировщика при выборе узлов для генерации сплита |
uniform |
optimizer.dictionary-aggregation |
Определяет, используется ли оптимизация для агрегации в справочниках |
false |
optimizer.optimize-hash-generation |
Установите значение |
false |
optimizer.optimize-metadata-queries |
Определяет, следует ли перемещать агрегацию после оператора |
true |
optimizer.distinct-aggregations-strategy |
Режим оптимизации, используемый для множественных раздельных агрегаций |
AUTOMATIC |
optimizer.push-table-write-through-union |
Определяет, использовать ли параллельную запись при использовании оператора |
true |
optimizer.join-reordering-strategy |
Режим переупорядочивания объединений. Значение |
AUTOMATIC |
optimizer.max-reordered-joins |
Максимальное количество объединений, которые могут быть переупорядочены за один раз, если параметр |
8 |
optimizer.optimize-duplicate-insensitive-joins |
Определяет, следует ли уменьшать количество строк, порождаемых при объединениях, если оптимизатор обнаруживает возможность пропуска строк в результате выполнения дублирующихся объединений |
true |
optimizer.use-exact-partitioning |
Определяет, следует ли заново секционировать данные, если секционирование в предыдущей стадии по плану исполнения не соответствует в точности тому, что ожидает следующая стадия по плану исполнения |
false |
optimizer.use-table-scan-node-partitioning |
Определяет, следует ли при чтении таблиц использовать секционирование табличного узла, предоставленное коннектором |
true |
optimizer.table-scan-node-partitioning-min-bucket-to-task-ratio |
Минимальное соотношение количества bucket и задач, при достижении или превышении которого используется секционирование табличных узлов для сканирования |
0.5 |
optimizer.filter-conjunction-independence-factor |
Масштаб допуска независимости для оценки селективности конъюнкции множественных предикатов |
0.75 |
optimizer.join-multi-clause-independence-factor |
Масштаб допуска независимости для оценки результатов объединения множественных операторов |
0.25 |
optimizer.non-estimatable-predicate-approximation.enabled |
Определяет, следует ли использовать оптимизатор на основе затрат для определения необходимости повторного секционирования результатов стадии, которые уже были секционированы |
true |
optimizer.join-partitioned-build-min-row-count |
Минимальное количество строк на стороне сборки объединения, необходимое для использования секционированного поиска соединения |
1000000 |
optimizer.min-input-size-per-task |
Минимальный размер входных данных, необходимых для одной задачи |
5GB |
optimizer.min-input-rows-per-task |
Минимальное количество входных строк, необходимых для одной задачи |
10000000 |
log.annotation-file |
Имя файла с дополнительными свойствами, содержащего аннотации для добавления к сообщениям в логе для TCP-вывода или файлового вывода в формате JSON, определенного параметрами |
— |
log.path |
Путь к лог-файлу, используемому Trino. Этот путь является относительным к директории данных, заданной как |
— |
log.max-size |
Максимальный размер для лог-файла главного приложения |
100MB |
log.max-total-size |
Максимальный общий размер лог-файлов главного приложения |
1GB |
log.compression |
Формат компрессии, используемый для лог-файлов при ротации. Возможные значения: |
GZIP |
http-server.log.enabled |
Определяет, используется ли логирование для HTTP-сервера |
true |
http-server.log.compression.enabled |
Определяет, используется ли компрессия лог-файлов для HTTP-сервера |
true |
http-server.log.path |
Путь к лог-файлу HTTP-сервера |
/var/log/trino/http-request.log |
http-server.log.max-history |
Максимальное количество лог-файлов HTTP-сервера перед использованием ротации |
15 |
http-server.log.max-size |
Максимальный размер лог-файла HTTP-сервера |
— |
re2j.dfa-states-limit |
Максимальное количество состояний для использования, когда RE2J собирает быстрый, но потенциально ресурсоемкий детерминированный конечный автомат (ДКА) для поиска соответствий регулярных выражений |
2147483647 |
re2j.dfa-retries |
Количество повторных попыток использования алгоритма ДКА RE2J по достижении ограничения количества состояний. После этого для всех последующих вводных данных для этого запроса он использует недетерминированный конечный автомат (НКА), который является более медленным, но менее ресурсоемким |
5 |
node.internal-address-source |
Установите значение |
FQDN |
access-control.config-files |
Путь к файлу конфигурации контроля доступа |
/etc/trino/conf/access-control.properties |
internal-communication.shared-secret |
Строка, используемая координаторами и исполнителями одного и того же кластера для аутентификации внутри него |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.authentication.krb5.service-name |
Имя сервера Kerberos для аутентификации |
HTTP |
http-server.authentication.krb5.principal-hostname |
Принципал имени узла для аутентификации Kerberos |
— |
http-server.authentication.krb5.keytab |
Путь к файлу keytab для аутентификации Kerberos |
/etc/security/keytabs/HTTP.service.keytab |
http.authentication.krb5.config |
Путь к конфигурационному файлу Kerberos |
/etc/krb5.conf |
http-server.authentication.krb5.user-mapping.file |
Файл, содержащий правила для соотнесения принципалов Kerberos с локальными именами пользователей |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
http-server.http.enabled |
Определяет, включен ли HTTP для HTTP-сервера |
true |
internal-communication.https.required |
Определяет, используется ли SSL/TLS для всех внутренних коммуникаций |
false |
http-server.https.enabled |
Определяет, используется ли HTTPS для HTTP-сервера |
false |
http-server.https.port |
HTTPS-порт сервера |
18189 |
http-server.https.keystore.path |
Путь к файлу keystore для HTTPS |
— |
http-server.https.keystore.key |
Пароль для keystore, используемый в HTTPS |
— |
http-server.https.truststore.path |
Путь к файлу truststore для HTTPS |
— |
http-server.https.truststore.key |
Пароль для truststore, используемый в HTTPS |
— |
internal-communication.https.keystore.path |
Путь к файлу keystore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.keystore.key |
Пароль для keystore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.truststore.path |
Путь к файлу truststore для внутренней коммуникации в кластере Trino через HTTPS |
— |
internal-communication.https.truststore.key |
Пароль для truststore для внутренней коммуникации в кластере Trino через HTTPS |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
node.environment |
Название окружения, в котором функционирует узел. Должно совпадать для всех узлов кластера Trino |
adh |
node.id |
Уникальный идентификатор узла |
— |
node.data-dir |
Путь к директории для хранения данных узла |
/srv/trino/data/worker |
catalog.config-dir |
Путь к директории для конфигураций каталога |
/etc/trino/conf/catalog |
node.server-log-file |
Путь к журнальному файлу сервера для узла |
/var/log/trino/worker/server.log |
node.launcher-log-file |
Путь к журнальному файлу запуска для узла |
/var/log/trino/worker/launcher.log |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
env.sh |
Содержимое файла env.sh, определяющего настройки окружения для Trino |
|
jvm.config |
Содержимое файла jvm.config, определяющего настройки виртуальной машины Java для Trino |
|
Custom config.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле config.properties |
— |
Custom node.properties |
В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле node.properties |
— |
Enable custom ulimits |
Включение этой опции позволяет указать ограничения на использование ресурсов для процесса (ulimits). Если значения не указаны, будут использованы системные настройки по умолчанию. Настройки ulimit описаны в таблице ниже |
|
| Параметр | Описание | Соответствующая опция команды ulimit в CentOS |
|---|---|---|
LimitCPU |
Ограничение в секундах на количество процессорного времени, которое может потреблять процесс |
cpu time ( -t) |
LimitFSIZE |
Максимальный размер файлов, которые может создать процесс, в блоках по 512 байт |
file size ( -f) |
LimitDATA |
Максимальный размер сегмента данных процесса, в килобайтах |
data seg size ( -d) |
LimitSTACK |
Максимальный размер стека, выделенный процессу, в килобайтах |
stack size ( -s) |
LimitCORE |
Максимальный размер файла дампа (core dump) в байтах, который процесс может сохранить, в блоках по 512 байт |
core file size ( -c) |
LimitRSS |
Максимальное количество памяти RAM (resident set size), которое может быть выделено процессу, в килобайтах |
max memory size ( -m) |
LimitNOFILE |
Максимальное количество дескрипторов открытых файлов, разрешенное для процесса |
open files ( -n) |
LimitAS |
Максимальный размер виртуальной памяти (адресного пространства) процесса, в килобайтах |
virtual memory ( -v) |
LimitNPROC |
Максимальное количество процессов |
max user processes ( -u) |
LimitMEMLOCK |
Максимальный размер памяти, который может быть заблокирован для процесса, в килобайтах. Блокировка памяти гарантирует, что память всегда находится в оперативной памяти (RAM) и файл подкачки не используется |
max locked memory ( -l) |
LimitLOCKS |
Максимальное количество файлов, заблокированных процессом |
file locks ( -x) |
LimitSIGPENDING |
Максимальное количество сигналов, ожидающих доставки в вызывающий поток |
pending signals ( -i) |
LimitMSGQUEUE |
Максимальное количество байтов в очередях сообщений POSIX. Очереди сообщений POSIX позволяют процессам обмениваться данными в форме сообщений |
POSIX message queues ( -q) |
LimitNICE |
Максимальный уровень приоритета NICE, который может быть назначен процессу |
scheduling priority ( -e) |
LimitRTPRIO |
Максимальный приоритет планирования в реальном времени |
real-time priority ( -r) |
LimitRTTIME |
Максимальный размер буфера конвейера (pipe), в блоках по 512 байт |
pipe size ( -p) |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
haproxy-trino.cfg |
Шаблон Jinja с конфигурацией HAProxy |
|
Specifies the location of the certificate in standard .PEM format |
Путь к сертификату в формате PEM |
/etc/ssl/serverkey.pem |
/etc/syslog-ng/conf.d/haproxy-trino.conf |
Конфигурация syslog-ng для Haproxy Trino. Используется, если syslog-ng установлен в системе |
|
/etc/rsyslog.d/haproxy-trino.conf |
Конфигурация rsyslog для Haproxy Trino. Используется, если rsyslog установлен в системе |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
catalog |
Каталог Trino по умолчанию |
— |
client-info |
Дополнительная информация о клиенте, отправляющем запросы |
— |
client-request-timeout |
Тайм-аут на выполнение запроса от клиента |
2m |
client-tags |
Разделенный запятыми список тегов, предоставляющих дополнительную информацию о клиенте и пользователе |
— |
editing-mode |
Режим редактирования.
Возможные значения: |
EMACS |
encoding |
Устанавливает кодировку для протокола буферизации (spooling) |
json+zstd,json+lz4,json |
external-authentication-redirect-handler |
Указывает обработчик редиректов для внешней аутентификации |
ALL |
extra-credential |
Дополнительные учетные данные в формате ключ/значение |
— |
history-file |
Путь к файлу с историей команд |
${user.home}/.trino_history |
network-logging |
Уровень детализации сетевых логов клиента.
Возможные значения: |
NONE |
output-format |
Формат вывода для пакетной обработки (batch mode) |
CSV |
output-format-interactive |
Формат вывода для интерактивной обработки |
ALIGNED |
pager |
Путь к pager-программе, используемой для просмотра результатов запроса |
less |
path |
Устанавливает дефолтный путь SQL на уровне сессии |
— |
schema |
Схема по умолчанию.
Указывается вместе с |
— |
server |
Расположение сервера Trino (Trino Coordinator или Trino Haproxy) |
<TrinoCoordinatorHost> или <TrinoHaproxyHost> |
session |
Свойства сессии Trino в формате ключ/значение |
— |
source |
Имя приложения или источника, подключающегося к Trino |
trino-cli |
timezone |
Часовой пояс для сессии |
UTC |
user |
Имя пользователя для подключения к серверу Trino |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
krb5-remote-service-name |
Сервисное имя для удаленного подключения |
HTTP |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
keystore-password |
Пароль к keystore-файлу |
— |
keystore-path |
Расположение keystore-файла |
— |
truststore-password |
Пароль к truststore-файлу |
— |
truststore-path |
Расположение truststore-файла |
— |