Data Skipping 인덱스 다루기
다음 작업을 수행할 수 있습니다.
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를 통해 동기화합니다.