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

system.parts

설명

MergeTree 테이블의 파트에 대한 정보가 포함됩니다.

각 행은 하나의 데이터 파트를 나타냅니다.

컬럼

  • partition (String) — 파티션 식별자입니다(테이블 파티션 키 표현식에서 파생된 문자열 표현).
  • name (String) — 데이터 파트 이름입니다. 파트 이름 구조를 통해 데이터, 수집, 머지 패턴과 관련된 다양한 특성을 파악할 수 있습니다. 파트 이름 형식은 다음과 같습니다.
<partition_id>_<minimum_block_number>_<maximum_block_number>_<level>_<data_version>
  • 정의:

    • partition_id - 파티션 키를 식별합니다
    • minimum_block_number - 파트에서 최소 블록 번호를 식별합니다. ClickHouse는 항상 연속된 블록을 머지(merge)합니다
    • maximum_block_number - 파트에서 최대 블록 번호를 식별합니다
    • level - 파트에 대해 머지가 일어날 때마다 1씩 증가합니다. 레벨이 0이면 아직 머지되지 않은 새로운 파트임을 나타냅니다. ClickHouse의 모든 파트는 항상 변경 불가능(immutable)하다는 점이 중요합니다
    • data_version - 선택적 값으로, 파트에 뮤테이션(mutation)이 발생할 때 증가합니다. 파트는 변경 불가능하므로, 뮤테이션된 데이터 역시 항상 새로운 파트에만 기록됩니다
  • uuid (UUID) — 데이터 파트의 UUID입니다.

  • part_type (String) — 데이터 파트의 저장 형식입니다. 가능한 값: Wide — 각 컬럼이 별도의 파일에 저장됩니다. Compact — 모든 컬럼이 하나의 파일에 저장됩니다. 데이터 저장 형식은 MergeTree 테이블의 min_bytes_for_wide_partmin_rows_for_wide_part 설정으로 제어됩니다.

  • active (UInt8) — 데이터 파트가 활성 상태인지 여부를 나타내는 플래그입니다. 데이터 파트가 활성 상태이면 테이블에서 사용됩니다. 그렇지 않으면 삭제될 예정입니다. 비활성 데이터 파트는 병합 및 mutation 작업 후에 나타납니다.

  • marks (UInt64) — 마크의 개수입니다. 데이터 파트의 대략적인 행 수를 구하려면 마크 개수에 인덱스 granularity(일반적으로 8192)를 곱하십시오(이 방법은 adaptive granularity에서는 적용되지 않습니다).

  • rows (UInt64) — 행 수.

  • files (UInt64) — 데이터 파트의 파일 수입니다.

  • bytes_on_disk (UInt64) — 모든 데이터 파트 파일의 총 크기(바이트 단위)입니다.

  • data_compressed_bytes (UInt64) — 데이터 파트의 압축된 데이터 전체 크기입니다. 모든 보조 파일(예: 마크 파일)은 포함되지 않습니다.

  • data_uncompressed_bytes (UInt64) — 데이터 파트의 압축되지 않은 데이터 전체 크기입니다. 모든 보조 파일(예: 마크 파일)은 포함되지 않습니다.

  • primary_key_size (UInt64) — 디스크의 primary.idx/cidx 파일에 있는 기본 키(primary key) 값에 사용되는 메모리 양(바이트)입니다.

  • marks_bytes (UInt64) — 마크 파일의 크기입니다.

  • secondary_indices_compressed_bytes (UInt64) — 데이터 파트에 있는 보조 인덱스의 압축 데이터 총크기입니다. 모든 보조 파일(예: 마크 파일)은 포함되지 않습니다.

  • secondary_indices_uncompressed_bytes (UInt64) — 데이터 파트에서 보조 인덱스용 비압축 데이터의 총 크기입니다. 마크가 있는 파일과 같은 모든 보조 파일은 포함되지 않습니다.

  • secondary_indices_marks_bytes (UInt64) — 보조 인덱스용 마크 파일의 크기입니다.

  • modification_time (DateTime) — 데이터 파트가 들어 있는 디렉터리가 수정된 시간입니다. 일반적으로 데이터 파트가 생성된 시간과 일치합니다.

  • remove_time (DateTime) — 데이터 파트가 비활성화된 시각입니다.

  • refcount (UInt32) — 데이터 파트가 사용되는 곳의 수입니다. 값이 2보다 크면 해당 데이터 파트가 쿼리 또는 병합에서 사용 중임을 나타냅니다.

  • min_date (Date) — 데이터 파트의 날짜 키 최솟값입니다.

  • max_date (Date) — 데이터 파트에 있는 날짜 키의 최댓값입니다.

  • min_time (DateTime) — 데이터 파트에서 날짜 및 시간 키의 최솟값입니다.

  • max_time (DateTime) — 데이터 파트에 있는 날짜 및 시간 키의 최댓값입니다.

  • partition_id (String) — 파티션 ID입니다.

  • min_block_number (Int64) — 병합 후 현재 파트를 구성하는 데이터 파트들의 최소 번호입니다.

  • max_block_number (Int64) — 병합 후 현재 파트를 구성하는 데이터 파트들 중 가장 큰 번호입니다.

  • level (UInt32) — 병합 트리의 깊이입니다. 0은 현재 파트가 다른 파트를 병합해 생성된 것이 아니라 삽입으로 생성되었음을 의미합니다.

  • data_version (UInt64) — 데이터 파트에 어떤 뮤테이션을 적용할지 결정하는 데 사용되는 숫자입니다(data_version보다 버전이 높은 뮤테이션).

  • primary_key_bytes_in_memory (UInt64) — 기본 키(primary key) 값이 차지하는 메모리 크기(바이트)입니다. primary_key_lazy_load가 활성화되어 있고 키가 로드되지 않은 경우에는 0입니다.

  • primary_key_bytes_in_memory_allocated (UInt64) — 기본 키(primary key) 값에 예약된 메모리 양(바이트)입니다. primary_key_lazy_load가 활성화되어 있고 키가 로드되지 않은 경우에는 0입니다.

  • index_granularity_bytes_in_memory (UInt64) — 인덱스 세분성 값에 사용되는 메모리 크기(바이트)입니다 (primary&#95;key&#95;lazy&#95;load=1use&#95;primary&#95;key&#95;cache=1인 경우 0입니다).

  • index_granularity_bytes_in_memory_allocated (UInt64) — 인덱스 세분성 값에 대해 예약된 메모리 크기(바이트 단위)입니다(primary&#95;key&#95;lazy&#95;load=1use&#95;primary&#95;key&#95;cache=1인 경우 0입니다).

  • is_frozen (UInt8) — 파티션 데이터 백업의 존재 여부를 나타내는 플래그입니다. 1이면 백업이 존재합니다. 0이면 백업이 존재하지 않습니다. 자세한 내용은 FREEZE PARTITION을 참조하십시오.

  • database (String) — 데이터베이스의 이름입니다.

  • table (String) — 테이블의 이름입니다.

  • engine (String) — 매개변수 없이 지정된 테이블 엔진의 이름입니다.

  • disk_name (String) — 데이터 파트를 저장하는 디스크 이름입니다.

  • path (String) — 데이터 파트 파일이 들어 있는 폴더의 절대 경로입니다.

  • hash_of_all_files (String) — 압축 파일의 sipHash128 값입니다.

  • hash_of_uncompressed_files (String) — 압축되지 않은 파일(마크가 포함된 파일, 인덱스 파일 등)의 sipHash128입니다.

  • uncompressed_hash_of_compressed_files (String) — 압축 파일의 데이터를 압축 해제한 것처럼 취급했을 때의 sipHash128입니다.

  • delete_ttl_info_min (DateTime) — TTL DELETE 규칙의 날짜 및 시간 키의 최솟값입니다.

  • delete_ttl_info_max (DateTime) — TTL DELETE 규칙의 날짜 및 시간 키의 최댓값입니다.

  • move_ttl_info.expression (Array(String)) — 표현식의 배열입니다. 각 표현식은 TTL MOVE 규칙을 정의합니다.

  • move_ttl_info.min (Array(DateTime)) — 날짜 및 시간 값으로 이루어진 배열입니다. 각 요소는 TTL MOVE 규칙의 최소 키 값을 설명합니다.

  • move_ttl_info.max (Array(DateTime)) — 날짜 및 시간 값의 배열입니다. 각 요소는 TTL MOVE 규칙의 최대 키 값을 나타냅니다.

  • default_compression_codec (String) — 이 데이터 파트를 압축할 때 사용되는 코덱의 이름입니다(컬럼에 명시적인 코덱이 지정되지 않은 경우).

  • recompression_ttl_info.expression (Array(String)) — TTL 표현식입니다.

  • recompression_ttl_info.min (Array(DateTime)) — 이 파트 내에서 계산된 TTL 표현식의 최솟값입니다. TTL이 만료된 행이 1개 이상 있는지 확인하는 데 사용됩니다.

  • recompression_ttl_info.max (Array(DateTime)) — 이 part에서 계산된 TTL 표현식의 최댓값입니다. TTL이 만료된 모든 행이 포함되어 있는지 파악하는 데 사용됩니다.

  • group_by_ttl_info.expression (Array(String)) — TTL 표현식입니다.

  • group_by_ttl_info.min (Array(DateTime)) — 이 파트 내에서 계산된 TTL 표현식의 최솟값입니다. TTL이 만료된 행이 1개 이상 있는지 파악하는 데 사용됩니다.

  • group_by_ttl_info.max (Array(DateTime)) — 이 파트 내에서 계산된 TTL 표현식의 최댓값입니다. TTL이 만료된 모든 행이 포함되어 있는지 확인하는 데 사용됩니다.

  • rows_where_ttl_info.expression (Array(String)) — TTL 표현식입니다.

  • rows_where_ttl_info.min (Array(DateTime)) — 이 데이터 파트에서 계산된 TTL 표현식의 최솟값입니다. TTL이 만료된 행이 하나 이상 있는지 확인하는 데 사용됩니다.

  • rows_where_ttl_info.max (Array(DateTime)) — 이 데이터 파트에서 계산된 TTL 표현식의 최댓값입니다. TTL이 만료된 모든 행이 포함되어 있는지 파악하는 데 사용됩니다.

  • projections (Array(String)) — 이 part에 대해 계산된 프로젝션 이름의 목록입니다.

  • visible (UInt8) — 이 데이터 파트가 SELECT 쿼리에서 표시되는지 여부를 나타내는 플래그입니다.

  • creation_tid (Tuple(UInt64, UInt64, UUID)) — 이 객체를 생성했거나 생성을 시도 중인 트랜잭션의 ID입니다.

  • removal_tid_lock (UInt64) — removal_tid의 해시로, 객체를 제거할 때 잠그는 데 사용됩니다.

  • removal_tid (Tuple(UInt64, UInt64, UUID)) — 이 객체를 제거했거나 제거하려는 트랜잭션의 ID

  • creation_csn (UInt64) — 이 객체를 생성한 트랜잭션의 CSN

  • removal_csn (UInt64) — 이 객체를 삭제한 트랜잭션의 CSN

  • has_lightweight_delete (UInt8) — часть에 경량한 삭제 마스크가 있는지 여부를 나타내는 플래그입니다.

  • last_removal_attempt_time (DateTime) — 서버가 이 파트를 삭제하려고 마지막으로 시도한 시간입니다.

  • removal_state (String) — часть 제거 프로세스의 현재 상태입니다.

별칭:

  • bytesbytes_on_disk의 별칭입니다.
  • marks_sizemarks_bytes의 별칭입니다.
  • part_namename의 별칭입니다.

예시

SELECT * FROM system.parts LIMIT 1 FORMAT Vertical;
Row 1:
──────
partition:                             tuple()
name:                                  all_1_4_1_6
part_type:                             Wide
active:                                1
marks:                                 2
rows:                                  6
bytes_on_disk:                         310
data_compressed_bytes:                 157
data_uncompressed_bytes:               91
secondary_indices_compressed_bytes:    58
secondary_indices_uncompressed_bytes:  6
secondary_indices_marks_bytes:         48
marks_bytes:                           144
modification_time:                     2020-06-18 13:01:49
remove_time:                           1970-01-01 00:00:00
refcount:                              1
min_date:                              1970-01-01
max_date:                              1970-01-01
min_time:                              1970-01-01 00:00:00
max_time:                              1970-01-01 00:00:00
partition_id:                          all
min_block_number:                      1
max_block_number:                      4
level:                                 1
data_version:                          6
primary_key_bytes_in_memory:           8
primary_key_bytes_in_memory_allocated: 64
is_frozen:                             0
database:                              default
table:                                 months
engine:                                MergeTree
disk_name:                             default
path:                                  /var/lib/clickhouse/data/default/months/all_1_4_1_6/
hash_of_all_files:                     2d0657a16d9430824d35e327fcbd87bf
hash_of_uncompressed_files:            84950cc30ba867c77a408ae21332ba29
uncompressed_hash_of_compressed_files: 1ad78f1c6843bbfb99a2c931abe7df7d
delete_ttl_info_min:                   1970-01-01 00:00:00
delete_ttl_info_max:                   1970-01-01 00:00:00
move_ttl_info.expression:              []
move_ttl_info.min:                     []
move_ttl_info.max:                     []

함께 보기