distributed_aggregation_memory_efficient
distributed_connections_pool_size
distributed_foreground_insert
insert_distributed_sync
Включает или отключает синхронную вставку данных в distributed таблицу.
По умолчанию при вставке данных в distributed таблицу сервер ClickHouse отправляет данные на узлы кластера в фоновом режиме. Если distributed_foreground_insert=1, данные обрабатываются синхронно, и операция INSERT завершается успешно только после того, как все данные будут сохранены на всех сегментах (как минимум на одной реплике для каждого сегмента, если internal_replication имеет значение true).
Возможные значения:
0— Данные вставляются в фоновом режиме.1— Данные вставляются в синхронном режиме.
1.
См. также
distributed_group_by_no_merge
0— Отключено (окончательная обработка запроса выполняется на узле-инициаторе).1- Не объединять состояния агрегации с разных серверов при распределённой обработке запросов (запрос полностью обрабатывается на сегменте, инициатор только проксирует данные); можно использовать, если точно известно, что на разных сегментах находятся разные ключи.2- То же, что и1, ноORDER BYиLIMITприменяются на инициаторе (это невозможно, когда запрос полностью обрабатывается на удалённом узле, как приdistributed_group_by_no_merge=1); можно использовать для запросов сORDER BYи/илиLIMIT.
distributed_insert_skip_read_only_replicas
- 0 — INSERT выполняется как обычно; если запрос попадёт на реплику только для чтения, произойдёт ошибка
- 1 — Инициатор будет пропускать реплики только для чтения перед отправкой данных в сегменты.
distributed_product_mode
GLOBAL для distributed таблицы.
Ограничения:
- Применяется только к подзапросам
INиJOIN. - Только если в секции
FROMиспользуется distributed таблица, содержащая более одного сегмента. - Только если подзапрос относится к distributed таблице, содержащей более одного сегмента.
- Не используется для табличной функции remote.
deny— Значение по умолчанию. Запрещает использовать такие типы подзапросов (возвращает исключение “Double-distributed in/JOIN subqueries is denied”).local— Заменяет базу данных и таблицу в подзапросе на локальные для сервера пункта назначения (сегмента), оставляя обычныеIN/JOIN.global— Заменяет запросIN/JOINнаGLOBAL IN/GLOBAL JOIN.allow— Разрешает использование таких типов подзапросов.
distributed_push_down_limit
- Передачи лишних строк по сети;
- Обработки строк сверх лимита на узле-инициаторе.
distributed_push_down_limit изменяет выполнение запроса, только если выполняется хотя бы одно из следующих условий:
- distributed_group_by_no_merge > 0.
- Запрос не содержит
GROUP BY/DISTINCT/LIMIT BY, но содержитORDER BY/LIMIT. - Запрос содержит
GROUP BY/DISTINCT/LIMIT BYвместе сORDER BY/LIMIT, и:- optimize_skip_unused_shards включен.
- optimize_distributed_group_by_sharding_key включен.
- 0 — Отключено.
- 1 — Включено.