ADD INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] ADD INDEX [IF NOT EXISTS] name expression TYPE type [GRANULARITY value] [FIRST|AFTER name] - Ajoute la description d’un index aux métadonnées des tables.
DROP INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] DROP INDEX [IF EXISTS] name - Supprime la description de l’index des métadonnées de la table et supprime les fichiers d’index du disque. Implémenté sous la forme d’une mutation.
MATERIALIZE INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] MATERIALIZE INDEX [IF EXISTS] name [IN PARTITION partition_name] - Reconstruit l’index secondaire name pour la partition partition_name spécifiée. Cette opération est implémentée sous la forme d’une mutation. Si la clause IN PARTITION est omise, l’index est reconstruit pour l’ensemble des données de la table.
CLEAR INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] CLEAR INDEX [IF EXISTS] name [IN PARTITION partition_name] - Supprime les fichiers d’index secondaires du disque sans en supprimer la définition. Implémenté sous forme de mutation.
Les commandes ADD, DROP et CLEAR sont légères, au sens où elles ne modifient que les métadonnées ou suppriment des fichiers.
De plus, elles sont répliquées, les métadonnées des index étant synchronisées via ClickHouse Keeper ou ZooKeeper.
La manipulation des index n’est prise en charge que pour les tables utilisant le moteur
*MergeTree (y compris les variantes répliquées).