dictionaries 시스템 테이블

dictionaries 시스템 테이블

dictionaries 시스템 테이블은 사전(dictionaries)에 대한 정보를 담고 있어요.

출처: 문서

본문

Querying in ClickHouse Cloud 이 시스템 테이블의 데이터는 ClickHouse Cloud의 각 노드에 로컬로 보관돼요. 따라서 모든 데이터에 대한 완전한 뷰를 얻으려면 clusterAllReplicas 함수가 필요해요. 자세한 내용은 여기를 참고해요.

Description (설명)

사전에 대한 정보를 담고 있어요.

Columns (열)

  • database (String) — DDL 쿼리로 생성된 사전을 포함하는 데이터베이스의 이름. 다른 사전에 대해서는 빈 문자열.
  • name (String) — 사전 이름.
  • uuid (UUID) — 사전 UUID.
  • status (Enum8(‘NOT_LOADED’ = 0, ‘LOADED’ = 1, ‘FAILED’ = 2, ‘LOADING’ = 3, ‘FAILED_AND_RELOADING’ = 4, ‘LOADED_AND_RELOADING’ = 5, ‘NOT_EXIST’ = 6)) — 사전 상태. 가능한 값: NOT_LOADED — 사전이 현재 메모리에 로드되지 않음, LOADED — 사전이 성공적으로 로드됨, FAILED — 오류로 인해 사전을 로드할 수 없음, LOADING — 사전이 현재 로드 중, LOADED_AND_RELOADING — 사전이 성공적으로 로드되었고 현재 다시 로드 중(흔한 이유: SYSTEM RELOAD DICTIONARY 쿼리, 타임아웃, 사전 구성 변경), FAILED_AND_RELOADING — 오류로 사전을 로드할 수 없었고 현재 로드 중.
  • origin (String) — 사전을 설명하는 구성 파일의 경로.
  • type (String) — 사전 할당의 유형. 사전을 메모리에 저장.
  • key.names (Array(String)) — 사전이 제공하는 키 이름의 배열.
  • key.types (Array(String)) — 사전이 제공하는 키 타입의 해당 배열.
  • attribute.names (Array(String)) — 사전이 제공하는 속성 이름의 배열.
  • attribute.types (Array(String)) — 사전이 제공하는 속성 타입의 해당 배열.
  • bytes_allocated (UInt64) — 사전에 할당된 RAM의 양.
  • hierarchical_index_bytes_allocated (UInt64) — 계층 인덱스에 할당된 RAM의 양.
  • query_count (UInt64) — 사전이 로드된 이후 또는 마지막 성공적인 재시작 이후의 쿼리 수.
  • hit_rate (Float64) — 캐시 사전의 경우 값이 캐시에 있었던 사용 비율.
  • found_rate (Float64) — 값이 발견된 사용 비율.
  • element_count (UInt64) — 사전에 저장된 항목 수.
  • load_factor (Float64) — 사전에서 채워진 비율(hashed 사전의 경우 해시 테이블에서 채워진 비율).
  • source (String) — 사전의 데이터 소스를 설명하는 텍스트.
  • lifetime_min (UInt64) — 사전이 메모리에 남아 있는 최소 수명으로, 이후 ClickHouse는 사전을 다시 로드하려고 시도해요(invalidate_query가 설정되면 변경된 경우에만). 초 단위로 설정.
  • lifetime_max (UInt64) — 사전이 메모리에 남아 있는 최대 수명으로, 이후 ClickHouse는 사전을 다시 로드하려고 시도해요(invalidate_query가 설정되면 변경된 경우에만). 초 단위로 설정.
  • loading_start_time (DateTime) — 사전 로딩의 시작 시간.
  • last_successful_update_time (DateTime) — 사전 로딩 또는 갱신의 종료 시간. 사전 소스의 일부 문제를 모니터링하고 원인을 조사하는 데 도움.
  • error_count (UInt64) — 마지막 성공적인 로딩 이후의 오류 수. 사전 소스의 일부 문제를 모니터링하고 원인을 조사하는 데 도움.
  • loading_duration (Float32) — 사전 로딩의 지속 시간.
  • last_exception (String) — 사전을 만들 수 없었을 때 사전을 생성하거나 다시 로드할 때 발생한 오류의 텍스트.
  • comment (String) — 사전에 대한 주석 텍스트.

Example (예제)

사전 구성:

CREATE DICTIONARY dictionary_with_comment
(
    id UInt64,
    value String
)
PRIMARY KEY id
SOURCE(CLICKHOUSE(HOST 'localhost' PORT tcpPort() TABLE 'source_table'))
LAYOUT(FLAT())
LIFETIME(MIN 0 MAX 1000)
COMMENT 'The temporary dictionary';

사전이 로드되었는지 확인:

SELECT * FROM system.dictionaries LIMIT 1 FORMAT Vertical;
Row 1:
──────
database:                    default
name:                        dictionary_with_comment
uuid:                        4654d460-0d03-433a-8654-d4600d03d33a
status:                      NOT_LOADED
origin:                      4654d460-0d03-433a-8654-d4600d03d33a
type:
key.names:                   ['id']
key.types:                   ['UInt64']
attribute.names:             ['value']
attribute.types:             ['String']
bytes_allocated:             0
query_count:                 0
hit_rate:                    0
found_rate:                  0
element_count:               0
load_factor:                 0
source:
lifetime_min:                0
lifetime_max:                0
loading_start_time:          1970-01-01 00:00:00
last_successful_update_time: 1970-01-01 00:00:00
loading_duration:            0
last_exception:
comment:                     The temporary dictionary

더 알아보기 (Learn more)