Перейти к основному содержимому
Перейти к основному содержимому

Операторы SYSTEM

RELOAD EMBEDDED DICTIONARIES

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

RELOAD DICTIONARIES

Перезагружает все словари, которые были ранее успешно загружены.
По умолчанию словари загружаются лениво (см. dictionaries_lazy_load), поэтому вместо автоматической загрузки при старте, они инициализируются при первом доступе через функцию dictGet или SELECT из таблиц с ENGINE = Dictionary. Запрос SYSTEM RELOAD DICTIONARIES перезагружает такие словари (LOADED).
Всегда возвращает Ok., независимо от результата обновления словаря.

Синтаксис

RELOAD DICTIONARY

Полностью перезагружает словарь dictionary_name, независимо от состояния словаря (LOADED / NOT_LOADED / FAILED).
Всегда возвращает Ok., независимо от результата обновления словаря.

Статус словаря можно проверить, выполнив запрос к таблице system.dictionaries.

RELOAD MODELS

примечание

Этот оператор и SYSTEM RELOAD MODEL просто выгружают модели catboost из clickhouse-library-bridge. Функция catboostEvaluate() загружает модель при первом доступе, если она еще не загружена.

Выгружает все модели CatBoost.

Синтаксис

RELOAD MODEL

Выгружает модель CatBoost по model_path.

Синтаксис

RELOAD FUNCTIONS

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

Синтаксис

RELOAD ASYNCHRONOUS METRICS

Переоценивает все асинхронные метрики. Поскольку асинхронные метрики периодически обновляются на основе настройки asynchronous_metrics_update_period_s, обычно не нужно вручную обновлять их с помощью этого оператора.

DROP DNS CACHE

Очищает внутренний кэш DNS ClickHouse. Иногда (для старых версий ClickHouse) необходимо использовать эту команду при изменении инфраструктуры (изменении IP-адреса другого сервера ClickHouse или сервера, используемого словарями).

Для более удобного (автоматического) управления кэшем см. параметры disable_internal_dns_cache, dns_cache_max_entries, dns_cache_update_period.

DROP MARK CACHE

Очищает кэш меток.

DROP REPLICA

"Мертвые" реплики таблиц ReplicatedMergeTree можно удалить, используя следующий синтаксис:

Запросы удаляют путь к реплике ReplicatedMergeTree в ZooKeeper. Это полезно, когда реплика не работает, и ее метаданные не могут быть удалены из ZooKeeper с помощью DROP TABLE, потому что такой таблицы больше не существует. Он удалит только неактивную/устаревшую реплику, и не может удалить локальную реплику, пожалуйста, используйте DROP TABLE для этого. DROP REPLICA не удаляет никаких таблиц и не удаляет никаких данных или метаданных с диска.

Первый удаляет метаданные реплики 'replica_name' таблицы database.table.
Второй делает то же самое для всех реплицируемых таблиц в базе данных.
Третий делает то же самое для всех реплицируемых таблиц на локальном сервере.
Четвертый полезен для удаления метаданных мертвой реплики, когда все другие реплики таблицы были удалены. Для этого необходимо явно указать путь к таблице. Он должен быть тем же путем, который был передан в качестве первого аргумента движка ReplicatedMergeTree при создании таблицы.

DROP DATABASE REPLICA

"Мертвые" реплики баз данных Replicated можно удалить с использованием следующего синтаксиса:

Похоже на SYSTEM DROP REPLICA, но удаляет путь реплики Replicated базы данных из ZooKeeper, когда базы данных нет для выполнения DROP DATABASE. Пожалуйста, обратите внимание, что он не удаляет реплики ReplicatedMergeTree (поэтому вам также может потребоваться SYSTEM DROP REPLICA). Имена шардов и реплик — это имена, указанные в параметрах движка Replicated при создании базы данных. Также эти имена можно получить из столбцов database_shard_name и database_replica_name в system.clusters. Если предложение FROM SHARD отсутствует, то replica_name должно быть полным именем реплики в формате shard_name|replica_name.

DROP UNCOMPRESSED CACHE

Очищает кэш необработанных данных.
Кэш необработанных данных включается/выключается запросом/настройкой на уровне пользователя/профиля use_uncompressed_cache.
Его размер можно настроить с помощью настройки на уровне сервера uncompressed_cache_size.

DROP COMPILED EXPRESSION CACHE

