Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

настройки сеанса max_rows_*

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

max_rows_for_lazy_final

Тип
UInt64
По умолчанию
10000000
История версий
ВерсияЗначение по умолчаниюКомментарий
26.410000000Новая настройка: максимальное количество строк во множестве для отложенной оптимизации FINAL

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

max_rows_in_distinct

Тип
UInt64
По умолчанию
0

Максимальное количество уникальных строк при использовании DISTINCT.

max_rows_in_join

Тип
UInt64
По умолчанию
0

Ограничивает количество строк в правосторонней структуре данных (обычно hash-таблице), используемой при JOIN таблиц.

Этот параметр применяется к операциям SELECT … JOIN и к движку таблицы Join.

Если запрос содержит несколько JOIN, ClickHouse проверяет этот параметр для каждого промежуточного результата. При достижении ограничения дальнейшее поведение зависит от выбранного join_algorithm — описание поведения для каждого алгоритма см. в этом параметре (spill, повторное разбиение на партиции, переключение или throw/break в соответствии с join_overflow_mode).

Возможные значения:

  • Положительное целое число.
  • 0 — Неограниченное количество строк.

max_rows_in_set

Тип
UInt64
По умолчанию
0

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

max_rows_in_set_to_optimize_join

Тип
UInt64
По умолчанию
0
История версий
ВерсияЗначение по умолчаниюКомментарий
24.10Отключить оптимизацию JOIN, так как она препятствует оптимизации чтения по порядку

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

Возможные значения:

  • 0 — Отключено.
  • Любое положительное целое число.

max_rows_to_group_by

Тип
UInt64
По умолчанию
0

Максимальное количество уникальных ключей, получаемых при агрегации. Эта настройка позволяет ограничить расход памяти при агрегации.

Если во время агрегации с GROUP BY создаётся больше указанного количества строк (уникальных ключей GROUP BY), поведение определяется 'group_by_overflow_mode', который по умолчанию имеет значение throw, но его также можно переключить в приблизительный режим GROUP BY.

max_rows_to_read

Тип
UInt64
По умолчанию
0

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

max_rows_to_read_leaf

Тип
UInt64
По умолчанию
0

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

Например, кластер состоит из 2 сегментов, и каждый сегмент содержит таблицу со 100 строками. Распределённый запрос, который должен прочитать все данные из обеих таблиц с настройкой max_rows_to_read=150, завершится ошибкой, так как всего будет 200 строк. Запрос с max_rows_to_read_leaf=150 выполнится успешно, поскольку листовые узлы прочитают не более 100 строк.

Ограничение проверяется для каждого обработанного фрагмента данных.

max_rows_to_sort

Тип
UInt64
По умолчанию
0

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

max_rows_to_transfer

Тип
UInt64
По умолчанию
0

Максимальное количество строк, которое можно передать на удалённый сервер или сохранить во временной таблице при выполнении секции GLOBAL IN/JOIN.

Navigation