Конфигурация
Этот документ описывает все доступные параметры конфигурации системы.
Конфигурация адресов
Сетевые адреса для различных сервисов.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
address.http | string | :9002 | Адрес прослушивания HTTP |
address.grpc | string | :9004 | Адрес прослушивания GRPC |
address.debug | string | :9200 | Адрес прослушивания для отладки |
Конфигурация хранилища
Настройки хранилища для сохранения данных.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
storage.data_dir | string | - | Путь к директории, где будут храниться фракции |
storage.frac_size | Bytes | 128MiB | Максимальный размер активной фракции перед ее запечатыванием |
storage.total_size | Bytes | 1GiB | Верхняя граница дисков ого пространства, которое может быть занято запечатанными фракциями перед их удалением (или отгрузкой в remote хранилище) |
Конфигурация кластера
Топология кластера и настройки репликации.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
cluster.write_stores | []string | - | Экземпляры холодного хранилища, в которые будет производиться запись |
cluster.read_stores | []string | - | Экземпляры холодного хранилища, из которых будут выполняться запросы |
cluster.hot_stores | []string | - | Экземпляры хранилища, в которые будет производиться запись и из которых будут выполняться запросы |
cluster.hot_read_stores | []string | - | Экземпляры хранилища, из которых будут выполняться запросы. Это поле опционально, но если указано, будет иметь приоритет над cluster.hot_stores |
cluster.replicas | int | 1 | Количество экземпляров, при надлежащих одному шарду |
cluster.hot_replicas | int | - | Количество горячих экземпляров, принадлежащих одному шарду. Если указано, будет иметь приоритет над cluster.replicas для горячих хранилищ |
cluster.shuffle_replicas | bool | false | Перемешивать ли реплики |
cluster.mirror_address | string | - | Хост, на который будут зеркалироваться поисковые запросы. Это может быть полезно, если у вас есть dev-кластер и вы хотите иметь такой же паттерн поиска, как на production-кластере |
Конфигурация медленных логов
Пороговые значения для логирования медленных операций.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
slow_logs.bulk_threshold | Duration | 0ms | Длительность для определения медленных bulk-запросов. Когда bulk-запрос превышает этот порог, он будет залогирован |
slow_logs.search_threshold | Duration | 3s | Длительность для определения медленных поисковых запросов. Когда поисковый запрос превышает этот порог, он будет залогирован |
slow_logs.fetch_threshold | Duration | 3s | Длительность для определения медленных fetch-запросов. Когда fetch-запрос превышает этот порог, он будет залогирован |
Конфигурация лимитов
Ограничение скорости и ресурсов.
Общие лимиты
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
limits.query_rate | float64 | 2 | Максимальное количество запросов в секунду |
limits.search_requests | int | 32 | Максимальное количество одновременных запросов в секунду |
limits.bulk_requests | int | 32 | Максимальное количество одновременных запросов в секунду |
limits.inflight_bulks | int | 32 | Максимальное количество одновременных запросов в секунду |
limits.fraction_hits | int | 6000 | Максимальное количество фракций, которые могут быть обработаны в рамках одного поискового запроса |
limits.search_docs | int | 100000 | Максимальное количество документов, которые могут быть возвращены в рамках одного поискового запроса |
limits.doc_size | Bytes | 128KiB | Максимально возможный размер одного документа. Документы больше этого порога будут пропущены |
Лимиты агрегаций
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
limits.aggregation.field_tokens | int | 1000000 | Максимальное количество уникальных токенов полей, которые могут быть обработаны в одном запросе агрегации. Установка этого поля в 0 отключает лимит |
limits.aggregation.group_tokens | int | 2000 | Максимальное количество уникальных токенов групп, которые могут быть обработаны в одном запросе агрегации. Установка этого поля в 0 отключает лимит |
limits.aggregation.fraction_tokens | int | 100000 | Максимальное количество уникальных токенов, содержащихся в одной фракции, которая была выбран запросом агрегации. Установка этого поля в 0 отключает лимит |
Конфигурация CircuitBreaker
Настройки CircuitBreaker для bulk-операций. См. документацию CircuitBreaker для дополнительной информации.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
circuit_breaker.bulk.shard_timeout | Duration | 10s | См. CircuitBreaker для дополнительной информации |
circuit_breaker.bulk.err_percentage | int | 50 | См. CircuitBreaker для дополнительной информации |
circuit_breaker.bulk.bucket_width | Duration | 1s | См. CircuitBreaker для дополнительной информации |
circuit_breaker.bulk.buckets_count | int | 10 | См. CircuitBreaker для дополнительной информации |
circuit_breaker.bulk.sleep_window | Duration | 5s | См. CircuitBreaker для дополнительной информации |
circuit_breaker.bulk.volume_threshold | int | 5 | См. CircuitBreaker для дополнительной информации |
Конфигурация ресурсов
Настройки распределения ресурсов.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
resources.reader_workers | int | runtime.GOMAXPROCS | Количество воркеров для пула чтения. По умолчанию эта настройка равна runtime.GOMAXPROCS |
resources.search_workers | int | runtime.GOMAXPROCS | Количество воркеров для пула поиска. По умолчанию эта настройка равна runtime.GOMAXPROCS |
resources.cache_size | Bytes | 30% доступной RAM | Максимальный размер кэша. По умолчанию эта настройка равна 30% доступной оперативной памяти |
resources.sort_docs_cache_size | Bytes | - | Размер кэша отсортированных документов |
resources.skip_fsync | bool | false | Пропускать ли операции fsync |
Конфигурация сжатия
Настройки уровня сжатия для различных типов данных.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
compression.docs_zstd_compression_level | int | 1 | Уровень сжатия для документов |
compression.metas_zstd_compression_level | int | 1 | Уровень сжатия для метаданных |
compression.sealed_zstd_compression_level | int | 3 | Уровень сжатия для запечатанных фракций |
compression.doc_block_zstd_compression_level | int | 3 | Уровень сжатия для блоков документов |
Конфигурация индексирования
Настройки поведения индексирования документов.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
indexing.max_token_size | int | 72 | Максимальный размер токена |
indexing.case_sensitive | bool | false | Учитывает ли индексирование регистр |
indexing.partial_field_indexing | bool | false | Включить ли частичное индексирование полей |
indexing.past_allowed_time_drift | Duration | 24h | Сколько времени может пройти с момента временной метки сообщения. Если прошло больше времени, чем это значение, временная метка сообщения перезаписывается |
indexing.future_allowed_time_drift | Duration | 5m | Максимально допустимое смещение временной метки сообщения в будущее. Если временная метка сообщения находится дальше в будущем, чем это значение, она перезаписывается |
Конфигурация маппинга
Конфигурация маппинга полей.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
mapping.path | string | - | Путь к файлу маппинга или auto для индексирования всех полей как keyword |
mapping.enable_updates | bool | false | Периодически проверять файл маппинга и перезагружать конфигурацию при наличии обновления |
mapping.update_period | Duration | 30s | Как часто файл маппинга будет проверяться на наличие обновлений |
Конфигурация сортировки документов
Настройки функциональности сортировки документов.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
docs_sorting.enabled | bool | false | Включает/отключает сортировку документов |
docs_sorting.doc_block_size | Bytes | - | Устанавливает размер блока документов. Большой размер потребляет больше оперативной памяти, но улучшает коэффициент сжатия |
Конфигурация асинхронного поиска
Конфигурация для асинхронных поисковых операций.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
async_search.data_dir | string | поддиректория в storage.data_dir | Директория, содержащая данные для асинхронных поисков. По умолчанию будет поддиректорией в storage.data_dir |
async_search.concurrency | int | - | Уровень параллелизма для асинхронных поисков |
async_search.max_total_size | Bytes | 1GiB | - |
async_search.max_size_per_request | Bytes | 100MiB | - |
Конфигурация API
Настройки, связанные с API.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
api.es_version | string | 8.9.0 | Версия по умолчанию, которая будет возвращаться в обработчике / |
Конфигурация трассировки
Настройки распределенной трассировки.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
tracing.sampling_rate | float64 | 0.01 | Частота выборки для распределенной трассировки |
Примечания
- Bytes: Значения размера могут быть указаны с единицами измерения, такими как
KiB
,MiB
,GiB
(например,128MiB
) - Duration: Временные значения могут быть указаны с единицами измерения, такими как
ms
,s
,m
,h
(например,3s
,24h
) - Значения по умолчанию: Поля без явных значений по умолчанию являются обязательными, если не отмечены как опциональные
- Массивы: Поля типа
[]string
принимают несколько значений