SYSTEM RELOAD EMBEDDED DICTIONARIES
Ok. независимо от результата обновления встроенных словарей.
SYSTEM RELOAD DICTIONARIES
SYSTEM RELOAD DICTIONARIES перезагружает словари со status LOADED (см. столбец status в system.dictionaries), то есть словари, которые ранее уже были успешно загружены.
По умолчанию словари загружаются лениво (см. dictionaries_lazy_load), поэтому вместо автоматической загрузки при запуске они инициализируются при первом обращении — через функцию dictGet или при выполнении SELECT из таблиц с ENGINE = Dictionary.
Синтаксис
SYSTEM RELOAD DICTIONARY
dictionary_name независимо от его состояния (LOADED / NOT_LOADED / FAILED).
Всегда возвращает Ok. независимо от результата обновления словаря.
system.dictionaries.
SYSTEM RELOAD MODELS
Этот оператор и
SYSTEM RELOAD MODEL лишь выгружают модели CatBoost из clickhouse-library-bridge. Функция catboostEvaluate()
загружает модель при первом обращении, если она ещё не загружена.SYSTEM RELOAD MODEL
model_path.
Синтаксис
SYSTEM RELOAD FUNCTIONS
SYSTEM RELOAD ASYNCHRONOUS METRICS
SYSTEM CLEAR|DROP DNS CACHE
disable_internal_dns_cache, dns_cache_max_entries, dns_cache_update_period.
SYSTEM CLEAR|DROP MARK CACHE
SYSTEM CLEAR|DROP ICEBERG METADATA CACHE
SYSTEM CLEAR|DROP AVRO SCHEMA CACHE
AvroConfluent. Эта команда удаляет как кэш получения схем (id → схема), так и кэш регистрации схем (subject + схема → id), поэтому последующие операции чтения и записи снова будут обращаться к серверу Schema Registry. Полезно, если схема была удалена или перезаписана на стороне реестра, а также для проверки идемпотентности реестра в тестах.
SYSTEM DROP PARQUET METADATA CACHE
SYSTEM CLEAR|DROP TEXT INDEX CACHES
SYSTEM CLEAR TEXT INDEX HEADER CACHE,SYSTEM CLEAR TEXT INDEX DICTIONARY CACHEилиSYSTEM CLEAR TEXT INDEX POSTINGS CACHE
SYSTEM DROP REPLICA
ReplicatedMergeTree можно удалить с помощью следующего синтаксиса:
ReplicatedMergeTree в ZooKeeper. Это полезно, когда реплика недоступна, а ее метаданные невозможно удалить из ZooKeeper с помощью DROP TABLE, потому что такой таблицы уже не существует. Удалить можно только неактивную/устаревшую реплику; локальную реплику удалить нельзя, для этого используйте DROP TABLE. DROP REPLICA не удаляет никаких таблиц и не удаляет с диска ни данные, ни метаданные.
Первый удаляет метаданные реплики 'replica_name' таблицы database.table.
Второй делает то же самое для всех реплицируемых таблиц в базе данных.
Третий делает то же самое для всех реплицируемых таблиц на локальном сервере.
Четвертый полезен для удаления метаданных недоступной реплики, когда все остальные реплики таблицы были удалены. Для него нужно явно указать путь к таблице. Это должен быть тот же путь, который был передан в качестве первого аргумента движка ReplicatedMergeTree при создании таблицы.
SYSTEM 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.
SYSTEM CLEAR|DROP UNCOMPRESSED CACHE
use_uncompressed_cache.
Его размер можно задать с помощью настройки уровня сервера uncompressed_cache_size.
SYSTEM CLEAR|DROP COMPILED EXPRESSION CACHE
compile_expressions.
SYSTEM CLEAR|DROP QUERY CONDITION CACHE
SYSTEM CLEAR|DROP КЭШ ЗАПРОСОВ
SYSTEM CLEAR|DROP FORMAT SCHEMA CACHE
format_schema_path.
Поддерживаемые цели:
- Protobuf: удаляет импортированные определения сообщений Protobuf из памяти.
- Files: удаляет кэшированные файлы схем, хранящиеся локально в
format_schema_pathи создаваемые, когдаformat_schema_sourceимеет значениеquery. Примечание: если цель не указана, очищаются оба кэша.
SYSTEM FLUSH LOGS
system.query_log. В основном полезно для отладки, поскольку для большинства системных таблиц интервал сброса по умолчанию составляет 7,5 секунды.
Также создаёт системные таблицы, даже если очередь сообщений пуста.
SYSTEM RELOAD CONFIG
SYSTEM RELOAD CONFIG не перезагружает конфигурацию USER, хранящуюся в ZooKeeper: эта команда перезагружает только конфигурацию USER, которая хранится в users.xml. Чтобы перезагрузить всю конфигурацию USER, используйте SYSTEM RELOAD USERS
SYSTEM RELOAD USERS
SYSTEM SHUTDOWN
service clickhouse-server stop / kill {$pid_clickhouse-server})
SYSTEM KILL
kill -9 {$ pid_clickhouse-server})
SYSTEM INSTRUMENT
ENABLE_XRAY=1.
Это позволяет выполнять отладку и профилирование в продакшне без изменения исходного кода и с минимальными накладными расходами.
Если не добавлена ни одна точка инструментирования, потери производительности пренебрежимо малы, поскольку добавляется лишь дополнительный переход на ближайший
адрес в прологе и эпилоге тех функций, которые длиннее 200 инструкций.
SYSTEM INSTRUMENT ADD
system.instrumentation. Для одной и той же функции можно добавить несколько обработчиков, и они будут выполняться в порядке добавления.
Функции для инструментирования можно получить из системной таблицы system.symbols.
Существует три типа обработчиков, которые можно добавить к функциям:
Синтаксис
FUNCTION — это любая функция или её подстрока, например QueryMetricLog::startQuery, а обработчик — один из следующих
LOG
ENTRY или EXIT функции.
SLEEP
ENTRY, либо при EXIT:
PROFILE
ENTRY и EXIT при выполнении функции.
Результат профилирования сохраняется в system.trace_log и может быть преобразован
в формат трассировки событий Chrome.
SYSTEM INSTRUMENT REMOVE
ALL:
system.instrumentation.
Управление distributed таблицами
STOP DISTRIBUTED SENDS, FLUSH DISTRIBUTED и START DISTRIBUTED SENDS. Вы также можете синхронно вставлять распределённые данные с помощью настройки distributed_foreground_insert.
SYSTEM STOP DISTRIBUTED SENDS
Если параметр
prefer_localhost_replica включен (по умолчанию), данные всё равно будут вставлены в локальный сегмент.SYSTEM FLUSH DISTRIBUTED
SETTINGS; это может быть полезно, чтобы обойти временные ограничения, например max_concurrent_queries_for_all_users или max_memory_usage.
Каждый блок, ожидающий отправки, хранится на диске с настройками из исходного запроса INSERT, поэтому иногда может понадобиться переопределить эти настройки.
SYSTEM START DISTRIBUTED SENDS
SYSTEM STOP LISTEN
- Если указан модификатор
CUSTOM 'protocol', будет остановлен пользовательский протокол с указанным именем, определённый в разделеprotocolsконфигурации сервера. - Если указан модификатор
QUERIES ALL [EXCEPT .. [,..]], будут остановлены все протоколы, кроме указанных в предложенииEXCEPT. - Если указан модификатор
QUERIES DEFAULT [EXCEPT .. [,..]], будут остановлены все протоколы по умолчанию, кроме указанных в предложенииEXCEPT. - Если указан модификатор
QUERIES CUSTOM [EXCEPT .. [,..]], будут остановлены все пользовательские протоколы, кроме указанных в предложенииEXCEPT.
SYSTEM START LISTEN
Управление таблицами MergeTree
SYSTEM STOP MERGES
DETACH / ATTACH для таблицы запустит фоновые слияния, даже если ранее они были остановлены для всех таблиц MergeTree.SYSTEM START MERGES
SYSTEM STOP TTL MERGES
Ok. даже если таблица не существует или не использует движок MergeTree. Возвращает ошибку, если база данных не существует:
SYSTEM START TTL MERGES
Ok. даже если таблица не существует. Возвращает ошибку, если база данных не существует:
SYSTEM STOP MOVES
Ok., даже если таблица не существует. Возвращает ошибку, если база данных не существует:
SYSTEM START MOVES
Ok. даже если таблица не существует. Возвращает ошибку, если база данных не существует:
SYSTEM UNFREEZE
SYSTEM WAIT LOADING PARTS
Управление таблицами ReplicatedMergeTree
SYSTEM STOP FETCHES
ReplicatedMergeTree:
Всегда возвращает Ok. независимо от движка таблицы, даже если таблица или база данных не существуют.
SYSTEM START FETCHES
ReplicatedMergeTree:
Всегда возвращает Ok. независимо от движка таблицы, даже если таблица или база данных не существуют.
SYSTEM STOP REPLICATED SENDS
ReplicatedMergeTree:
SYSTEM START REPLICATED SENDS
ReplicatedMergeTree на другие реплики в кластере:
SYSTEM STOP REPLICATION QUEUES
ReplicatedMergeTree. Возможные типы фоновых задач: слияние, загрузка, мутация, DDL-операторы с предложением ON CLUSTER:
SYSTEM START REPLICATION QUEUES
ReplicatedMergeTree. Возможные типы фоновых задач — слияния, загрузки, мутации, DDL-операторы с предложением ON CLUSTER:
SYSTEM STOP PULLING REPLICATION LOG
ReplicatedMergeTree.
SYSTEM START PULLING REPLICATION LOG
SYSTEM STOP PULLING REPLICATION LOG.
SYSTEM SYNC REPLICA
ReplicatedMergeTree синхронизируется с другими репликами в кластере, но не дольше receive_timeout секунд.
[db.]replicated_merge_tree_family_table_name получает команды из общего журнала репликации в свою очередь репликации, а затем запрос ждёт, пока реплика не обработает все полученные команды. Поддерживаются следующие модификаторы:
- С
IF EXISTS(доступно начиная с 25.6) запрос не сгенерирует ошибку, если таблица не существует. Это полезно при добавлении новой реплики в кластер, когда она уже входит в конфигурацию кластера, но таблица для неё всё ещё создаётся и синхронизируется. - Если указан модификатор
STRICT, запрос ждёт, пока очередь репликации не опустеет. ВариантSTRICTможет так и не завершиться успешно, если в очереди репликации постоянно появляются новые записи. - Если указан модификатор
LIGHTWEIGHT, запрос ждёт только обработки записейGET_PART,ATTACH_PART,DROP_RANGE,REPLACE_RANGEиDROP_PART. Кроме того, модификатор LIGHTWEIGHT поддерживает необязательное выражение FROM ‘srcReplicas’, где ‘srcReplicas’ — это список имён исходных реплик, разделённых запятыми. Это расширение позволяет точнее настраивать синхронизацию, ограничивая её задачами репликации только от указанных исходных реплик. - Если указан модификатор
PULL, запрос получает новые записи очереди репликации из ZooKeeper, но не ждёт их обработки.
SYNC DATABASE REPLICA
SYSTEM RESTART REPLICA
ReplicatedMergeTree: текущее состояние будет сверено с ZooKeeper как с источником истины, и при необходимости в очередь ZooKeeper будут добавлены задачи.
Инициализация очереди репликации на основе данных ZooKeeper выполняется так же, как и для оператора ATTACH TABLE. На короткое время таблица будет недоступна для выполнения любых операций.
SYSTEM RESTORE REPLICA
ReplicatedMergeTree в режиме только для чтения.
Запрос можно выполнить после:
- Потери корневого пути ZooKeeper
/. - Потери пути реплик
/replicas. - Потери пути отдельной реплики
/replicas/replica_name/.
Части во всех состояниях перемещаются в папку
detached/. Части, которые были активны до потери данных (committed), подключаются.SYSTEM RESTORE DATABASE REPLICA
SYSTEM RESTART REPLICAS
ReplicatedMergeTree, сравнивает текущее состояние с ZooKeeper как с источником истины и при необходимости добавляет задачи в очередь ZooKeeper
SYSTEM CLEAR|DROP FILESYSTEM CACHE
SYSTEM SYNC FILE CACHE
Это слишком затратная операция и может использоваться не по назначению.
SYSTEM LOAD PRIMARY KEY
SYSTEM UNLOAD PRIMARY KEY
Управление Refreshable Materialized Views
system.view_refreshes.
SYSTEM STOP [REPLICATED] VIEW, STOP VIEWS
STOP VIEW действует только на текущую реплику, а STOP REPLICATED VIEW — на все реплики.
Состояние остановки не сохраняется после перезапуска сервера. После перезапуска представления возобновят обновление в соответствии с настроенным для них расписанием.
В базах данных Replicated или Shared
SYSTEM STOP VIEW действует только на текущую реплику. Чтобы остановить обновления на всех репликах, используйте SYSTEM STOP REPLICATED VIEW.SYSTEM START [REPLICATED] VIEW, START VIEWS
START VIEW отменяет действие STOP VIEW, а START REPLICATED VIEW — действие STOP REPLICATED VIEW. START VIEW также отменяет действие PAUSE VIEW.
SYSTEM PAUSE VIEW, PAUSE VIEWS
SYSTEM STOP VIEW, команда SYSTEM PAUSE VIEW не прерывает уже выполняющееся обновление: текущему обновлению даётся завершиться, а предотвращаются только последующие обновления.
Отменить это действие можно с помощью SYSTEM START VIEW или SYSTEM START VIEWS.
Состояние паузы не сохраняется после перезапуска сервера. После перезапуска представления возобновят обновление по настроенному расписанию.
В базах данных Replicated или Shared команда
SYSTEM PAUSE VIEW влияет только на текущую реплику.