본문으로 바로가기
본문으로 바로가기

system.replicas

설명

로컬 서버에 있는 복제된 테이블(Replicated Table)의 정보와 상태를 포함합니다. 이 테이블은 모니터링 용도로 사용할 수 있습니다. 테이블에는 각 Replicated* 테이블마다 하나의 행이 있습니다.

컬럼

  • database (String) — 데이터베이스 이름.
  • table (String) — 테이블 이름입니다.
  • uuid (UUID) — 테이블의 UUID.
  • engine (String) — 테이블 엔진 이름입니다.
  • is_leader (UInt8) — 레플리카가 리더인지 여부를 나타냅니다. 여러 레플리카가 동시에 리더일 수 있습니다. merge_tree 설정 replicated_can_become_leader를 사용하면 레플리카가 리더가 되지 않도록 할 수 있습니다. 리더는 백그라운드 머지의 스케줄링을 담당합니다. 또한 리더 여부와 관계없이, 사용 가능하며 ZK에 세션이 있는 모든 레플리카에 쓰기를 수행할 수 있다는 점에 유의하십시오.
  • can_become_leader (UInt8) — 해당 레플리카가 리더가 될 수 있는지 나타냅니다.
  • is_readonly (UInt8) — 레플리카가 읽기 전용 모드인지 여부입니다. 이 모드는 config에 ClickHouse Keeper 관련 섹션이 없거나, ClickHouse Keeper에서 세션을 재초기화할 때 알 수 없는 오류가 발생했거나, ClickHouse Keeper에서 세션을 재초기화하는 동안 활성화됩니다.
  • readonly_start_time (Nullable(DateTime)) — 레플리카가 읽기 전용 모드로 전환된 시점의 타임스탬프입니다. 레플리카가 읽기 전용 모드가 아니면 NULL입니다.
  • is_session_expired (UInt8) — ClickHouse Keeper와의 세션 만료 여부를 나타냅니다. 기본적으로 is_readonly와 동일합니다.
  • future_parts (UInt32) — 아직 수행되지 않은 INSERT 또는 병합의 결과로 생성될 데이터 파트의 수입니다.
  • parts_to_check (UInt32) — 검증 대기열에 있는 데이터 파트의 개수입니다. 파트가 손상되었을 수 있다고 판단되면 검증 대기열에 추가됩니다.
  • zookeeper_name (String) — 테이블의 메타데이터가 저장되는 [Zoo]Keeper 클러스터(보조 클러스터일 수도 있음)의 이름
  • zookeeper_path (String) — ClickHouse Keeper에 있는 테이블 데이터의 경로입니다.
  • replica_name (String) — ClickHouse Keeper의 레플리카 이름입니다. 동일한 테이블에 속한 각 레플리카는 서로 다른 이름을 가집니다.
  • replica_path (String) — ClickHouse Keeper에 있는 레플리카 데이터의 경로입니다. 'zookeeper_path/replicas/replica_path'를 이어 붙인 것과 같습니다.
  • columns_version (Int32) — 테이블 구조의 버전 번호입니다. ALTER가 몇 차례 수행되었는지를 나타냅니다. 레플리카 간 버전이 다르면 일부 레플리카에는 아직 모든 ALTER가 적용되지 않았다는 뜻입니다.
  • queue_size (UInt32) — 수행을 기다리는 작업의 큐 크기입니다. 여기에는 데이터 블록 삽입, 병합, 그리고 기타 일부 작업이 포함됩니다. 일반적으로 future_parts와 같습니다.
  • inserts_in_queue (UInt32) — 수행되어야 하는 데이터 블록 삽입 수입니다. 삽입 작업은 일반적으로 상당히 빠르게 복제됩니다. 이 값이 크면 문제가 있음을 의미합니다.
  • merges_in_queue (UInt32) — 대기 중인 병합 수입니다. 병합에 시간이 오래 걸리는 경우가 있으므로, 이 값이 오랫동안 0보다 클 수 있습니다.
  • part_mutations_in_queue (UInt32) — 실행 대기 중인 뮤테이션의 수입니다.
  • queue_oldest_time (DateTime) — queue_size가 0보다 크면 대기열에 가장 오래 전에 추가된 작업의 시점을 표시합니다.
  • inserts_oldest_time (DateTime) — queue_oldest_time를 참조하세요.
  • merges_oldest_time (DateTime) — queue_oldest_time를 참조하십시오.
  • part_mutations_oldest_time (DateTime) — queue_oldest_time를 참조하세요.
  • oldest_part_to_get (String) — 복제 큐에서 가장 오래된 GET_PARTS 항목으로부터 확인된, 다른 레플리카에서 가져올 파트의 이름입니다.
  • oldest_part_to_merge_to (String) — 복제 큐에서 가장 오래된 MERGE_PARTS 항목에서 얻은, 병합되어 생성될 결과 파트 이름입니다.
  • oldest_part_to_mutate_to (String) — 복제 큐에서 가장 오래된 MUTATE_PARTS 항목에서 얻은, 변이 후 결과 파트의 이름입니다.
  • log_max_index (UInt64) — 일반 활동 로그의 최대 항목 번호입니다. 이 컬럼과 다음 3개의 컬럼(log_pointer, total_replicas, active_replicas)은 ClickHouse Keeper와 활성 세션이 있을 때만 0이 아닌 값을 가집니다.
  • log_pointer (UInt64) — 레플리카가 일반 작업 로그에서 실행 큐로 복사한 최대 항목 번호에 1을 더한 값입니다. log_pointer가 log_max_index보다 훨씬 작으면 문제가 있는 것입니다.
  • last_queue_update (DateTime) — 큐가 마지막으로 업데이트된 시각입니다.
  • absolute_delay (UInt64) — 현재 레플리카의 초 단위 지연 값입니다.
  • total_replicas (UInt32) — 이 테이블에 대해 알려진 레플리카의 총수입니다.
  • active_replicas (UInt32) — ClickHouse Keeper에 세션이 있는 이 테이블의 레플리카 수입니다(즉, 정상적으로 작동하는 레플리카 수).
  • lost_part_count (UInt64) — 테이블 생성 이후 모든 레플리카에서 해당 테이블에 대해 손실된 데이터 파트의 총개수입니다. 이 값은 ClickHouse Keeper에 영구적으로 저장되며 증가만 합니다.
  • last_queue_update_exception (String) — 큐에 손상된 항목이 포함되어 있을 때의 값입니다. 특히 ClickHouse가 버전 간 하위 호환성을 깨뜨려, 더 최신 버전에서 작성된 로그 항목을 이전 버전에서 구문 분석할 수 없게 되는 경우에 중요합니다.
  • zookeeper_exception (String) — ClickHouse Keeper에서 정보를 가져오는 중 오류가 발생한 경우 기록되는 마지막 예외 메시지입니다.
  • replica_is_active (Map(String, UInt8)) — 레플리카 이름과 해당 레플리카의 활성 상태를 나타내는 맵입니다.

