Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

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

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

max_memory_usage

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

Значение по умолчанию в Cloud: зависит от объёма оперативной памяти на реплике.

Максимальный объём оперативной памяти, который может использоваться для выполнения запроса на одном сервере. Значение 0 означает отсутствие ограничений.

Этот параметр не учитывает объём доступной памяти или общий объём памяти на машине. Ограничение применяется к одному запросу на одном сервере.

Вы можете использовать SHOW PROCESSLIST, чтобы увидеть текущее потребление памяти для каждого запроса. Пиковое потребление памяти отслеживается для каждого запроса и записывается в лог.

Использование памяти отслеживается не полностью для состояний следующих агрегатных функций с аргументами String и Array:

  • min
  • max
  • any
  • anyLast
  • argMin
  • argMax

Потребление памяти также ограничивается параметрами max_memory_usage_for_user и max_server_memory_usage.

max_memory_usage_for_user

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

Максимальный объём оперативной памяти, который можно использовать для выполнения запросов пользователя на одном сервере. Ноль означает, что ограничение отсутствует.

По умолчанию этот объём не ограничен (max_memory_usage_for_user = 0).

См. также описание max_memory_usage.

Например, если вы хотите установить значение max_memory_usage_for_user равным 1000 байт для пользователя clickhouse_read, можно использовать оператор

ALTER USER clickhouse_read SETTINGS max_memory_usage_for_user = 1000;

Вы можете убедиться, что всё сработало: выйдите из клиента, снова войдите в него и затем используйте функцию getSetting:

SELECT getSetting('max_memory_usage_for_user');
Navigation