Skip to main content
Эти настройки доступны в system.settings и автоматически генерируются на основе исходного кода.

max_bytes_before_external_group_by

Значение по умолчанию в Cloud: половина объема памяти для каждой реплики. Включает или отключает выполнение секций GROUP BY с использованием внешней памяти. (См. GROUP BY во внешней памяти) Возможные значения:
  • Максимальный объем оперативной памяти (в байтах), который может использовать одна операция GROUP BY.
  • 0GROUP BY с использованием внешней памяти отключен.
Если использование памяти во время операций GROUP BY превышает этот порог в байтах, активируется режим «внешней агрегации» (сброс данных на диск).Рекомендуемое значение — половина доступной системной памяти.

max_bytes_before_external_join

Если задано ненулевое значение и join_algorithm имеет значение hash, parallel_hash, default или auto, hash JOIN будет автоматически преобразован в grace hash JOIN, что позволит сбрасывать данные на диск, когда объём данных с правой стороны превысит этот порог в байтах. При значении 0 (по умолчанию) этот абсолютный порог в байтах отключён, однако автоматический сброс на диск всё равно может происходить через max_bytes_ratio_before_external_join (по умолчанию — 0.5); установите оба значения в 0, чтобы полностью отключить автоматический сброс на диск. Это предотвращает оптимизацию чтения по порядку через JOIN.

max_bytes_before_external_sort

Значение по умолчанию в Cloud: половина объёма памяти для каждой реплики. Включает или отключает выполнение секций ORDER BY во внешней памяти. См. Подробности реализации ORDER BY Если использование памяти во время операции ORDER BY превышает этот порог в байтах, активируется режим «внешней сортировки» (сброс данных на диск). Возможные значения:
  • Максимальный объём оперативной памяти (в байтах), который может использовать одна операция ORDER BY. Рекомендуемое значение — половина доступной системной памяти
  • 0ORDER BY во внешней памяти отключён.

max_bytes_before_remerge_sort

При использовании ORDER BY с LIMIT, если использование памяти превышает указанный порог, перед окончательным слиянием выполняются дополнительные шаги по слиянию блоков, чтобы оставить только первые LIMIT строк.

max_bytes_for_lazy_final

Максимальное количество байт в наборе для оптимизации отложенного FINAL. При превышении этого значения используется обычный FINAL.

max_bytes_in_distinct

Максимальный размер состояния в памяти (в несжатых байтах), используемого хеш-таблицей при выполнении DISTINCT.

max_bytes_in_join

Максимальный размер в байтах структуры данных правой части (обычно хеш-таблицы), используемой при JOIN таблиц. Этот параметр применяется к операциям SELECT … JOIN и движку таблицы Join. Если запрос содержит несколько JOIN, ClickHouse проверяет этот параметр для каждого промежуточного результата. При достижении лимита дальнейшее поведение зависит от выбранного join_algorithm — описание поведения для каждого алгоритма см. в этом параметре (spill, повторное разбиение на партиции, переключение или throw/break в соответствии с join_overflow_mode). Возможные значения:
  • Положительное целое число.
  • 0 — контроль памяти отключен.

max_bytes_in_set

Максимальное количество байтов (несжатых данных), используемых множеством в выражении IN, созданным из подзапроса.

max_bytes_ratio_before_external_group_by

Доля доступной памяти, которую разрешено использовать для GROUP BY. После достижения этого значения для агрегации начинает использоваться внешняя память. Например, если установлено значение 0.6, GROUP BY сможет использовать 60% доступной памяти (server/user/merges) на начальном этапе выполнения, после чего начнёт использовать внешнюю агрегацию.

max_bytes_ratio_before_external_join

Доля доступной памяти, которую разрешено использовать для JOIN. При достижении этого значения hash join будет преобразован в grace hash join, чтобы сбрасывать данные из правой части на диск. Например, если задано значение 0.6, JOIN позволит использовать 60% доступной памяти (для server/user/merges) для хеш-таблицы правой части в начале выполнения; после этого начнется сброс на диск. Если заданы и max_bytes_before_external_join, и max_bytes_ratio_before_external_join, используется меньший из получившихся порогов. Если значение доли равно 0, применяется только абсолютная настройка. Действует только если join_algorithm имеет значение hash, parallel_hash, default или auto и настроен путь для временных данных.

max_bytes_ratio_before_external_sort

Доля доступной памяти, которую разрешено использовать для ORDER BY. После достижения этого порога используется внешняя сортировка. Например, если установить значение 0.6, ORDER BY сможет использовать 60% доступной памяти (для server/user/merges) в начале выполнения, после чего начнёт использовать внешнюю сортировку. Обратите внимание, что ограничение max_bytes_before_external_sort по-прежнему действует: выгрузка на диск выполняется только в том случае, если блок сортировки превышает max_bytes_before_external_sort.

max_bytes_to_read

Максимальное количество байтов (несжатых данных), которое можно прочитать из таблицы при выполнении запроса. Ограничение проверяется для каждого обработанного фрагмента данных, применяется только к наиболее глубокому табличному выражению, а при чтении с удалённого сервера проверяется только на удалённом сервере.

max_bytes_to_read_leaf

Максимальное число байтов (несжатых данных), которое можно прочитать из локальной таблицы на листовом узле при выполнении распределённого запроса. Хотя распределённые запросы могут отправлять несколько подзапросов на каждый сегмент (листовой узел), этот лимит проверяется только на стадии чтения на листовых узлах и игнорируется на стадии слияния результатов на корневом узле. Например, кластер состоит из 2 сегментов, и каждый сегмент содержит таблицу со 100 байтами данных. Распределённый запрос, который должен прочитать все данные из обеих таблиц с настройкой max_bytes_to_read=150, завершится ошибкой, поскольку в сумме получится 200 байт. Запрос с max_bytes_to_read_leaf=150 выполнится успешно, так как листовые узлы прочитают максимум 100 байт. Ограничение проверяется для каждого обработанного фрагмента данных.
Этот параметр нестабилен при prefer_localhost_replica=1.

max_bytes_to_sort

Максимальное количество байт, обрабатываемых перед сортировкой. Если для операции ORDER BY требуется обработать больше указанного объёма несжатых данных, поведение определяется параметром sort_overflow_mode, который по умолчанию имеет значение throw.

max_bytes_to_transfer

Максимальное количество байтов (несжатых данных), которое может быть передано на удалённый сервер или сохранено во временной таблице при выполнении выражения GLOBAL IN/JOIN.
Последнее изменение 23 июля 2026 г.