alter_* 세션 설정

alter_* 세션 설정

이 설정들은 ALTER 계열 쿼리의 실행 방식과 파티션/파트 조작 결과 표시, 복제본 대기 동작을 제어해요. ClickHouse 소스 코드에서 자동으로 생성된 세션 설정 문서예요.

출처: 문서

본문

이 설정들은 system.settings에서 사용할 수 있으며 소스 코드에서 자동으로 생성돼요.

alter_move_to_space_execute_async

ALTER TABLE MOVE … TO [DISK|VOLUME]을 비동기로 실행해요.

alter_partition_verbose_result

파티션과 파트에 대한 조작이 성공적으로 적용된 파트의 정보 표시를 활성화하거나 비활성화해요. ATTACH PARTITION|PARTFREEZE PARTITION에 적용돼요.

가능한 값:

  • 0 — 상세 표시 비활성화.
  • 1 — 상세 표시 활성화.

예시

CREATE TABLE test(a Int64, d Date, s String) ENGINE = MergeTree PARTITION BY toYYYYMDECLARE(d) ORDER BY a;
INSERT INTO test VALUES(1, '2021-01-01', '');
INSERT INTO test VALUES(1, '2021-01-01', '');
ALTER TABLE test DETACH PARTITION ID '202101';

ALTER TABLE test ATTACH PARTITION ID '202101' SETTINGS alter_partition_verbose_result = 1;

┌─command_type─────┬─partition_id─┬─part_name────┬─old_part_name─┐
│ ATTACH PARTITION │ 202101       │ 202101_7_7_0 │ 202101_5_5_0  │
│ ATTACH PARTITION │ 202101       │ 202101_8_8_0 │ 202101_6_6_0  │
└──────────────────┴──────────────┴──────────────┴───────────────┘

ALTER TABLE test FREEZE SETTINGS alter_partition_verbose_result = 1;

┌─command_type─┬─partition_id─┬─part_name────┬─backup_name─┬─backup_path───────────────────┬─part_backup_path────────────────────────────────────────────┐
│ FREEZE ALL   │ 202101       │ 202101_7_7_0 │ 8           │ /var/lib/clickhouse/shadow/8/ │ /var/lib/clickhouse/shadow/8/data/default/test/202101_7_7_0 │
│ FREEZE ALL   │ 202101       │ 202101_8_8_0 │ 8           │ /var/lib/clickhouse/shadow/8/ │ /var/lib/clickhouse/shadow/8/data/default/test/202101_8_8_0 │
└──────────────┴──────────────┴──────────────┴─────────────┴───────────────────────────────┴─────────────────────────────────────────────────────────────┘

alter_sync

별칭(Aliases): replication_alter_partitions_sync

ALTER, OPTIMIZE 또는 TRUNCATE 쿼리로 복제본에서 실행될 동작에 대한 대기 동작을 지정할 수 있게 해요.

가능한 값:

  • 0 — 대기하지 않음.
  • 1 — 자체 실행 대기.
  • 2 — 모두 대기.
  • 3 — 활성 복제본만 대기. 비활성 복제본은 활성화될 때 변경을 적용해요.

Cloud 기본값: 0.

alter_syncReplicatedSharedMergeTree 테이블에만 적용되며, 비 Replicated 또는 비 Shared 테이블에는 아무 영향도 없어요.

alter_update_mode

UPDATE 명령이 있는 ALTER 쿼리의 모드예요.

가능한 값:

  • heavy — 일반 mutation 실행.
  • lightweight — 가능하면 경량 업데이트(lightweight update) 실행, 그렇지 않으면 일반 mutation 실행.
  • lightweight_force — 가능하면 경량 업데이트 실행, 그렇지 않으면 예외 발생.

더 알아보기 (Learn more)