always_fetch MergeTree 설정

always_fetch MergeTree 설정 (always_fetch_*_part MergeTree settings)

이 문서는 파트를 항상 다른 복제본에서 가져오도록 하는 MergeTree 설정들을 다루는 페이지예요. 이 복제본이 병합·뮤테이션을 직접 수행하지 않도록 설정합니다.

출처: 문서

본문

이 설정들은 system.merge_tree_settings에서 확인할 수 있으며 ClickHouse 소스에서 자동 생성됩니다.

always_fetch_merged_part

true이면 이 복제본은 파트를 병합하지 않고 항상 다른 복제본에서 병합된 파트를 다운로드해요. 가능한 값:

  • true, false

always_fetch_mutated_part

true이면 이 복제본은 MUTATE_PART 복제 로그 항목(ALTER TABLE ... UPDATE/DELETE 같은 일반 뮤테이션)을 실행하지 않고 항상 다른 복제본에서 뮤테이션된 파트를 다운로드해요. 뮤테이션은 하나 이상의 복제본에서 이 설정이 비활성화되어야 완료될 수 있습니다. 이 설정은 경량 업데이트가 만든 패치 파트에는 영향을 주지 않아요. 패치는 파트 병합 시 여전히 로컬로 적용됩니다. 병합(패치 파트 적용 포함)도 다른 복제본에 맡기려면 always_fetch_merged_part도 활성화하세요. 이 복제본은 뮤테이션을 실행하지 않고 뮤테이션 실패 상태는 각 복제본에 로컬이므로, 이 복제본에서의 동기 대기는 뮤테이션을 실행하는 복제본에서 발생하는 실패를 관찰할 수 없어요. 따라서 이 복제본에서는 동기식 뮤테이션(mutations_sync = 1 또는 2)과 데이터를 뮤테이션하는 동기식 ALTER 쿼리(alter_sync = 1 또는 2)가, 뮤테이션 실패 시 멈추게 될 대기를 하는 대신 SUPPORT_IS_DISABLED 오류로 거부됩니다. mutations_sync = 0(alter_sync = 0)을 사용하거나, 뮤테이션을 실행하는 복제본에서 이 쿼리를 실행하세요. 가능한 값:

  • true, false

더 알아보기 (Learn more)