データスキップインデックスの操作
以下の操作が利用可能です。
ADD INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] ADD INDEX [IF NOT EXISTS] name expression TYPE type [GRANULARITY value] [FIRST|AFTER name] - テーブルのメタデータにインデックスの説明を追加します。
DROP INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] DROP INDEX [IF EXISTS] name - テーブルのメタデータからインデックスの説明を削除し、ディスクからインデックスファイルを削除します。ミューテーションとして実装されています。
MATERIALIZE INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] MATERIALIZE INDEX [IF EXISTS] name [IN PARTITION partition_name] - 指定されたpartition_nameに対して二次インデックスnameを再構築します。ミューテーションとして実装されています。IN PARTITION部分が省略された場合、テーブル全体のデータに対してインデックスを再構築します。
CLEAR INDEX
ALTER TABLE [db.]table_name [ON CLUSTER cluster] CLEAR INDEX [IF EXISTS] name [IN PARTITION partition_name] - ディスクから二次インデックスファイルを削除しますが、説明は削除しません。ミューテーションとして実装されています。
コマンドADD、DROP、CLEARは軽量で、メタデータの変更やファイルの削除のみを行います。また、これらはレプリケートされており、インデックスのメタデータをClickHouse KeeperやZooKeeperを通じて同期します。
インデックス操作は、*MergeTreeエンジン(replicatedバリアントを含む)を持つテーブルでのみサポートされています。