Очищает кэш скомпилированных выражений.
Кэш скомпилированных выражений включается/выключается запросом/настройкой на уровне пользователя/профиля compile_expressions.

DROP QUERY CONDITION CACHE

Очищает кэш условий запросов.

DROP QUERY CACHE

Очищает кэш запросов.
Если указана метка, удаляются только записи кэша запросов с указанной меткой.

DROP FORMAT SCHEMA CACHE

Очищает кэш для схем, загруженных из format_schema_path.

Поддерживаемые форматы:

  • Protobuf

FLUSH LOGS

Сбрасывает буферизованные журнальные сообщения в системные таблицы, например, system.query_log. В основном полезно для отладки, поскольку для большинства системных таблиц установлен интервал сброса по умолчанию в 7,5 секунд.
Это также создаст системные таблицы, даже если очередь сообщений пуста.

Если вы не хотите сбрасывать все, вы можете сбросить один или несколько индивидуальных журналов, передав их название или целевую таблицу:

RELOAD CONFIG

Перезагружает конфигурацию ClickHouse. Используется, когда конфигурация хранится в ZooKeeper. Обратите внимание, что SYSTEM RELOAD CONFIG не перезагружает конфигурацию USER, хранящуюся в ZooKeeper, она перезагружает только конфигурацию USER, которая хранится в users.xml. Для перезагрузки всей конфигурации USER используйте SYSTEM RELOAD USERS.

RELOAD USERS

Перезагружает все хранилища доступа, включая: users.xml, локальное хранилище доступа на диске, реплицированное (в ZooKeeper) хранилище доступа.

SHUTDOWN

Not supported in ClickHouse Cloud

Обычно завершает работу ClickHouse (как service clickhouse-server stop / kill {$pid_clickhouse-server})

KILL

Прерывает процесс ClickHouse (как kill -9 {$ pid_clickhouse-server})

Управление распределенными таблицами

ClickHouse может управлять распределенными таблицами. Когда пользователь вставляет данные в эти таблицы, ClickHouse сначала создает очередь данных, которые должны быть отправлены на узлы кластера, а затем асинхронно отправляет их. Вы можете управлять обработкой очереди с помощью запросов STOP DISTRIBUTED SENDS, FLUSH DISTRIBUTED и START DISTRIBUTED SENDS. Вы также можете синхронно вставлять распределенные данные с помощью настройки distributed_foreground_insert.

STOP DISTRIBUTED SENDS

Отключает фоновую распределенную передачу данных при вставке данных в распределенные таблицы.

примечание

В случае, если prefer_localhost_replica включен (по умолчанию), данные в локальный шард все равно будут вставлены.

FLUSH DISTRIBUTED

Принудительно заставляет ClickHouse отправлять данные на узлы кластера синхронно. Если какие-либо узлы недоступны, ClickHouse выдает исключение и останавливает выполнение запроса. Вы можете повторить запрос до тех пор, пока он не выполнится успешно, что произойдет, когда все узлы снова станут доступны.

Вы также можете переопределить некоторые настройки с помощью условия SETTINGS, это может быть полезно для избежания некоторых временных ограничений, таких как max_concurrent_queries_for_all_users или max_memory_usage.

примечание

Каждый ожидающий блок хранится на диске с настройками из исходного запроса INSERT, поэтому иногда может потребоваться переопределить настройки.

START DISTRIBUTED SENDS

Включает фоновую распределенную передачу данных при вставке данных в распределенные таблицы.

STOP LISTEN

Закрывает сокет и корректно завершает существующие подключения к серверу на указанном порту с указанным протоколом.

Однако, если соответствующие настройки протокола не были указаны в конфигурации clickhouse-server, эта команда не окажет никакого эффекта.

  • Если указан модификатор CUSTOM 'protocol', будет остановлен пользовательский протокол с указанным именем, определенным в разделе протоколов конфигурации сервера.
  • Если указан модификатор QUERIES ALL [EXCEPT .. [,..]], все протоколы будут остановлены, если не указаны с помощью условия EXCEPT.
  • Если указан модификатор QUERIES DEFAULT [EXCEPT .. [,..]], все протоколы по умолчанию будут остановлены, если не указаны с помощью условия EXCEPT.
  • Если указан модификатор QUERIES CUSTOM [EXCEPT .. [,..]], все пользовательские протоколы будут остановлены, если не указаны с помощью условия EXCEPT.

START LISTEN