별칭:

  • readonly_durationif(isNull(readonly_start_time), NULL, now() - readonly_start_time)의 별칭입니다.

예시

SELECT *
FROM system.replicas
WHERE table = 'test_table'
FORMAT Vertical
Query id: dc6dcbcb-dc28-4df9-ae27-4354f5b3b13e

Row 1:
───────
database:                    db
table:                       test_table
engine:                      ReplicatedMergeTree
is_leader:                   1
can_become_leader:           1
is_readonly:                 0
is_session_expired:          0
future_parts:                0
parts_to_check:              0
zookeeper_path:              /test/test_table
replica_name:                r1
replica_path:                /test/test_table/replicas/r1
columns_version:             -1
queue_size:                  27
inserts_in_queue:            27
merges_in_queue:             0
part_mutations_in_queue:     0
queue_oldest_time:           2021-10-12 14:48:48
inserts_oldest_time:         2021-10-12 14:48:48
merges_oldest_time:          1970-01-01 03:00:00
part_mutations_oldest_time:  1970-01-01 03:00:00
oldest_part_to_get:          1_17_17_0
oldest_part_to_merge_to:
oldest_part_to_mutate_to:
log_max_index:               206
log_pointer:                 207
last_queue_update:           2021-10-12 14:50:08
absolute_delay:              99
total_replicas:              5
active_replicas:             5
lost_part_count:             0
last_queue_update_exception:
zookeeper_exception:
replica_is_active:           {'r1':1,'r2':1}