Конфигурация ноды
Содержание раздела
Конфигурация ноды представляет собой текстовый YAML-файл, параметры которого организованы в древовидную структуру.
Ниже приведен пример конфигурационного файла Prostore. Для каждого параметра указаны:
- назначение,
- имя,
- имя переменной окружения,
- значение параметра.
Для наглядности конфигурация сервиса исполнения запросов разделена на отдельные секции.
Переопределение параметров конфигурации
По умолчанию нода использует конфигурационный файл, входящий в состав JAR-файла dtm-query-execution-core-<version>.jar
. Значения параметров конфигурации можно переопределить любым из способов:
- поместить свой YAML-файл с нужными значениями параметров в директорию
<рабочая_директория_ноды>/config
; - задать переменные окружения.
Если параметр определен в нескольких источниках, то наиболее приоритетным считается значение переменной окружения, следующим источником по приоритету — конфигурация в директории config
, затем — конфигурация в составе JAR-файла.
Переопределить значение параметра с помощью переменной окружения можно, если эта переменная определена в конфигурационном файле. Если вы поместили свой конфигурационный файл в директорию config
, он должен определять нужные переменные. При использовании конфигурационного файла из JAR-файла ничего определять не нужно, так как все переменные в нем уже определены.
Конфигурация сервиса исполнения запросов
Настройки журналирования
# настройки журналирования
logging:
# уровень важности сообщений, записываемых в лог-файл
level:
ru.datamart.prostore.query.execution: ${DTM_LOGGING_LEVEL:TRACE}
Настройки управления Prostore
# настройки сервера Prostore
server:
# номер порта сервиса метрик
port: ${DTM_METRICS_PORT:8080}
# настройки swagger-ui
springdoc:
api-docs:
enabled: false
swagger-ui:
# путь до openapi.yml
url: /openapi.yml
# путь до swagger-ui
path: /swagger-ui
# настройки управления Prostore
management:
# настройки конечных точек Prostore
endpoints:
# признак генерации метрик со стороны Prostore
enabled-by-default: ${DTM_METRICS_ENABLED:true}
# настройки видимости метрик через веб-соединения
web:
exposure:
# состав метрик, видимых через веб-соединения
include: ${DTM_METRICS_SCOPE:info, health}
Настройки сервиса исполнения запросов
# настройки сервиса исполнения запросов
core:
# настройки плагинов
plugins:
# список используемых типов датасорсов
active: ${CORE_PLUGINS_ACTIVE:ADG, ADB, ADP, ADQM}
# порядок выбора типа датасорса для исполнения запросов на чтение и выгрузку данных
category:
# порядок выбора типа датасорса в зависимости от категории запроса; настройки используются, если отсутствует секция plugins.category.autoSelect
mapping:
# порядок для общих реляционных запросов
RELATIONAL: ${DTM_CORE_PLUGINS_RELATIONAL:ADB, ADP, ADQM, ADG}
# порядок для аналитических запросов
ANALYTICAL: ${DTM_CORE_PLUGINS_ANALYTICAL:ADQM, ADB, ADP, ADG}
# порядок для запросов ключ-значение
DICTIONARY: ${DTM_CORE_PLUGINS_DICTIONARY:ADG, ADB, ADP, ADQM}
# порядок для других категорий запросов
UNDEFINED: ${DTM_CORE_PLUGINS_UNDEFINED:ADB, ADP, ADQM, ADG}
# настройки сетевых подключений через HTTP-протокол
http:
# номер порта сервиса исполнения запросов
port: ${DTM_CORE_HTTP_PORT:9090}
# режим оптимизации работы сокета TCP_NODELAY
tcpNoDelay: ${DTM_CORE_HTTP_TCP_NO_DELAY:true}
# режим TCP FAST_OPEN
tcpFastOpen: ${DTM_CORE_HTTP_TCP_FAST_OPEN:true}
# режим оптимизации работы сокета TCP_QUICKACK
tcpQuickAck: ${DTM_CORE_HTTP_TCP_QUICK_ACK:true}
# настройки окружения
env:
# имя окружения для формирования полных имен логических БД
name: ${DTM_NAME:test}
# настройки метрик prometheus
prometheus:
# признак сбора метрик prometheus
enabled: ${PROMETHEUS_ENABLED:true}
# настройки аутентификации
auth:
# путь к API-методу авторизационного сервиса, возвращающему информацию о публичных ключах (JWKS или JSON Web Key Set) для проверки авторизационных токенов
jwksUri: ${AUTH_JWKS_URI:}
# список ролей, назначаемых по умолчанию
defaultRoles: ${CORE_DEFAULT_ROLES:env_owner}
# настройки восстановления состояния при запуске и перезапуске ноды Prostore
restoration:
# признак восстановления состояния при запуске и перезапуске ноды Prostore
autoRestoreState: ${AUTO_RESTORE_STATE:true}
# настройки синхронизации материализованных представлений
matviewsync:
# периодичность запуска синхронизации в миллисекундах; если значение равно 0, синхронизация отключена
periodMs: ${MATERIALIZED_VIEWS_SYNC_PERIOD_MS:5000}
# максимальное количество попыток синхронизации представления, после перезапуска ноды счетчик обнуляется
retryCount: ${MATERIALIZED_VIEWS_RETRY_COUNT:10}
# максимальное количество представлений, синхронизируемых одновременно
maxConcurrent: ${MATERIALIZED_VIEWS_CONCURRENT:2}
# настройки обработки retention-правил
datacooling:
# периодичность запуска обработки retention-правил в миллисекундах; если значение равно 0, обработка отключена
periodMs: ${DATA_COOLING_RUN_PERIOD_MS:600000}
# максимальное количество таблиц, обрабатываемых одновременно
maxConcurrent: ${DATA_COOLING_CONCURRENT:2}
# периодичность проверки запросов, запущенных на ноде кластера, для удаления данных согласно retention-правилам (в миллисекундах)
checkQueriesPeriodMs: ${DATA_COOLING_CHECK_QUERIES_PERIOD_MS:30000}
# периодичность проверки доступности нод кластера для удаления данных согласно retention-правилам (в миллисекундах)
checkTrimPeriodMs: ${DATA_COOLING_CHECK_TRIM_PERIOD_MS:30000}
# настройки очереди операций по изменению логической схемы данных
ddlqueue:
# признак использования очереди операций; до версии 5.6.1 очередь не использовалась
enabled: ${CORE_DDL_QUEUE_ENABLED:true}
# настройки tslog
tslog:
# количество уровней вложенности элементов, отсчитываемое от корневого элемента tslog;
# значение можно изменять только до тех пор, пока в логических БД окружения нет операций записи и дельт
maxDepth: ${TSLOG_MAX_DEPTH:2}
# максимальное количество записей в одном элементе tslog
pageSize: ${TSLOG_PAGE_SIZE:1600}
# настройки jet-коннектора
jet:
# список сетевых адреса jet-коннекторов для загрузки данных в формате: http://host_1:port_1,host_2:port_2,...
connectionString: ${KAFKA_JET_WRITERS:}
# имя консьюмер-группы для загрузки данных с помощью jet-коннектора
consumerGroup: ${KAFKA_JET_CONSUMER_GROUP:jet-load}
# таймаут поллинга из Kafka в миллисекундах
pollDurationMs: ${KAFKA_JET_POLL_DURATION_MS:100}
# предельный размер буфера чтения из Kafka
pollBufferSize: ${KAFKA_JET_POLL_BUFFER_SIZE:1000}
# предельный размер буфера вставки в БД
dbBufferSize: ${KAFKA_JET_DB_BUFFER_SIZE:1000}
# таймаут get-метода коннектора
getTimeoutMs: ${KAFKA_JET_GET_TIMEOUT_MS:5000}
# настройки источника данных
datasource:
# настройки для EDML-операторов
edml:
# количество записей, по умолчанию выгружаемых в одном сообщении топика Каfka
defaultChunkSize: ${EDML_DEFAULT_CHUNK_SIZE:1000}
# период проверки статуса плагина в миллисекундах
pluginStatusCheckPeriodMs: ${EDML_STATUS_CHECK_PERIOD_MS:1000}
# время ожидания (в миллисекундах) до тайм-аута при работе с первым смещением в топике Kafka
firstOffsetTimeoutMs: ${EDML_FIRST_OFFSET_TIMEOUT_MS:15000}
# время ожидания (в миллисекундах) до тайм-аута при ожидании смены смещения в топике Kafka
changeOffsetTimeoutMs: ${EDML_CHANGE_OFFSET_TIMEOUT_MS:10000}
# настройки Zookeeper
zookeeper:
# сетевой адрес хоста ZooKeeper для сервисной БД
connection-string: ${ZOOKEEPER_DS_ADDRESS:localhost}
# время ожидания (в миллисекундах) соединения с хостом ZooKeeper для сервисной БД до достижения тайм-аута
connection-timeout-ms: ${ZOOKEEPER_DS_CONNECTION_TIMEOUT_MS:30000}
# время бездействия (в миллисекундах) в сессии хоста ZooKeeper для сервисной БД до достижения тайм-аута
session-timeout-ms: ${ZOOKEEPER_DS_SESSION_TIMEOUT_MS:86400000}
# корневой путь к хосту ZooKeeper для сервисной БД
chroot: ${ZOOKEEPER_DS_CHROOT:/adtm}
# количество попыток восстановления подключения к zooKeeper во время выполнения операции (0 - неограниченно)
connectionRetryCount: ${ZOOKEEPER_DS_CONNECTION_RETRY_COUNT:0}
# количество попыток выполнения операции в случае срабатывания блокировки optimistic (0 - неограниченно)
optimisticRetryCount: ${ZOOKEEPER_DS_OPTIMISTIC_RETRY_COUNT:20}
# максимальное количество операций, которое можно выполнить до вызова COMMIT DELTA (без ключевого слова IMMEDIATE);
# значение должно быть меньше ограничения Zookeeper, равного 2147483647
maxSequenceSize: ${ZOOKEEPER_DS_MAX_SEQUENCE_SIZE:2000000000}
# настройки взаимодействия сервиса исполнения запросов с брокером сообщений Kafka
kafka:
producer:
property:
# сериализатор строковых ключей
key.serializer: org.apache.kafka.common.serialization.StringSerializer
# сериализатор строковых значений
value.serializer: org.apache.kafka.common.serialization.StringSerializer
consumer:
property:
# десериализатор ключей как байтов
clusterkey.deserializer: org.apache.kafka.common.serialization.ByteArrayDeserializer
# десериализатор значений как байтов
value.deserializer: org.apache.kafka.common.serialization.ByteArrayDeserializer
# настройки кластера Zookeeper для взаимодействия с брокером сообщений Kafka
cluster:
zookeeper:
# сетевой адрес хоста Zookeeper для брокера сообщений Kafka
connection-string: ${ZOOKEEPER_KAFKA_ADDRESS:localhost}
# время ожидания (в миллисекундах) соединения с хостом Zookeeper для брокера сообщений Kafka до достижения тайм-аута
connection-timeout-ms: ${ZOOKEEPER_KAFKA_CONNECTION_TIMEOUT_MS:30000}
# время бездействия (в миллисекундах) в сессии хоста Zookeeper для брокера сообщений Kafka до достижения тайм-аута
session-timeout-ms: ${ZOOKEEPER_KAFKA_SESSION_TIMEOUT_MS:86400000}
# корневой путь к хосту Zookeeper для брокера сообщений Kafka
chroot: ${ZOOKEEPER_KAFKA_CHROOT:}
# настройки администратора Kafka
admin:
# время ожидания (в миллисекундах) входного потока данных для брокера сообщений Kafka до достижения тайм-аута
inputStreamTimeoutMs: ${KAFKA_INPUT_STREAM_TIMEOUT_MS:2000}
# настройки статусов публикации событий брокером сообщений Kafka
status.event.publish:
# имя топика Kafka, в который публикуются события
topic: ${KAFKA_STATUS_EVENT_TOPIC:status.event.topic}
# разрешение на публикацию событий
enabled: ${KAFKA_STATUS_EVENT_ENABLED:false}
# дополнительное разрешение на публикацию событий по операциям записи
writeOperationsEnabled: ${KAFKA_STATUS_EVENT_WRITE_OPERATIONS_ENABLED:false}
# настройки при использовании фреймворка vertx
vertx:
# время в (секундах), после которого заблокированный поток пишет stacktrace
blocking-stacktrace-time: ${DTM_VERTX_BLOCKING_STACKTRACE_TIME:1}
pool:
# максимальный размер пула потоков, выполняющих долгие операции
worker-pool: ${DTM_CORE_WORKER_POOL_SIZE:20}
# максимальный размер пула потоков, обрабатывающих события vertx
event-loop-pool: ${DTM_CORE_EVENT_LOOP_POOL_SIZE:20}
# максимальный размер пула задач в сервисе исполнения запросов
task-pool: ${DTM_CORE_TASK_POOL_SIZE:20}
# время (в миллисекундах) завершения задачи, выполняемой в сервисе исполнения запросов
task-timeout: ${DTM_CORE_TASK_TIMEOUT:86400000}
# максимальный размер пула потоков, обрабатывающих события zooKeeper по дельтам
delta-watcher-pool: ${DTM_DELTA_WATCHER_POOL_SIZE:10}
# настройки кэширования запросов
cache:
# начальная емкость кэша
initialCapacity: ${CACHE_INITIAL_CAPACITY:100000}
# максимальный размер кэша
maximumSize: ${CACHE_MAXIMUM_SIZE:100000}
# время (в минутах) устаревания кэша после последнего обращения к нему
expireAfterAccessMinutes: ${CACHE_EXPIRE_AFTER_ACCESS_MINUTES:99960}
# настройки отката дельты
delta:
# периодичность (в миллисекундах) проверки операций записи, требующих остановки
rollback-status-calls-ms: ${DELTA_ROLLBACK_STATUS_CALLS_MS:2000}
# настройки сбора статистики по обработке запросов к данным
statistics:
# признак сбора статистики
enabled: ${CORE_STATISTICS_ENABLED:true}
# количество потоков, обрабатывающих сбор статистики
threadsCount: ${CORE_STATISTICS_THREADS_COUNT:2}
# признак подсчета строк сущности в статистике обработки запросов
dataCountEnabled: ${CORE_STATISTICS_DATA_COUNT_ENABLED:true}
# минимальный интервал (в миллисекундах) между запуском сессий подсчета строк в логической сущности
dataCountPeriodMs: ${CORE_STATISTICS_DATA_COUNT_PERIOD_MS:0}
Настройки датасорсов типа ADB
# настройки ADB
adb:
# настройки датасорсов типа ADB
datasource:
# отметка элемента в массиве датасорсов и имя датасорса; каждый элемент массива содержит настройки одного датасорса типа ADB
- name: ADB
# окружение (указывает базу данных в датасорсе)
env: ${ADB_ENV_NAME:${DTM_NAME:test}}
# имя пользователя/логин для авторизации в датасорсе
user: ${ADB_USERNAME:dtm}
# пароль для авторизации в датасорсе
password: ${ADB_PASS:dtm}
# сетевой адрес хоста датасорса
host: ${ADB_HOST:localhost}
# сетевой адрес порта на хосте
port: ${ADB_PORT:5432}
# лимит подключений к датасорсу в одном потоке; лимит по всем потокам равен произведению poolSize и executorsCount
poolSize: ${ADB_MAX_POOL_SIZE:3}
# количество одновременных потоков, исполняющих запросы к датасорсу
executorsCount: ${ADB_EXECUTORS_COUNT:3}
# максимальный размер результата, возвращаемого по FETCH-запросу к датасорсу
fetchSize: ${ADB_FETCH_SIZE:1000}
# максимальный размер кэша запроса prepared statement
preparedStatementsCacheMaxSize: ${ADB_PREPARED_CACHE_MAX_SIZE:256}
# максимальный размер запроса prepared statement, который может быть закэширован
preparedStatementsCacheSqlLimit: ${ADB_PREPARED_CACHE_SQL_LIMIT:2048}
# признак кэширования запросов prepared statement
preparedStatementsCache: ${ADB_PREPARED_CACHE:true}
# максимальное количество попыток восстановить соединение (0 — неограниченно)
maxReconnections: ${ADB_MAX_RECONNECTIONS:0}
# максимальное количество запросов, проходящих через соединение перед его переподключением (0 - неограниченно)
queriesByConnectLimit: ${ADB_QUERIES_BY_CONNECT_LIMIT:1000}
# интервал (в миллисекундах) между попытками восстановить соединение (0 — без интервала)
reconnectionInterval: ${ADB_RECONNECTION_INTERVAL:5000}
# настройки механизма выгрузки данных из датасорса
mppr:
# размер буфера при выгрузке из датасорса
bufferSize: ${ADB_MPPR_BUFFER_SIZE:1000}
# настройки механизма загрузки данных в датасорс
mppw:
# признак использования улучшенного PXF-коннектора; при значении false данные загружаются с помощью FDW-коннектора
usePxfConnector: ${ADB_MPPW_USE_ADVANCED_CONNECTOR:true}
# имя консьюмер-группы датасорса для взаимодействия с брокером сообщений Kafka
consumerGroup: ${ADB_LOAD_GROUP:adb-emulator-load-adb}
# максимальный размер пула подключений к датасорсу для операций загрузки данных
poolSize: ${ADB_MPPW_POOL_SIZE:2}
# время ожидания (в миллисекундах) до остановки загрузки
stopTimeoutMs: ${ADB_MPPW_STOP_TIMEOUT_MS:86400000}
# максимальное количество сообщений для операций загрузки данных в датасорс
defaultMessageLimit: ${ADB_MPPW_DEFAULT_MESSAGE_LIMIT:10000}
# время ожидания (в миллисекундах) для FDW-коннектора датасорса
fdwTimeoutMs: ${ADB_MPPW_FDW_TIMEOUT_MS:1200}
Настройки датасорсов типа ADG
# настройки ADG
adg:
# настройки датасорсов типа ADG
datasource:
# отметка элемента в массиве датасорсов и имя датасорса; каждый элемент массива содержит настройки одного датасорса типа ADG
- name: ADG
# окружение датасорса
env: ${ADG_ENV_NAME:${DTM_NAME:test}}
# сетевой адрес хоста датасорса
host: ${TARANTOOL_DB_HOST:localhost}
# сетевой адрес порта на хосте
port: ${TARANTOOL_DB_PORT:3306}
# имя пользователя/логин для авторизации в датасорсе
user: ${TARANTOOL_DB_USER:admin}
# пароль для авторизации в датасорсе
password: ${TARANTOOL_DB_PASS:}
# время ожидания (в миллисекундах) выполнения операции датасорса
operationTimeout: ${TARANTOOL_DB_OPER_TIMEOUT:60000}
# максимальное количество повторных попыток выполнения операции
retryCount: ${TARANTOOL_DB_RETRY_COUNT:0}
# движок датасорса
engine: ${TARANTOOL_DEFAULT_ENGINE:MEMTX}
# количество вертиклов, обрабатывающих запросы к датасорсу
vertxWorkers: ${TARANTOOL_VERTX_WORKERS:10}
# конечная точка для запросов
queryRestEndpoint: ${TARANTOOL_QUERY_REST_ENDPOINT:http://localhost:8080/api/v1/query}
# настройки синхронизации материализованных представлений в датасорсе
sync:
# тайм-аут подключения к датасорсу (в миллисекундах)
timeout_connect: ${TARANTOOL_DB_SYNC_CONNECTION_TIMEOUT:5000}
# тайм-аут чтения из датасорса (в миллисекундах)
timeout_read: ${TARANTOOL_DB_SYNC_READ_TIMEOUT:5000}
# тайм-аут запроса в датасорсе (в миллисекундах)
timeout_request: ${TARANTOOL_DB_SYNC_REQUEST_TIMEOUT:5000}
# размер буфера запросов в датасорсе
bufferSize: ${TARANTOOL_DB_SYNC_BUFFER_SIZE:5000}
# настройки картриджа Tatantool
cartridge:
# сетевой путь и порт к картриджу Tarantool
url: ${TARANTOOL_CATRIDGE_URL:http://localhost:8086}
# настройки механизма загрузки данных
mppw:
# имя консьюмер-группы датасорса для взаимодействия с брокером сообщений Kafka
consumerGroup: ${ADG_CONSUMER_GROUP:tarantool-group-csv}
# максимальное количество сообщений в топике Kafka на раздел датасорса
maxNumberOfMessagesPerPartition: ${ADG_MAX_MSG_PER_PARTITION:200}
# время простоя (в секундах) callback-функции
callbackFunctionSecIdle: ${ADG_CB_FUNC_IDLE:100}
# настройки отката операции
rollback:
# размер пакета операций при откате
eraseOperationBatchSize: ${ADG_ROLLBACK_OPERATION_BATCH_SIZE:300}
# настройки для подключений веб-клиентов
web-client:
# максимальный размер пула подключений веб-клиентов к датасорсу
max-pool-size: ${ADG_WEB_CLIENT_MAX_POOL_SIZE:100}
Настройки датасорсов типа ADQM
# настройки ADQM
adqm:
# настройки датасорсов типа ADQM
datasource:
# отметка элемента в массиве датасорсов и имя датасорса; каждый элемент массива содержит настройки одного датасорса типа ADQM
- name: ADQM
# окружение датасорса
env: ${ADQM_ENV_NAME:${DTM_NAME:test}}
# имя базы данных
database: ${ADQM_DB_NAME:default}
# имя пользователя/логин для авторизации в датасорсе
user: ${ADQM_USERNAME:}
# пароль для авторизации в датасорсе
password: ${ADQM_PASS:}
# сетевой адрес хоста датасорса и номер порта на хосте
hosts: ${ADQM_HOSTS:localhost:8123}
# время ожидания (в миллисекундах) отклика соединения с датасорсом до тайм-аута
socketTimeout: ${ADQM_SOCKET_TIMEOUT:30000}
# время ожидания (в миллисекундах) завершения обмена данными с датасорсом до тайм-аута
dataTransferTimeout: ${ADQM_DATA_TRANSFER_TIMEOUT:10000}
# размер буфера запросов в датасорсе
bufferSize: ${ADQM_BUFFER_SIZE:10000}
# настройки DDL-операторов
ddl:
# имя кластера датасорса
cluster: ${ADQM_CLUSTER:default_cluster}
# алгоритм шардирования данных;
# возможные значения: CITY_HASH_64 (значение по умолчанию с версии 5.3 включительно), INT_ADD (значение по умолчанию до версии 5.2 включительно)
shardingKeyExpr: ${ADQM_SHARDING_EXPR:CITY_HASH_64}
# настройки механизма выгрузки данных из датасорса
mppr:
# сетевой адрес и путь для запросов на выгрузку данных
loadingUrl: ${ADQM_MPPR_CONNECTOR_URL:http://localhost:8087/query}
# сетевой адрес и путь для получения информации о версии коннектора
versionUrl: ${ADQM_MPPR_CONNECTOR_VERSION_URL:http://localhost:8087/versions}
# настройки механизма загрузки данных в датасорс
mppw:
# имя консьюмер-группы для загрузки данных в датасорс
# не используется
consumerGroup: ${ADQM_CONSUMER_GROUP:adqm}
# сетевой адрес брокера сообщений Kafka
kafkaBrokers: ${ADQM_BROKERS:localhost:9092}
# тип интерфейса для загрузки данных в датасорс
loadType: ${ADQM_MPPW_LOAD_TYPE:REST}
# сетевой адрес и путь к REST-интерфейсу для загрузки новых данных в датасорс
restStartLoadUrl: ${ADQM_REST_START_LOAD_URL:http://localhost:8091/newdata/start}
# сетевой адрес и путь к REST-интерфейсу для остановки загрузки данных в датасорсе
restStopLoadUrl: ${ADQM_REST_STOP_LOAD_URL:http://localhost:8091/newdata/stop}
# сетевой адрес и путь для получения информации о версии коннектора
versionUrl: ${ADQM_MPPW_CONNECTOR_VERSION_URL:http://localhost:8091/versions}
# имя коньсюмер-группы для загрузки данных в датасорс через REST API
restLoadConsumerGroup: ${ADQM_REST_LOAD_GROUP:adb-emulator-load-adqm}
# настройки подключений веб-клиентов
web-client:
# максимальный размер пула подключений веб-клиентов к датасорсу
max-pool-size: ${ADQM_WEB_CLIENT_MAX_POOL_SIZE:100}
Настройки датасорсов типа ADP
# настройки ADP
adp:
# настройки источника данных ADP
datasource:
# отметка элемента в массиве датасорсов и имя датасорса; каждый элемент массива содержит настройки одного датасорса типа ADP
- name: ADP
# окружение (указывает базу данных в датасорсе)
env: ${ADP_ENV_NAME:${DTM_NAME:test}}
# имя пользователя/логин для авторизации в датасорсе
user: ${ADP_USERNAME:dtm}
# пароль для авторизации в датасорсе
password: ${ADP_PASS:}
# сетевой адрес хоста датасорса
host: ${ADP_HOST:localhost}
# сетевой адрес порта на хосте датасорса
port: ${ADP_PORT:5432}
# лимит подключений к датасорсу в одном потоке; лимит по всем потокам равен произведению poolSize и executorsCount
poolSize: ${ADP_MAX_POOL_SIZE:3}
# количество одновременных потоков, исполняющих запросы к датасорсу
executorsCount: ${ADP_EXECUTORS_COUNT:3}
# максимальный размер результата, возвращаемого по FETCH-запросу к датасорсу
fetchSize: ${ADP_FETCH_SIZE:1000}
# максимальное время ожидания выполнения запроса в очереди подключений (0 — не ограничено)
poolRequestTimeout: ${ADP_POOL_REQUEST_TIMEOUT:0}
# максимальный размер кэша запроса prepared statement
preparedStatementsCacheMaxSize: ${ADP_PREPARED_CACHE_MAX_SIZE:256}
# максимальный размер запроса prepared statement, который может быть закэширован
preparedStatementsCacheSqlLimit: ${ADP_PREPARED_CACHE_SQL_LIMIT:2048}
# признак кэширования запросов prepared statement
preparedStatementsCache: ${ADP_PREPARED_CACHE:true}
# настройки механизма загрузки данных в датасорс
mppw:
# список сетевых адресов и путь к REST-интерфейсу для загрузки данных в формате: http://host_1:port_1,host_2:port_2,.../newdata/start
restStartLoadUrl: ${ADP_REST_START_LOAD_URL:http://localhost:8096/newdata/start}
# список сетевых адресов и путь к REST-интерфейсу для остановки загрузки данных в формате: http://host_1:port_1,host_2:port_2,.../newdata/stop
restStopLoadUrl: ${ADP_REST_STOP_LOAD_URL:http://localhost:8096/newdata/stop}
# список сетевых адресов и путь для получения информации о версии коннектора в формате: http://host_1:port_1,host_2:port_2,.../versions
restVersionUrl: ${ADP_MPPW_CONNECTOR_VERSION_URL:http://localhost:8096/versions}
# уникальное имя коньсюмер-группы для загрузки данных в датасорс; для разных датасорсов одного типа должны быть указаны разные имена
kafkaConsumerGroup: ${ADP_KAFKA_CONSUMER_GROUP:adp-load}
# таймаут get-метода коннектора
restGetTimeoutMs: ${ADP_REST_GET_TIMEOUT_MS:5000}
# настройки механизма выгрузки данных из датасорса
mppr:
# список сетевых адресов и путь для запросов на выгрузку данных в формате: http://host_1:port_1,host_2:port_2,.../query
restLoadUrl: ${ADP_MPPR_QUERY_URL:http://localhost:8094/query}
# список сетевых адресов и путь для получения информации о версии коннектора в формате: http://host_1:port_1,host_2:port_2,.../versions
restVersionUrl: ${ADP_MPPR_CONNECTOR_VERSION_URL:http://localhost:8094/versions}