Конфигурационные параметры Hive

Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.

ПРИМЕЧАНИЕ
  • Некоторые из перечисленных параметров становятся доступны в UI ADCM после установки флага Advanced.

  • Значения, установленные в Custom-параметрах, перепишут текущие значения параметров, даже если они read-only.

hive-env.sh
Параметр Описание Значение по умолчанию

Sources

Список источников, которые должны быть добавлены в hive-env.sh

 — 

HADOOP_CLASSPATH

Список файлов и директорий, которые должны быть добавлены в classpath. Чтобы добавить директорию или файл в classpath, кликните Plus icon Plus icon

  • /etc/tez/conf/

  • /usr/lib/tez/*

  • /usr/lib/tez/lib/*

HIVE_HOME

Домашний каталог Hive

/usr/lib/hive

METASTORE_PORT

Порт Hive Metastore

9083

HADOOP_CLIENT_OPTS

Клиентские параметры Hadoop. Например, параметры запуска JVM

$HADOOP_CLIENT_OPTS -Djava.io.tmpdir={{ cluster.config.java_tmpdir | d('/tmp') }}

hive-server2-env.sh
Параметр Описание Значение по умолчанию

Sources

Список источников, которые должны быть добавлены в hive-server2-env.sh

 — 

HADOOP_CLIENT_OPTS

Параметры клиента для HiveServer2

-Xms256m -Xmx256m

HIVE_AUX_JARS_PATH

Позволяет добавить дополнительные JAR-файлы в classpath Hive. Список файлов и директорий, которые должны быть добавлены в classpath. Чтобы добавить директорию или файл в classpath, кликните Plus icon Plus icon

 — 

Final HIVE_SERVER2_ENV_OPTS

Итоговое значение параметра HIVE_SERVER2_ENV_OPTS в hive-server2-env.sh

 — 

hive-metastore-env.sh
Параметр Описание Значение по умолчанию

Sources

Список источников, которые должны быть добавлены в hive-metastore-env.sh

 — 

HADOOP_CLIENT_OPTS

Параметры клиента для Hive Metastore

-Xms256m -Xmx256m

Final HIVE_METASTORE_ENV_OPTS

Итоговое значение параметра HIVE_METASTORE_ENV_OPTS в hive-metastore-env.sh

 — 

Credential Encryption
Параметр Описание Значение по умолчанию

Encryption enable

Включает или выключает функцию шифрования учетных данных. Если опция включена, Hive хранит учетные данные (пароли настроек, учетные данные для взаимодействия с другими сервисами) в зашифрованном виде

false

Credential provider path

Путь к хранилищу ключей JCEKS

jceks://file/etc/hive/conf/hive.jceks

Ranger plugin credential provider path

Путь к хранилищу ключей JCEKS, используемому Ranger

jceks://file/etc/hive/conf/ranger-hive.jceks

Custom jceks

Укажите значение true при использовании кастомного файла JCEKS-хранилища. Укажите значение false для использования дефолтного файла хранилища, который генерируется автоматически

false

Password file name

Имя файла в classpath сервиса, в котором хранятся пароли

hive_credstore_pass

hive-site.xml
Параметр Описание Значение по умолчанию

hive.cbo.enable

Если установлено значение true, включает оптимизатор (cost-based optimizer), использующий фреймворк Calcite

true

hive.compute.query.using.stats

Если установлено значение true, Hive будет отвечать на несколько запросов, таких как min, max и count (1), используя статистику, хранящуюся в Metastore. Для сбора базовой статистики установите hive.stats.autogather=true. Для более расширенного сбора статистики выполните запросы ANALYZE TABLE

false

hive.execution.engine

Задает тип используемого движка. Допустимые значения: mr (MapReduce, значение по умолчанию), tez (движок Tez, только для Hadoop 2) или spark (движок Spark, для Hive 1.1.0 и более поздних версий)

Tez

hive.log.explain.output

Когда этот параметр задан, выходные данные команды EXPLAIN EXTENDED добавляются в log4j-лог с уровнем INFO, а также отображаются в веб-интерфейсе HiveServer2 (Drilldown → Query Plan). Начиная с Hive 3.1.0, этот параметр логируется только как log4j INFO. Чтобы сделать вывод команды EXPLAIN EXTENDED доступным в веб-интерфейсе в Hive 3.1.0 и более поздних версиях, используйте hive.server2.webui.explain.output

true

hive.metastore.event.db.notification.api.auth

Определяет, должен ли Metastore выполнять авторизацию с использованием database notification API, таких как get_next_notification. Если установлено значение true, то только суперпользователи в настройках прокси имеют разрешение

false

hive.metastore.uris

URI, используемый для доступа к метаданным в удаленном Metastore. Для удаленного хранилища метаданных необходимо указать URI сервера хранилища метаданных Thrift: thrift://<hostname>:<port>, где <hostname> — имя или IP-адрес сервера хранилища метаданных Thrift, <port> — порт, который слушает сервер Thrift

 — 

hive.metastore.warehouse.dir

Абсолютный путь к файлу HDFS базы данных по умолчанию для хранилища, который является локальным для кластера

/apps/hive/warehouse

hive.server2.enable.doAs

Активирует соединение от имени другого пользователя (Impersonation)

false

hive.stats.fetch.column.stats

Для аннотации дерева операторов со статистической информацией нужна статистика по столбцам. Статистика столбцов извлекается из хранилища метаданных. Извлечение статистики для каждого столбца может быть дорогостоящей операцией при большом количестве столбцов. Этот параметр можно использовать для отключения получения статистики столбцов из хранилища метаданных

false

hive.tez.container.size

По умолчанию Tez будет создавать контейнеры такого размера, как и Mapper. Этот параметр можно использовать для перезаписи значения по умолчанию

1024

hive.support.concurrency

Определяет, должен ли Hive поддерживать параллелизм. Экземпляр ZooKeeper должен быть запущен, чтобы Hive Lock Manager по умолчанию поддерживал блокировки чтения/записи

false

hive.txn.manager

Установите значение для этого параметра org.apache.hadoop.hive.ql.lockmgr.DbTxnManager, что является одним из шагов включения транзакций Hive. DummyTxnManage по умолчанию имеет поведение версий Hive до 0.13 и не предоставляет транзакций

org.apache.hadoop.hive.ql.lockmgr.DummyTxnManager

hive.users.in.admin.role

Список пользователей, которым будет присвоена роль администратора при старте Metastore

 — 

javax.jdo.option.ConnectionUserName

Имя пользователя базы данных metastore

APP

javax.jdo.option.ConnectionPassword

Пароль пользователя metastore

 — 

javax.jdo.option.ConnectionURL

JDBC URI для соединения, используемый для доступа к данным, которые хранятся в локальном metastore. Используйте следующий URI подключения: jdbc:<datastore type>://<node name>:<port>/<database name>, где:

  • <node name> — имя хоста или IP-адрес data store;

  • <data store type> — тип data store;

  • <port> — номер порта, который слушает data store для удаленного вызова процедур;

  • <database name> — имя базы данных.

Например, следующий URI указывает на локальный Metastore, который использует MySQL в качестве хранилища данных: jdbc:mysql://hostname23:3306/metastore

jdbc:postgresql://{{ groups['adpg.adpg'][0] | d(omit) }}:5432/hive

javax.jdo.option.ConnectionDriverName

Имя класса JDBC-драйвера для доступа к Hive Metastore

org.postgresql.Driver

hive.server2.transport.mode

Устанавливает режим передачи данных

binary

hive.server2.thrift.port

Номер порта, используемого для бинарного (binary) соединения с Thrift Server2

10000

hive.server2.thrift.http.port

Номер порта, используемого для HTTP-соединения с Thrift Server2

10001

hive.server2.thrift.http.path

HTTP-endpoint сервиса Thrift Server2

cliservice

hive.metastore.transactional.event.listeners

Listener-класс, который сохраняет события в базе данных

org.apache.hive.hcatalog.listener.DbNotificationListener

hive.metastore.dml.events

Включает или отключает отслеживание DML-событий

true

hive.server2.authentication.kerberos.principal

Принципал Kerberos для HiveServer2

 — 

hive.server2.authentication.kerberos.keytab

Путь к keytab-файлу Kerberos, который содержит принципал для HiveServer2

 — 

hive.server2.authentication.spnego.principal

Kerberos-принципал SPNEGO

 — 

hive.server2.webui.spnego.principal

Kerberos-принципал SPNEGO для доступа к веб-интерфейсу

 — 

hive.server2.webui.spnego.keytab

Keytab-файл SPNEGO для доступа к веб-интерфейсу

 — 

hive.server2.webui.use.spnego

Определяет, использовать ли Kerberos SPNEGO для доступа к веб-интерфейсу

false

hive.server2.authentication.spnego.keytab

Путь к принципалу SPNEGO

 — 

hive.server2.authentication

Устанавливает режим аутентификации

NONE

hive.metastore.sasl.enabled

Если значение true, интерфейс Metastore Thrift защищен с помощью SASL. Клиенты должны аутентифицироваться с помощью Kerberos

false

hive.metastore.kerberos.principal

Сервисный Kerberos-принципал для хранилища метаданных Thrift-сервера. Строка _HOST автоматически заменяется актуальным именем хоста

 — 

hive.metastore.kerberos.keytab.file

Путь к Kerberos keytab-файлу, который содержит сервисный принципал для хранилища метаданных сервера Thrift

 — 

hive.server2.use.SSL

Определяет, использовать ли SSL для HiveServer2

false

hive.server2.keystore.path

Keystore-файл, используемый HiveServer2

 — 

hive.server2.keystore.password

Пароль к keystore-файлу, который использует HiveServer2

 — 

hive.server2.truststore.path

Truststore-файл, используемый HiveServer2

 — 

hive.server2.truststore.password

Пароль для доступа к truststore-файлу HiveServer2

 — 

hive.server2.webui.use.ssl

Определяет, использовать ли SSL для веб-интерфейса Hive

false

hive.server2.webui.keystore.path

Путь к keystore-файлу, который используется для доступа к веб-интерфейсу Hive

 — 

hive.server2.webui.keystore.password

Пароль к keystore-файлу, который используется для доступа к веб-интерфейсу Hive

 — 

hive.ssl.protocol.blacklist

Список версий TLS, запрещенных для использования в Hive

SSLv2Hello,SSLv3,TLSv1,TLSv1.1

metastore.keystore.path

Путь к keystore-файлу компонента Hive Metastore

 — 

metastore.keystore.password

Пароль для доступа к keystore-файлу компонента Hive Metastore

 — 

metastore.truststore.path

Путь к truststore-файлу компонента Hive Metastore

 — 

metastore.truststore.password

Пароль для доступа к truststore-файлу компонента Hive Metastore

 — 

metastore.use.SSL

Определяет, использовать ли SSL для взаимодействия с Hive Metastore

false

metastore.ssl.protocol.blacklist

Список версий TLS, запрещенных для использования с Hive Metastore

SSLv2Hello,SSLv2,SSLv3,TLSv1,TLSv1.1

iceberg.engine.hive.enabled

Включает поддержку Iceberg-таблиц

true

hive.security.authorization.sqlstd.confwhitelist.append

Регулярное выражение для добавления конфигурационных свойств в список разрешенных дополнительно к hive.security.authorization.sqlstd.confwhitelist

kyuubi\.operation\.handle|kyuubi\.client\.version|kyuubi\.client\.ipAddress|tez\.application\.tags

hive.server2.support.dynamic.service.discovery

Активирует поддержку динамического обнаружения сервисов через ZooKeeper

true

hive.zookeeper.quorum

Разделенный запятыми список ZooKeeper-серверов (<host>:<port>), запущенных в кластере

 — 

hive.server2.zookeeper.namespace

Пространство имен блокировок для ZooKeeper

hiveserver2

hive.cluster.delegation.token.store.class

Имя класса, реализующего систему хранилища токенов делегации (delegation token store)

org.apache.hadoop.hive.metastore.security.ZooKeeperTokenStore

ACID Housekeeping
Параметр Описание Значение по умолчанию

Enable Housekeeping Thread

Определяет, выполняются ли фоновые задачи обслуживания в Hive Metastore

true

Cleaner Interval

Интервал, через который запускаются фоновые потоки очистки для ACID-транзакций

10s

Leader Election Mode

Определяет, использовать ли хост, заданный параметром Housekeeping Leader Hostname в качестве лидера обслуживания (значение host). При значении lock Hive Metastore должен использовать блокировки (lock) для выбора лидера

host

Housekeeping Leader Hostname

FQDN лидера обслуживания

 — 

ZK Lock Namespace

Определят пространство имен блокировок для ZooKeeper

 — 

Compactor Initiator

Определяет, запускать ли поток compaction-initiator

true

Compactor Cleaner

Определяет, запускать ли поток compaction-cleaner

true

Custom log4j.properties
Параметр Описание Значение по умолчанию

HiveServer2 hive-log4j.properties

Конфигурация Log4j, используемая для логирования процессов HiveServer2

hive-log4j.properties

Hive Metastore hive-log4j2.properties

Конфигурация Log4j2, используемая для логирования процессов Hive Metastore

hive-log4j2.properties

Hive Beeline beeline-log4j2.properties

Конфигурация Log4j2, используемая для логирования процессов Hive Beeline

beeline-log4j2.properties

ranger-hive-audit.xml
Параметр Описание Значение по умолчанию

xasecure.audit.destination.solr.batch.filespool.dir

Путь к spool-каталогу

/srv/ranger/hdfs_plugin/audit_solr_spool

xasecure.audit.destination.solr.urls

URL сервера Solr для сохранения аудит-событий. Оставьте значение пустым или установите значение NONE при использовании ZooKeeper для подключения к 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

Определяет требование к успешному завершению работы модуля. Возможные значения: required, requisite, sufficient или optional

 — 

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

Установите значение true, чтобы keytab-файл или ключ принципала сохранялись в учетных данных субъекта

false

xasecure.audit.jaas.Client.option.useKeyTab

Установите значение true, чтобы модуль получал ключ принципала из keytab-файла

false

ranger-hive-security.xml
Параметр Описание Значение по умолчанию

ranger.plugin.hive.policy.rest.url

URL для Ranger Admin

 — 

ranger.plugin.hive.service.name

Имя Ranger-сервиса, который содержит политики для этого экземпляра

 — 

ranger.plugin.hive.policy.cache.dir

Каталог, в котором кешируются политики Ranger после успешного извлечения из источника

/srv/ranger/hive/policycache

ranger.plugin.hive.policy.pollIntervalMs

Определяет, как часто проверять политики на предмет изменения

30000

ranger.plugin.hive.policy.rest.client.connection.timeoutMs

Время ожидания подключения Hive-плагина RangerRestClient (в миллисекундах)

120000

ranger.plugin.hive.policy.rest.client.read.timeoutMs

Тайм-аут на чтение для Hive-плагина RangerRestClient (в миллисекундах)

30000

xasecure.hive.update.xapolicies.on.grant.revoke

Определяет, разрешать ли обновление политик для SQL-команд Grant/Revoke

true

ranger.plugin.hive.policy.rest.ssl.config.file

Путь к конфигурационному файлу RangerRestClient SSL плагина Hive

/etc/hive/conf/ranger-hive-policymgr-ssl.xml

ranger-hive-policymgr-ssl.xml
Параметр Описание Значение по умолчанию

xasecure.policymgr.clientssl.keystore

Путь к keystore-файлу, который использует Ranger

 — 

xasecure.policymgr.clientssl.keystore.credential.file

Путь к файлу с паролями для keystore-файла

/etc/hive/conf/ranger-hive.jceks

xasecure.policymgr.clientssl.truststore.credential.file

Путь к truststore-файлу с учетными данными

/etc/hive/conf/ranger-hive.jceks

xasecure.policymgr.clientssl.truststore

Путь к truststore-файлу, который использует Ranger

 — 

xasecure.policymgr.clientssl.keystore.password

Пароль для доступа к keystore-файлу

 — 

xasecure.policymgr.clientssl.truststore.password

Пароль для доступа к truststore-файлу

 — 

tez-site.xml
Параметр Описание Значение по умолчанию

tez.am.resource.memory.mb

Объем памяти, который YARN выделит Tez Application Master (в мегабайтах). Размер увеличивается с размером DAG

1024

tez.history.logging.service.class

Позволяет Tez использовать Timeline Server для ведения журнала истории

org.apache.tez.dag.history.logging.ats.ATSHistoryLoggingService

tez.lib.uris

Пути HDFS, где хранятся JAR-файлы Tez

${fs.defaultFS}/apps/tez/tez-0.10.3.tar.gz

tez.task.resource.memory.mb

Объем памяти, используемый запущенными задачами в контейнерах TEZ. Обычно это значение задается в DAG

1024

tez.tez-ui.history-url.base

URL для доступа к Tez UI

 — 

tez.use.cluster.hadoop-libs

Указывает, будет ли Tez использовать кластерные библиотеки Hadoop

true

nginx.conf
Параметр Описание Значение по умолчанию

ssl_certificate

Путь к SSL-сертификату для Nginx

/etc/ssl/certs/host_cert.cert

ssl_certificate_key

Путь к ключу SSL-сертификата для Nginx

/etc/ssl/host_cert.key

ssl_protocols

Список допустимых SSL-протоколов для создания SSL-соединения

TLSv1.2

nginx_http_port

HTTP-порт Nginx

8089

nginx_https_port

HTTPS-порт Nginx

9999

Другие параметры
Параметр Описание Значение по умолчанию

ACID Transactions

Определяет, использовать ли ACID-транзакции

false

Database type

Тип внешней базы данных, используемой для Hive Metastore

postgres

Custom hive-site.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hive-site.xml

 — 

Custom hive-env.sh

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hive-env.sh

 — 

Ranger plugin enabled

Определяет, активен ли Ranger-плагин

false

Custom ranger-hive-audit.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hive-audit.xml

 — 

Custom ranger-hive-security.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hive-security.xml

 — 

Custom ranger-hive-policymgr-ssl.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hive-policymgr-ssl.xml

 — 

Custom tez-site.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле tez-site.xml

 — 

beeline-hs2-connection.xml

XML-шаблон для генерации name-value пар из объекта hive_beeline_connection_conf

beeline-hs2-connection.xml

Компонент Hive HiveServer2
Monitoring
Параметр Описание Значение по умолчанию

Java agent path

Путь к Java-агенту JMX Prometheus

/usr/lib/adh-utils/jmx/jmx_prometheus_javaagent.jar

Prometheus metrics port

Порт, на котором будут доступны метрики Hive HiveServer2 в формате Prometheus

9208

Mapping config path

Путь к файлу конфигурации мэппинга метрик

/etc/hive/conf/jmx_hive_server_metric_config.yml

Mapping config

Файл конфигурации мэппинга метрик

Компонент Hive Metastore
Monitoring
Параметр Описание Значение по умолчанию

Java agent path

Путь к Java-агенту JMX Prometheus

/usr/lib/adh-utils/jmx/jmx_prometheus_javaagent.jar

Prometheus metrics port

Порт, на котором будут доступны метрики Hive Metastore в формате Prometheus

9207

Mapping config path

Путь к файлу конфигурации мэппинга метрик

/etc/hive/conf/jmx_hive_server_metric_config.yml

Mapping config

Файл конфигурации мэппинга метрик

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней