SYSTEM RELOAD EMBEDDED DICTIONARIES
Recharge tous les dictionnaires internes.
Par défaut, les dictionnaires internes sont désactivés.
Renvoie toujours Ok., quel que soit le résultat de la mise à jour des dictionnaires internes.
SYSTEM RELOAD DICTIONARIES
La requête SYSTEM RELOAD DICTIONARIES recharge les dictionnaires dont le statut est LOADED (voir la colonne status de system.dictionaries), c’est-à-dire les dictionnaires qui ont déjà été chargés avec succès.
Par défaut, les dictionnaires sont chargés de manière différée (voir dictionaries_lazy_load) ; ainsi, au lieu d’être chargés automatiquement au démarrage, ils sont initialisés lors du premier accès, via la fonction dictGet ou une instruction SELECT sur des tables avec ENGINE = Dictionary.
Syntaxe
SYSTEM RELOAD DICTIONARIES [ON CLUSTER cluster_name]SYSTEM RELOAD DICTIONARY
Recharge entièrement un dictionnaire dictionary_name, quel que soit son état (LOADED / NOT_LOADED / FAILED).
Renvoie toujours Ok., quel que soit le résultat de la mise à jour du dictionnaire.
SYSTEM RELOAD DICTIONARY [ON CLUSTER cluster_name] dictionary_nameL’état du dictionnaire peut être vérifié en interrogeant la table system.dictionaries.
SELECT name, status FROM system.dictionaries;SYSTEM UNLOAD DICTIONARY
Décharge le dictionnaire dictionary_name afin de libérer sa mémoire, si l'état du dictionnaire est LOADED.
Le dictionnaire est rechargé à la demande lorsque cela redevient nécessaire.
SYSTEM UNLOAD DICTIONARY dictionary_nameL’état du dictionnaire peut être vérifié en interrogeant la table system.dictionaries.
SELECT name, status FROM system.dictionaries;SYSTEM UNLOAD DICTIONARIES
La requête SYSTEM UNLOAD DICTIONARIES décharge de la mémoire tous les dictionnaires dont le statut est LOADED (voir la colonne status de system.dictionaries), c’est-à-dire les dictionnaires qui ont déjà été chargés avec succès.
SYSTEM UNLOAD DICTIONARIESSYSTEM RELOAD MODELS
Décharge tous les modèles CatBoost.
Syntaxe
SYSTEM RELOAD MODELS [ON CLUSTER cluster_name]SYSTEM RELOAD MODEL
Décharge le modèle CatBoost situé à model_path.
Syntaxe
SYSTEM RELOAD MODEL [ON CLUSTER cluster_name] <model_path>SYSTEM RELOAD FUNCTIONS
Recharge toutes les fonctions définies par l’utilisateur exécutables enregistrées, ou l’une d’entre elles, à partir d’un fichier de configuration.
Syntaxe
SYSTEM RELOAD FUNCTIONS [ON CLUSTER cluster_name]
SYSTEM RELOAD FUNCTION [ON CLUSTER cluster_name] function_nameSYSTEM RELOAD ASYNCHRONOUS METRICS
Recalcule toutes les métriques asynchrones. Comme les métriques asynchrones sont mises à jour périodiquement selon le paramètre asynchronous_metrics_update_period_s, il n’est généralement pas nécessaire de les mettre à jour manuellement à l’aide de cette instruction.
SYSTEM RELOAD ASYNCHRONOUS METRICS [ON CLUSTER cluster_name]SYSTEM CLEAR|DROP DNS CACHE
Vide le cache DNS interne de ClickHouse. Il est parfois nécessaire (avec d’anciennes versions de ClickHouse) d’utiliser cette commande lors d’une modification de l’infrastructure (par exemple, en cas de changement de l’adresse IP d’un autre serveur ClickHouse ou du serveur utilisé par les Dictionaries).
Pour une gestion plus pratique (automatique) du cache, consultez les paramètres disable_internal_dns_cache, dns_cache_max_entries, dns_cache_update_period.
SYSTEM CLEAR|DROP MARK CACHE
Vide le cache de marques.
SYSTEM CLEAR|DROP PRIMARY INDEX CACHE
Efface le cache de l’index primaire, qui stocke en mémoire les clés primaires des tables MergeTree.
Sa taille est configurée à l’aide du paramètre de niveau serveur primary_index_cache_size.
SYSTEM CLEAR|DROP ICEBERG METADATA CACHE
Vide le cache des métadonnées Iceberg.
SYSTEM CLEAR|DROP AVRO SCHEMA CACHE
Vide les caches par URL du Confluent Schema Registry utilisés par le format AvroConfluent. Cette opération supprime à la fois le cache de récupération des schémas (id → schéma) et le cache d'enregistrement des schémas (subject + schéma → id), de sorte que les lectures et écritures suivantes repassent par le serveur du registre. Utile lorsqu'un schéma a été supprimé ou réécrit côté registre, ou pour vérifier l'idempotence du registre dans les tests.
SYSTEM DROP PARQUET METADATA CACHE
Efface le cache de métadonnées Parquet.
SYSTEM CLEAR|DROP PAIMON METADATA CACHE
Efface le cache en mémoire des fichiers de métadonnées Paimon analysés (listes de manifestes et manifestes).
SYSTEM CLEAR|DROP POINT IN POLYGON CACHE
Efface le cache des polygones constants prétraités utilisés par la fonction pointInPolygon. La limite de taille configurée (le paramètre serveur point_in_polygon_cache_size) reste inchangée, de sorte que le cache continue ensuite à accepter des entrées. Pour désactiver le cache, définissez plutôt point_in_polygon_cache_size sur 0.
SYSTEM CLEAR|DROP TEXT INDEX CACHES
Efface les caches de tokens, d’en-tête et de postings de l’index de texte.
Si vous souhaitez effacer séparément l’un de ces caches, vous pouvez exécuter
SYSTEM CLEAR TEXT INDEX TOKENS CACHE,SYSTEM CLEAR TEXT INDEX HEADER CACHE, ouSYSTEM CLEAR TEXT INDEX POSTINGS CACHE
SYSTEM CLEAR|DROP INDEX MARK CACHE
Vide le cache des marques des index secondaires (data-skipping).
SYSTEM CLEAR|DROP INDEX UNCOMPRESSED CACHE
Efface le cache des blocs non compressés des index secondaires (data-skipping).
SYSTEM CLEAR|DROP MMAP CACHE
Efface le cache des fichiers mappés en mémoire.
SYSTEM CLEAR|DROP PAGE CACHE
Efface le userspace page cache, c’est-à-dire le cache en mémoire propre à ClickHouse pour les données lues depuis le stockage sous-jacent.
SYSTEM CLEAR|DROP VECTOR SIMILARITY INDEX CACHE
Vide le cache de l’index de similarité vectorielle.
SYSTEM CLEAR|DROP CONNECTIONS CACHE
Efface le cache des pools de connexions HTTP utilisés pour les connexions sortantes.
SYSTEM CLEAR|DROP S3 CLIENT CACHE
Efface le cache des clients S3.
SYSTEM PREWARM MARK CACHE
Charge en mémoire les marks d’une table dans le cache de marque. Les marks des index secondaires sont également chargés dans le cache des marks d’index.
SYSTEM PREWARM MARK CACHE [ON CLUSTER cluster_name] [db.]tableSYSTEM PREWARM PRIMARY INDEX CACHE
Charge les index primaires d’une table MergeTree dans le cache de l’index primaire.
SYSTEM PREWARM PRIMARY INDEX CACHE [ON CLUSTER cluster_name] [db.]tableSYSTEM CLEAR|DROP DISK METADATA CACHE
Vide le cache de métadonnées du disque spécifié.
SYSTEM DROP DISK METADATA CACHE <disk_name>SYSTEM SYNC FILESYSTEM CACHE
Met en cohérence l’état en mémoire de ClickHouse pour le cache du système de fichiers avec les fichiers de cache réellement présents sur le disque, et renvoie le cache_name, le path et la size téléchargée de chaque segment de fichier mis en cache. Un nom de cache facultatif limite l’opération à un seul cache.
SYSTEM SYNC FILESYSTEM CACHE ['<cache_name>']SYSTEM CLEAR|DROP DISTRIBUTED CACHE
Supprime le Distributed Cache. Utilisez CONNECTIONS pour supprimer uniquement les connexions mises en cache vers les serveurs du Distributed Cache, ou indiquez un identifiant de serveur pour cibler un seul serveur.
SYSTEM DROP DISTRIBUTED CACHE [CONNECTIONS | 'server_id']SYSTEM DROP REPLICA
Les répliques inactives des tables ReplicatedMergeTree peuvent être supprimées à l’aide de la syntaxe suivante :
SYSTEM DROP REPLICA 'replica_name' FROM TABLE database.table;
SYSTEM DROP REPLICA 'replica_name' FROM DATABASE database;
SYSTEM DROP REPLICA 'replica_name';
SYSTEM DROP REPLICA 'replica_name' FROM ZKPATH '/path/to/table/in/zk';Les requêtes supprimeront le chemin de la réplique ReplicatedMergeTree dans ZooKeeper. Cela est utile lorsque la réplique est hors service et que ses métadonnées ne peuvent plus être supprimées de ZooKeeper via DROP TABLE, car la table n'existe plus. Seule la réplique inactive/obsolète sera supprimée ; la réplique locale ne peut pas l'être. Pour cela, utilisez DROP TABLE. DROP REPLICA ne supprime aucune table et n'efface ni données ni métadonnées sur le disque.
La première supprime les métadonnées de la réplique 'replica_name' de la table database.table.
La deuxième fait de même pour toutes les tables répliquées de la base de données.
La troisième fait de même pour toutes les tables répliquées sur le serveur local.
La quatrième est utile pour supprimer les métadonnées d'une réplique hors service lorsque toutes les autres répliques d'une table ont été supprimées. Elle nécessite que le chemin de la table soit spécifié explicitement. Il doit s'agir du même chemin que celui passé comme premier argument du moteur ReplicatedMergeTree lors de la création de la table.
SYSTEM DROP DATABASE REPLICA
Les répliques inactives des bases de données Replicated peuvent être supprimées à l’aide de la syntaxe suivante :
SYSTEM DROP DATABASE REPLICA 'replica_name' [FROM SHARD 'shard_name'] FROM DATABASE database;
SYSTEM DROP DATABASE REPLICA 'replica_name' [FROM SHARD 'shard_name'];
SYSTEM DROP DATABASE REPLICA 'replica_name' [FROM SHARD 'shard_name'] FROM ZKPATH '/path/to/table/in/zk';Semblable à SYSTEM DROP REPLICA, mais supprime le chemin de la réplique de la base de données Replicated dans ZooKeeper lorsqu'il n'existe aucune base de données sur laquelle exécuter DROP DATABASE. Veuillez noter que cela ne supprime pas les répliques ReplicatedMergeTree (vous pouvez donc aussi avoir besoin de SYSTEM DROP REPLICA). Les noms du shard et de la réplique sont ceux qui ont été spécifiés dans les arguments du moteur Replicated lors de la création de la base de données. En outre, ces noms peuvent être récupérés à partir des colonnes database_shard_name et database_replica_name de system.clusters. Si la clause FROM SHARD est absente, replica_name doit alors être un nom de réplique complet au format shard_name|replica_name.
SYSTEM CLEAR|DROP UNCOMPRESSED CACHE
Efface le cache des données décompressées.
Le cache des données décompressées est activé/désactivé par le paramètre use_uncompressed_cache au niveau de la requête, de l’utilisateur ou du profil.
Sa taille peut être configurée à l’aide du paramètre uncompressed_cache_size au niveau du serveur.
SYSTEM CLEAR|DROP COMPILED EXPRESSION CACHE
Efface le cache des expressions compilées.
Le cache des expressions compilées est activé ou désactivé à l’aide du paramètre compile_expressions, défini au niveau de la requête, de l’utilisateur ou du profil.
SYSTEM CLEAR|DROP QUERY CONDITION CACHE
Vide le cache des conditions de requête.
SYSTEM CLEAR|DROP ENCRYPTION HEADERS CACHE
Efface le cache des en-têtes de chiffrement. Ce cache stocke les en-têtes de chiffrement lus au début des fichiers chiffrés et est utilisé par le chemin de lecture expérimental use_reader_executor afin d’éviter de les relire ; sa taille est configurée par le paramètre serveur encryption_header_cache_size.
SYSTEM CLEAR|DROP CACHE DE REQUÊTES
SYSTEM CLEAR QUERY CACHE;
SYSTEM CLEAR QUERY CACHE TAG '<tag>'Efface le cache de requêtes. Si un tag est spécifié, seules les entrées du cache de requêtes associées à ce tag sont supprimées.
SYSTEM CLEAR|DROP FORMAT SCHEMA CACHE
Vide le cache des schémas chargés depuis format_schema_path.
Cibles prises en charge :
- Protobuf : supprime de la mémoire les définitions de messages Protobuf importées.
- Fichiers : supprime les fichiers de schéma mis en cache et stockés localement dans
format_schema_path, générés lorsqueformat_schema_sourceest défini surquery. Remarque : si aucune cible n'est spécifiée, les deux caches sont vidés.
SYSTEM CLEAR|DROP FORMAT SCHEMA CACHE [FOR Protobuf/Files]SYSTEM FLUSH LOGS
Force l’écriture des messages de journalisation mis en mémoire tampon dans les tables système, par exemple system.query_log. Cette commande est surtout utile pour le débogage, car la plupart des tables système ont un intervalle de vidage par défaut de 7,5 secondes.
Elle crée également les tables système, même si la file d’attente des messages est vide.
SYSTEM FLUSH LOGS [ON CLUSTER cluster_name] [log_name|[database.table]] [, ...]Si vous ne voulez pas tout vider, vous pouvez vider un ou plusieurs logs individuels en indiquant soit leur nom, soit leur table cible :
SYSTEM FLUSH LOGS query_log, system.query_views_log;SYSTEM RELOAD CONFIG
Recharge la configuration de ClickHouse. S’utilise lorsque la configuration est stockée dans ZooKeeper. Notez que SYSTEM RELOAD CONFIG ne recharge pas la configuration USER stockée dans ZooKeeper ; il recharge uniquement la configuration USER stockée dans users.xml. Pour recharger l’ensemble de la configuration USER, utilisez SYSTEM RELOAD USERS
SYSTEM RELOAD CONFIG [ON CLUSTER cluster_name]SYSTEM RELOAD USERS
Recharge l’ensemble des stockages d’accès, notamment : users.xml, le stockage d’accès sur disque local, le stockage d’accès répliqué (dans ZooKeeper).
SYSTEM RELOAD USERS [ON CLUSTER cluster_name]SYSTEM SHUTDOWN
Arrête proprement ClickHouse (comme service clickhouse-server stop / kill {$pid_clickhouse-server})
SYSTEM KILL
Met fin au processus ClickHouse (comme kill -9 {$ pid_clickhouse-server})
SYSTEM INSTRUMENT
Gère les points d’instrumentation à l’aide de la fonctionnalité XRay de LLVM, disponible lorsque ClickHouse est compilé avec ENABLE_XRAY=1.
Cela permet de déboguer et de profiler en production sans modifier le code source, avec une surcharge minimale.
Lorsqu’aucun point d’instrumentation n’est ajouté, la pénalité de performance est négligeable, car cela ajoute seulement un saut supplémentaire vers une adresse proche
au prologue et à l’épilogue des fonctions de plus de 200 instructions.
SYSTEM INSTRUMENT ADD
Ajoute un nouveau point d’instrumentation. Les fonctions instrumentées peuvent être examinées dans la table système system.instrumentation. Plusieurs handlers peuvent être ajoutés à une même fonction, et ils seront exécutés dans le même ordre que celui dans lequel l’instrumentation a été ajoutée.
Les fonctions à instrumenter peuvent être répertoriées à partir de la table système system.symbols.
Il existe trois types différents de handlers à ajouter aux fonctions :
Syntax
SYSTEM INSTRUMENT ADD FUNCTION HANDLER [ARGUMENTS]où FUNCTION désigne n’importe quelle fonction ou sous-chaîne d’une fonction, telle que QueryMetricLog::startQuery, et où le gestionnaire est l’un des suivants
LOG
Affiche le texte passé en argument ainsi que la stack trace, soit à l'ENTRY, soit à l'EXIT de la fonction.
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' LOG ENTRY 'this is a log printed at entry'
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' LOG EXIT 'this is a log printed at exit'SLEEP
Suspend l’exécution pendant un nombre défini de secondes, soit sur ENTRY, soit sur EXIT :
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' SLEEP ENTRY 0.5ou pour un nombre aléatoire de secondes suivant une distribution uniforme, en fournissant min et max séparés par un espace :
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' SLEEP ENTRY 0 1PROFIL
Mesure le temps écoulé entre ENTRY et EXIT d'une fonction.
Le résultat du profilage est stocké dans system.trace_log et peut être converti
en format de trace d'événements Chrome.
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' PROFILESYSTEM INSTRUMENT REMOVE
Supprime un point d’instrumentation donné avec :
SYSTEM INSTRUMENT REMOVE IDtous à l’aide du mot-clé ALL :
SYSTEM INSTRUMENT REMOVE ALLun ensemble d’ID provenant d’une sous-requête :
SYSTEM INSTRUMENT REMOVE (SELECT id FROM system.instrumentation WHERE handler = 'log')ou tous les points d’instrumentation correspondant à un function_name donné :
SYSTEM INSTRUMENT REMOVE 'QueryMetricLog::startQuery'Les informations sur les points d’instrumentation peuvent être récupérées depuis la table système system.instrumentation.
Gestion des tables Distributed
ClickHouse peut gérer des tables Distributed. Lorsqu'un utilisateur insère des données dans ces tables, ClickHouse crée d'abord une file d'attente des données à envoyer aux nœuds du cluster, puis les envoie de manière asynchrone. Vous pouvez gérer le traitement de cette file d'attente avec les requêtes STOP DISTRIBUTED SENDS, FLUSH DISTRIBUTED et START DISTRIBUTED SENDS. Vous pouvez également insérer des données distribuées de manière synchrone avec le paramètre distributed_foreground_insert.
SYSTEM STOP DISTRIBUTED SENDS
Désactive la distribution des données en arrière-plan lors de l’insertion de données dans des tables Distributed.
SYSTEM STOP DISTRIBUTED SENDS [db.]<distributed_table_name> [ON CLUSTER cluster_name]SYSTEM FLUSH DISTRIBUTED
Force ClickHouse à envoyer les données aux nœuds du cluster de façon synchrone. Si certains nœuds sont indisponibles, ClickHouse lève une exception et arrête l’exécution de la requête. Vous pouvez relancer la requête jusqu’à ce qu’elle aboutisse, ce qui se produira lorsque tous les nœuds seront de nouveau en ligne.
Vous pouvez également surcharger certains paramètres via la clause SETTINGS ; cela peut être utile pour contourner certaines limitations temporaires, comme max_concurrent_queries_for_all_users ou max_memory_usage.
SYSTEM FLUSH DISTRIBUTED [db.]<distributed_table_name> [ON CLUSTER cluster_name] [SETTINGS ...]SYSTEM START DISTRIBUTED SENDS
Active la distribution des données en arrière-plan lors de l’insertion de données dans les tables Distributed.
SYSTEM START DISTRIBUTED SENDS [db.]<distributed_table_name> [ON CLUSTER cluster_name]SYSTEM STOP LISTEN
Ferme le socket et met fin proprement aux connexions existantes au serveur sur le port spécifié, à l’aide du protocole spécifié.
Toutefois, si les paramètres du protocole correspondant n’ont pas été spécifiés dans la configuration de clickhouse-server, cette commande n’aura aucun effet.
SYSTEM STOP LISTEN [ON CLUSTER cluster_name] [QUERIES ALL | QUERIES DEFAULT | QUERIES CUSTOM | TCP | TCP WITH PROXY | TCP SECURE | HTTP | HTTPS | MYSQL | GRPC | POSTGRESQL | PROMETHEUS | CUSTOM 'protocol']- Si le modificateur
CUSTOM 'protocol'est spécifié, le protocole personnalisé portant le nom indiqué, défini dans la section des protocoles de la configuration du serveur, sera arrêté. - Si le modificateur
QUERIES ALL [EXCEPT .. [,..]]est spécifié, tous les protocoles seront arrêtés, sauf ceux indiqués dans la clauseEXCEPT. - Si le modificateur
QUERIES DEFAULT [EXCEPT .. [,..]]est spécifié, tous les protocoles par défaut seront arrêtés, sauf ceux indiqués dans la clauseEXCEPT. - Si le modificateur
QUERIES CUSTOM [EXCEPT .. [,..]]est spécifié, tous les protocoles personnalisés seront arrêtés, sauf ceux indiqués dans la clauseEXCEPT.
SYSTEM START LISTEN
Permet d’établir de nouvelles connexions sur les protocoles spécifiés.
Cependant, si le serveur sur le port et avec le protocole spécifiés n’a pas été arrêté à l’aide de la commande SYSTEM STOP LISTEN, cette commande sera sans effet.
SYSTEM START LISTEN [ON CLUSTER cluster_name] [QUERIES ALL | QUERIES DEFAULT | QUERIES CUSTOM | TCP | TCP WITH PROXY | TCP SECURE | HTTP | HTTPS | MYSQL | GRPC | POSTGRESQL | PROMETHEUS | CUSTOM 'protocol']Gestion des tables MergeTree
ClickHouse peut gérer les opérations en arrière-plan dans les tables MergeTree.
SYSTEM STOP MERGES
Permet d'arrêter les fusions en arrière-plan pour les tables de la famille MergeTree :
SYSTEM STOP MERGES [ON CLUSTER cluster_name] [ON VOLUME <volume_name> | [db.]merge_tree_family_table_name]SYSTEM START MERGES
Permet de démarrer les fusions en arrière-plan pour les tables de la famille MergeTree :
SYSTEM START MERGES [ON CLUSTER cluster_name] [ON VOLUME <volume_name> | [db.]merge_tree_family_table_name]SYSTEM STOP TTL MERGES
Permet d’interrompre la suppression en arrière-plan des anciennes données selon l’expression TTL pour les tables de la famille MergeTree :
Renvoie Ok. même si la table n’existe pas ou n’utilise pas le moteur MergeTree. Renvoie une erreur lorsque la base de données n’existe pas :
SYSTEM STOP TTL MERGES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]SYSTEM START TTL MERGES
Permet de lancer en arrière-plan la suppression des anciennes données conformément à l’expression TTL pour les tables de la famille MergeTree :
Renvoie Ok. même si la table n’existe pas. Renvoie une erreur lorsque la base de données n’existe pas :
SYSTEM START TTL MERGES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]SYSTEM STOP MOVES
Permet d’arrêter les déplacements de données en arrière-plan selon l’expression TTL de table avec la clause TO VOLUME ou TO DISK pour les tables de la famille MergeTree :
Renvoie Ok. même si la table n’existe pas. Renvoie une erreur lorsque la base de données n’existe pas :
SYSTEM STOP MOVES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]SYSTEM START MOVES
Permet de lancer en arrière-plan les déplacements de données conformément à l’expression TTL de table avec les clauses TO VOLUME et TO DISK pour les tables de la famille MergeTree :
Renvoie Ok. même si la table n’existe pas. Renvoie une erreur lorsque la base de données n’existe pas :
SYSTEM START MOVES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]SYSTEM UNFREEZE
Supprime de tous les disques la sauvegarde gelée portant le nom spécifié. Pour en savoir plus sur le dégel de parts distinctes, voir ALTER TABLE table_name UNFREEZE WITH NAME
SYSTEM UNFREEZE WITH NAME <backup_name>SYSTEM WAIT LOADING PARTS
Attend le chargement de toutes les parts de données d’une table chargées de manière asynchrone (parts de données obsolètes).
SYSTEM WAIT LOADING PARTS [ON CLUSTER cluster_name] [db.]merge_tree_family_table_nameGestion des tables ReplicatedMergeTree
ClickHouse peut gérer les processus de réplication en arrière-plan dans les tables ReplicatedMergeTree.
SYSTEM STOP FETCHES
Permet d'arrêter les opérations de récupération en arrière-plan des parts insérées pour les tables de la famille ReplicatedMergeTree :
Renvoie toujours Ok., quel que soit le moteur de table, même si la table ou la base de données n'existe pas.
SYSTEM STOP FETCHES [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM START FETCHES
Permet de lancer les opérations de récupération en arrière-plan des parts insérées pour les tables de la famille ReplicatedMergeTree :
Renvoie toujours Ok., quel que soit le moteur de table, même si la table ou la base de données n’existe pas.
SYSTEM START FETCHES [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM STOP REPLICATED SENDS
Permet d’arrêter les envois en arrière-plan vers d’autres répliques du cluster des nouvelles parts insérées pour les tables de la famille ReplicatedMergeTree :
SYSTEM STOP REPLICATED SENDS [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM START REPLICATED SENDS
Permet de démarrer les envois en arrière-plan vers d’autres répliques du cluster pour les nouvelles parts de données insérées des tables de la famille ReplicatedMergeTree :
SYSTEM START REPLICATED SENDS [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM STOP REPLICATION QUEUES
Permet d'arrêter les tâches de récupération en arrière-plan des files d'attente de réplication stockées dans ZooKeeper pour les tables de la famille ReplicatedMergeTree. Types possibles de tâches en arrière-plan - fusions, récupérations, mutations, instructions DDL avec la clause ON CLUSTER :
SYSTEM STOP REPLICATION QUEUES [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM START REPLICATION QUEUES
Permet de démarrer les tâches de récupération en arrière-plan depuis les files d’attente de réplication stockées dans ZooKeeper pour les tables de la famille ReplicatedMergeTree. Types possibles de tâches en arrière-plan : fusions, récupérations, mutations, instructions DDL avec la clause ON CLUSTER :
SYSTEM START REPLICATION QUEUES [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM STOP PULLING REPLICATION LOG
Arrête le chargement des nouvelles entrées du journal de réplication vers la file d’attente de réplication d’une table ReplicatedMergeTree.
SYSTEM STOP PULLING REPLICATION LOG [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM START PULLING REPLICATION LOG
Annule l’effet de SYSTEM STOP PULLING REPLICATION LOG.
SYSTEM START PULLING REPLICATION LOG [ON CLUSTER cluster_name] [[db.]replicated_merge_tree_family_table_name]SYSTEM SYNC REPLICA
Attendez qu'une table ReplicatedMergeTree soit synchronisée avec les autres répliques d'un cluster, sans dépasser receive_timeout secondes.
SYSTEM SYNC REPLICA [ON CLUSTER cluster_name] [db.]replicated_merge_tree_family_table_name [IF EXISTS] [STRICT | LIGHTWEIGHT [FROM 'srcReplica1'[, 'srcReplica2'[, ...]]] | PULL]Après l’exécution de cette instruction, [db.]replicated_merge_tree_family_table_name récupère les commandes du journal répliqué commun dans sa propre file de réplication, puis la requête attend que la réplique traite toutes les commandes récupérées. Les modificateurs suivants sont pris en charge :
- Avec
IF EXISTS(disponible à partir de la version 25.6), la requête ne renverra pas d’erreur si la table n’existe pas. Cela est utile lors de l’ajout d’une nouvelle réplique à un cluster, lorsqu’elle fait déjà partie de la configuration du cluster mais qu’elle est encore en cours de création et de synchronisation de la table. - Si un modificateur
STRICTa été spécifié, la requête attend que la file de réplication soit vide. La versionSTRICTpeut ne jamais aboutir si de nouvelles entrées apparaissent constamment dans la file de réplication. - Si un modificateur
LIGHTWEIGHTa été spécifié, la requête attend uniquement que les entréesGET_PART,ATTACH_PART,DROP_RANGE,REPLACE_RANGEetDROP_PARTsoient traitées. De plus, le modificateur LIGHTWEIGHT prend en charge une clause facultativeFROM 'srcReplicas', où 'srcReplicas' est une liste de noms de répliques sources séparés par des virgules. Cette extension permet une synchronisation plus ciblée en se concentrant uniquement sur les tâches de réplication provenant des répliques sources spécifiées. - Si un modificateur
PULLa été spécifié, la requête récupère de nouvelles entrées de la file de réplication depuis ZooKeeper, mais n’attend pas leur traitement.
SYNCHRONISER LA RÉPLIQUE DE LA BASE DE DONNÉES
Attend jusqu’à ce que la base de données répliquée spécifiée applique toutes les modifications de schéma de la file d’attente DDL de cette base de données.
Syntaxe
SYSTEM SYNC DATABASE REPLICA replicated_database_name;SYSTEM RESTART REPLICA
Permet de réinitialiser l’état de la session ZooKeeper pour la table ReplicatedMergeTree, de comparer l’état actuel à celui de ZooKeeper, qui sert de source de référence, et d’ajouter des tâches à la file d’attente ZooKeeper si nécessaire.
L’initialisation de la file d’attente de réplication à partir des données ZooKeeper s’effectue de la même manière que pour l’instruction ATTACH TABLE. Pendant une courte période, la table sera indisponible pour toute opération.
SYSTEM RESTART REPLICA [ON CLUSTER cluster_name] [db.]replicated_merge_tree_family_table_nameSYSTEM RESTORE REPLICA
Restaure une réplique si les données sont [potentiellement] présentes, mais que les métadonnées ZooKeeper ont été perdues.
Fonctionne uniquement sur les tables ReplicatedMergeTree en mode readonly.
Cette requête peut être exécutée après :
- la perte de la racine ZooKeeper
/; - la perte du chemin des répliques
/replicas; - la perte du chemin d'une réplique individuelle
/replicas/replica_name/.
La réplique attache les parts trouvées localement et envoie à ZooKeeper des informations à leur sujet. Les parts présentes sur une réplique avant la perte des métadonnées ne sont pas récupérées de nouveau depuis d'autres répliques si elles ne sont pas obsolètes (la restauration d'une réplique ne signifie donc pas le retéléchargement de toutes les données sur le réseau).
SYSTEM RESTORE DATABASE REPLICA
Restaure une réplique si des données sont [éventuellement] présentes, mais que les métadonnées de ZooKeeper sont perdues.
Syntaxe
SYSTEM RESTORE DATABASE REPLICA repl_db [ON CLUSTER cluster]Exemple
CREATE DATABASE repl_db
ENGINE=Replicated("/clickhouse/repl_db", shard1, replica1);
CREATE TABLE repl_db.test_table (n UInt32)
ENGINE = ReplicatedMergeTree
ORDER BY n PARTITION BY n % 10;
-- zookeeper_delete_path("/clickhouse/repl_db", recursive=True) <- root loss.
SYSTEM RESTORE DATABASE REPLICA repl_db;Syntaxe
SYSTEM RESTORE REPLICA [db.]replicated_merge_tree_family_table_name [ON CLUSTER cluster_name]Autre syntaxe :
SYSTEM RESTORE REPLICA [ON CLUSTER cluster_name] [db.]replicated_merge_tree_family_table_nameExemple
Création d'une table sur plusieurs serveurs. Après la perte des métadonnées de la réplique dans ZooKeeper, la table sera attachée en lecture seule, faute de métadonnées. La dernière requête doit être exécutée sur chaque réplique.
CREATE TABLE test(n UInt32)
ENGINE = ReplicatedMergeTree('/clickhouse/tables/test/', '{replica}')
ORDER BY n PARTITION BY n % 10;
INSERT INTO test SELECT * FROM numbers(1000);
-- zookeeper_delete_path("/clickhouse/tables/test", recursive=True) <- root loss.
SYSTEM RESTART REPLICA test;
SYSTEM RESTORE REPLICA test;Une autre méthode :
SYSTEM RESTORE REPLICA test ON CLUSTER cluster;SYSTEM RESTART REPLICAS
Permet de réinitialiser l’état des sessions Zookeeper pour toutes les tables ReplicatedMergeTree, de comparer l’état actuel avec celui de Zookeeper, considéré comme source de vérité, et d’ajouter des tâches à la file d’attente de Zookeeper si nécessaire
SYSTEM CLEAR|DROP FILESYSTEM CACHE
Permet de supprimer le cache du système de fichiers.
SYSTEM CLEAR FILESYSTEM CACHE [ON CLUSTER cluster_name]SYSTEM SYNC FILE CACHE
Exécute l’appel système sync.
SYSTEM SYNC FILE CACHE [ON CLUSTER cluster_name]SYSTEM LOAD PRIMARY KEY
Charge les clés primaires de la table indiquée ou de toutes les tables.
SYSTEM LOAD PRIMARY KEY [db.]nameSYSTEM LOAD PRIMARY KEYSYSTEM UNLOAD PRIMARY KEY
Décharge les clés primaires de la table spécifiée ou de toutes les tables.
SYSTEM UNLOAD PRIMARY KEY [db.]nameSYSTEM UNLOAD PRIMARY KEYGestion des vues matérialisées avec rafraîchissement
Commandes permettant de contrôler les tâches d'arrière-plan exécutées par les vues matérialisées avec rafraîchissement
Surveillez system.view_refreshes lors de leur utilisation.
SYSTEM STOP [REPLICATED] VIEW, STOP VIEWS
Désactive l’actualisation périodique de la vue spécifiée ou de toutes les vues actualisables. Si une actualisation est en cours, elle est également annulée.
Si la vue se trouve dans une base de données Replicated ou Shared, STOP VIEW n’affecte que la réplique courante, tandis que STOP REPLICATED VIEW affecte toutes les répliques.
SYSTEM STOP VIEW [db.]nameSYSTEM STOP VIEWSSYSTEM START [REPLICATED] VIEW, START VIEWS
Active l'actualisation périodique pour la vue indiquée ou pour toutes les vues actualisables. Aucun rafraîchissement immédiat n'est déclenché.
Si la vue se trouve dans une base de données Replicated ou Shared, START VIEW annule l'effet de STOP VIEW, et START REPLICATED VIEW annule l'effet de STOP REPLICATED VIEW. START VIEW annule également l'effet de PAUSE VIEW.
SYSTEM START VIEW [db.]nameSYSTEM START VIEWSSYSTEM PAUSE VIEW, PAUSE VIEWS
Désactive le rafraîchissement périodique de la vue spécifiée ou de toutes les vues actualisables.
Contrairement à SYSTEM STOP VIEW, SYSTEM PAUSE VIEW n’interrompt pas un rafraîchissement déjà en cours : le rafraîchissement en cours peut aller à son terme, et seules les rafraîchissements suivantes sont empêchées.
Pour annuler, utilisez SYSTEM START VIEW ou SYSTEM START VIEWS.
SYSTEM PAUSE VIEW [db.]nameSYSTEM PAUSE VIEWSSYSTEM REFRESH VIEW
Déclenche un rafraîchissement immédiat d’une vue donnée en dehors de la planification prévue.
SYSTEM REFRESH VIEW [db.]nameSYSTEM WAIT VIEW
Attend la fin du rafraîchissement en cours. Si aucun rafraîchissement n’est en cours, la commande retourne immédiatement. Si la dernière tentative de rafraîchissement a échoué, elle signale une erreur.
Peut être utilisée juste après la création d’une nouvelle vue matérialisée actualisable (sans le mot-clé EMPTY) pour attendre la fin du rafraîchissement initial.
Si la vue se trouve dans une base de données Replicated ou Shared, et qu’un rafraîchissement est en cours sur une autre réplique, attend la fin de ce rafraîchissement.
SYSTEM WAIT VIEW [db.]nameSYSTEM CANCEL VIEW
S'il y a un rafraîchissement en cours pour la vue spécifiée sur la réplique actuelle, interrompez-le et annulez-le. Sinon, ne faites rien.
SYSTEM CANCEL VIEW [db.]nameGestion des activités en arrière-plan
Commandes indépendantes du moteur permettant de contrôler les activités en arrière-plan d’une table donnée ou de toutes les tables concernées du serveur à la fois. Elles couvrent :
- les vues matérialisées rafraîchissables (leur rafraîchissement périodique) ;
- les moteurs de table de streaming qui consomment en continu une source externe : Kafka, RabbitMQ, NATS, S3Queue et AzureQueue.
Pour une vue matérialisée rafraîchissable, chaque verbe est un alias de la commande SYSTEM ... VIEW correspondante décrite dans Gestion des vues matérialisées rafraîchissables. Ainsi, SYSTEM STOP [db.]name se comporte exactement comme SYSTEM STOP VIEW [db.]name, et ainsi de suite.
Les formes applicables à une table et avec caractère générique diffèrent dans leur traitement des tables sans activité en arrière-plan. La forme applicable à une table (SYSTEM STOP [db.]table) génère une erreur si la table désignée n’est ni un moteur de streaming ni une vue matérialisée rafraîchissable. La forme avec caractère générique ignore silencieusement ces tables ; son exécution est donc toujours sans risque.
STOP et CANCEL interrompent la consommation dès que possible. Pour Kafka, RabbitMQ et NATS, ils arrêtent la lecture depuis la source, mais n’interrompent pas un insert déjà commencé : un bloc en cours d’écriture dans les vues matérialisées est tout de même terminé et validé. S3Queue et AzureQueue effectuent la lecture et l’insertion dans un seul pipeline. Lorsque la déduplication est activée (par défaut), l’insert est également annulé et les fichiers sont retraités ultérieurement. Lorsque la déduplication est désactivée, le batch en cours est au contraire terminé et validé (comme pour les moteurs ci-dessus) afin d’éviter la duplication de lignes. Les données lues mais pas encore validées sont de nouveau consommées ultérieurement : rien n’est donc perdu, à l’exception de NATS core (sans JetStream), qui ne peut pas les redistribuer et les supprime.
PAUSE n’interrompt pas un insert en cours ; il n’entraîne donc normalement aucune perte. NATS core fait exception : la mise en pause arrête la consommation et supprime les messages déjà reçus, mais pas encore insérés, que NATS core ne peut pas redistribuer.
SYSTEM STOP
Arrête l’activité en arrière-plan et la maintient à l’arrêt : interrompt ce qui est en cours d’exécution et n’exécute plus rien jusqu’à SYSTEM START. Équivalent à PAUSE + CANCEL.
SYSTEM STOP [db.]table
SYSTEM STOP ALL BACKGROUNDSYSTEM START
Reprend l’activité après un SYSTEM STOP ou un SYSTEM PAUSE. Aucune activité n’est interrompue.
SYSTEM START [db.]table
SYSTEM START ALL BACKGROUNDSYSTEM PAUSE
Empêche toute nouvelle activité en arrière-plan, mais laisse d’abord se terminer les tâches en cours.
SYSTEM PAUSE [db.]table
SYSTEM PAUSE ALL BACKGROUNDSYSTEM CANCEL
Interrompt uniquement l’activité en cours, sans bloquer les activités futures : la table continue de s’actualiser ou de consommer selon sa planification. N’a aucun effet si aucune activité n’est en cours.
SYSTEM CANCEL [db.]table
SYSTEM CANCEL ALL BACKGROUNDSYSTEM REFRESH
Exécute un cycle supplémentaire en dehors de la planification. Sur une table de streaming, cette commande s’exécute immédiatement et une seule fois, même si la table est arrêtée ou en pause. Sur une vue matérialisée rafraîchissable, elle se comporte comme SYSTEM REFRESH VIEW : si la vue est arrêtée, le rafraîchissement est mémorisé et s’exécute une fois que SYSTEM START la relance.
SYSTEM REFRESH [db.]table
SYSTEM REFRESH ALL BACKGROUNDPrivilèges
Chaque commande requiert le privilège correspondant au moteur concerné : SYSTEM VIEWS pour une vue matérialisée actualisable et SYSTEM STREAMING ENGINES pour une table de streaming. Ces deux privilèges sont des enfants de SYSTEM BACKGROUND ; l’octroi de SYSTEM BACKGROUND permet donc de contrôler l’activité en arrière-plan de toutes ces tables. Les formes ALL BACKGROUND s’appliquent uniquement aux tables que l’utilisateur est autorisé à contrôler et ignorent silencieusement les autres.
SYSTEM FLUSH OBJECT STORAGE QUEUE
Bloque l’exécution jusqu’à ce que le fichier indiqué ait été traité ou ait définitivement échoué dans la table S3Queue ou AzureQueue donnée. Renvoie immédiatement si le fichier a déjà été traité. Génère une erreur si le fichier a définitivement échoué (toutes les tentatives de nouvelle exécution ont été épuisées).
SYSTEM FLUSH OBJECT STORAGE QUEUE [db.]table_name PATH 'path'