ADD INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] ADD INDEX [IF NOT EXISTS] name expression TYPE type [GRANULARITY value] [FIRST|AFTER name] - Agrega la definición del índice a los metadatos de la tabla.
DROP INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] DROP INDEX [IF EXISTS] name - Elimina la definición del índice de los metadatos de las tablas y borra los archivos de índice del disco. Se implementa como una mutación.
MATERIALIZE INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] MATERIALIZE INDEX [IF EXISTS] name [IN PARTITION partition_name] - Reconstruye el índice secundario name para la partición partition_name especificada. Se implementa como una mutación. Si se omite la parte IN PARTITION, reconstruye el índice para todos los datos de la tabla.
CLEAR INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] CLEAR INDEX [IF EXISTS] name [IN PARTITION partition_name] - Elimina del disco los archivos de índices secundarios sin eliminar su definición. Se implementa como una mutación.
Los comandos ADD, DROP y CLEAR son operaciones ligeras, en el sentido de que solo modifican metadatos o eliminan archivos.
Además, se replican y sincronizan los metadatos de los índices mediante ClickHouse Keeper o ZooKeeper.
La manipulación de índices solo se admite en tablas con motor
*MergeTree (incluidas las variantes replicated).