Позволяет устанавливать новые соединения по указанным протоколам.

Однако, если сервер на указанном порту и протокол не был остановлен с помощью команды SYSTEM STOP LISTEN, эта команда не окажет никакого эффекта.

Управление таблицами MergeTree

ClickHouse может управлять фоновыми процессами в таблицах MergeTree.

STOP MERGES

Not supported in ClickHouse Cloud

Предоставляет возможность остановить фоновое слияние для таблиц в семействе MergeTree:

примечание

DETACH / ATTACH таблицы запустит фоновое слияние для таблицы, даже если слияние было остановлено для всех таблиц MergeTree ранее.

START MERGES

Not supported in ClickHouse Cloud

Предоставляет возможность запустить фоновое слияние для таблиц в семействе MergeTree:

STOP TTL MERGES

Предоставляет возможность остановить фоновое удаление устаревших данных в соответствии с выражением TTL для таблиц в семействе MergeTree:
Возвращает Ok., даже если таблица не существует или таблица не имеет движка MergeTree. Возвращает ошибку, если база данных не существует:

START TTL MERGES

Предоставляет возможность запустить фоновое удаление устаревших данных в соответствии с выражением TTL для таблиц в семействе MergeTree:
Возвращает Ok., даже если таблица не существует. Возвращает ошибку, если база данных не существует:

STOP MOVES

Предоставляет возможность остановить фоновую перемещение данных в соответствии с выражением TTL таблицы с TO VOLUME или TO DISK для таблиц в семействе MergeTree:
Возвращает Ok., даже если таблица не существует. Возвращает ошибку, если база данных не существует:

START MOVES

Предоставляет возможность запустить фоновую перемещение данных в соответствии с выражением TTL таблицы с TO VOLUME и TO DISK для таблиц в семействе MergeTree:
Возвращает Ok., даже если таблица не существует. Возвращает ошибку, если база данных не существует:

SYSTEM UNFREEZE

Очищает замороженную резервную копию с указанным именем со всех дисков. См. подробнее о размораживании отдельных частей в ALTER TABLE table_name UNFREEZE WITH NAME

WAIT LOADING PARTS

Ждет, пока все асинхронно загружаемые части данных таблицы (устаревшие части данных) будут загружены.

Управление таблицами ReplicatedMergeTree

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

STOP FETCHES

Not supported in ClickHouse Cloud

Предоставляет возможность остановить фоновую загрузку вставленных частей для таблиц в семействе ReplicatedMergeTree:
Всегда возвращает Ok., независимо от движка таблицы и даже если таблица или база данных не существует.

START FETCHES

Not supported in ClickHouse Cloud

Предоставляет возможность запустить фоновую загрузку вставленных частей для таблиц в семействе ReplicatedMergeTree:
Всегда возвращает Ok., независимо от движка таблицы и даже если таблица или база данных не существует.

STOP REPLICATED SENDS

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

START REPLICATED SENDS

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

STOP REPLICATION QUEUES

Предоставляет возможность остановить фоновые задачи загрузки из очередей репликации, которые хранятся в ZooKeeper для таблиц в семействе ReplicatedMergeTree. Возможные типы фоновых задач - слияния, загрузки, мутации, DDL-запросы с предложением ON CLUSTER:

START REPLICATION QUEUES

Предоставляет возможность запустить фоновые задачи загрузки из очередей репликации, которые хранятся в ZooKeeper для таблиц в семействе ReplicatedMergeTree. Возможные типы фоновых задач - слияния, загрузки, мутации, DDL-запросы с предложением ON CLUSTER:

STOP PULLING REPLICATION LOG

Останавливает загрузку новых записей из журнала репликации в очередь репликации в таблице ReplicatedMergeTree.

START PULLING REPLICATION LOG

Отменяет SYSTEM STOP PULLING REPLICATION LOG.

SYNC REPLICA

Ждет, пока таблица ReplicatedMergeTree будет синхронизирована с другими репликами в кластере, но не более чем на receive_timeout секунд.

После выполнения этого оператора [db.]replicated_merge_tree_family_table_name загружает команды из общего журнала репликации в свою очередь репликации, а затем запрос ждет, пока реплика обработает все загруженные команды. Поддерживаются следующие модификаторы:

  • Если указан модификатор STRICT, то запрос ждет, пока очередь репликации не станет пустой. Версия STRICT может никогда не выполниться, если в очереди репликации постоянно появляются новые записи.
  • Если указан модификатор LIGHTWEIGHT, то запрос ждет только обработки записей GET_PART, ATTACH_PART, DROP_RANGE, REPLACE_RANGE и DROP_PART.
    Кроме того, модификатор LIGHTWEIGHT поддерживает необязательное предложение FROM 'srcReplicas', где 'srcReplicas' - это разделенный запятыми список имен источников реплик. Это расширение позволяет более целенаправленно синхронизироваться, сосредоточив внимание только на задачах репликации, происходящих из указанных источников реплик.
  • Если указан модификатор PULL, то запрос загружает новые записи очереди репликации из ZooKeeper, но не ждет обработки ничего.

SYNC DATABASE REPLICA

Ждет, пока указанная реплицированная база данных применит все изменения схемы из DDL-очереди этой базы данных.

Синтаксис

RESTART REPLICA

Предоставляет возможность повторной инициализации состояния сессии ZooKeeper для таблицы ReplicatedMergeTree, будет сравнивать текущее состояние с ZooKeeper как источником правды и добавлять задачи в очередь ZooKeeper, если это необходимо.
Инициализация очереди репликации на основе данных ZooKeeper происходит таким же образом, как и для оператора ATTACH TABLE. На короткое время таблица будет недоступна для любых операций.

RESTORE REPLICA

Восстанавливает реплику, если данные [возможно] присутствуют, но метаданные ZooKeeper потеряны.

Работает только с таблицами ReplicatedMergeTree в режиме только для чтения.

Запрос можно выполнить после:

  • Потери корневого узла ZooKeeper /.
  • Потери пути реплик /replicas.
  • Потери индивидуального пути реплики /replicas/replica_name/.

Реплика присоединяет локально найденные части и отправляет информацию о них в ZooKeeper.
Части, присутствующие на реплике до потери метаданных, не перезагружаются из других, если не являются устаревшими (поэтому восстановление реплики не означает повторной загрузки всех данных через сеть).

примечание

Части во всех состояниях перемещаются в папку detached/. Активные до потери данных части (зафиксированные) присоединяются.

Синтаксис

Альтернативный синтаксис:

Пример

Создание таблицы на нескольких серверах. После потери метаданных реплики в ZooKeeper таблица присоединяется как только для чтения, так как метаданные отсутствуют. Последний запрос необходимо выполнить на каждой реплике.

Еще один способ:

RESTART REPLICAS

Предоставляет возможность повторно инициализировать состояние сессий ZooKeeper для всех таблиц ReplicatedMergeTree, будет сравнивать текущее состояние с ZooKeeper как источником правды и добавлять задачи в очередь ZooKeeper, если это необходимо.

DROP FILESYSTEM CACHE

Разрешает удалить кэш файловой системы.

SYNC FILE CACHE

примечание

Это слишком тяжелая операция и может быть использована неправильно.

Выполнит системный вызов синхронизации.

LOAD PRIMARY KEY

Загружает первичные ключи для данной таблицы или для всех таблиц.

UNLOAD PRIMARY KEY

Выгружает первичные ключи для данной таблицы или для всех таблиц.

Управление обновляемыми материализованными представлениями

Команды для управления фоновыми задачами, выполняемыми обновляемыми материализованными представлениями

Следите за system.view_refreshes во время их использования.

REFRESH VIEW

Запускает немедленное обновление запланированного представления.

REFRESH VIEW

Ожидает завершения текущего обновления. Если обновление не удалось, вызывается исключение. Если обновление не выполняется, завершается немедленно, вызывая исключение, если предыдущее обновление не удалось.

STOP VIEW, STOP VIEWS

Отключает периодическое обновление данного представления или всех обновляемых представлений. Если обновление в процессе, отменяет его тоже.

START VIEW, START VIEWS

Включает периодическое обновление для данного представления или всех обновляемых представлений. Немедленное обновление не запускается.

CANCEL VIEW

Если в данный момент выполняется обновление для данного представления, прерывает и отменяет его. В противном случае ничего не делает.

SYSTEM WAIT VIEW

Ждет завершения выполняющегося обновления. Если обновление не выполняется, возвращает немедленно. Если последняя попытка обновления не удалась, сообщает об ошибке.

Можно использовать сразу после создания нового обновляемого материализованного представления (без ключевого слова EMPTY), чтобы дождаться завершения первичного обновления.