system.query_views_log 시스템 테이블
system.query_views_log 시스템 테이블
system.query_views_log 는 쿼리 실행 시 실행된 의존 뷰(예: 뷰 유형 또는 실행 시간)에 대한 정보를 담고 있어요.
출처: 문서
본문
ClickHouse Cloud에서의 조회 — 이 시스템 테이블의 데이터는 ClickHouse Cloud에서 각 노드에 로컬로 저장돼요. 따라서 모든 데이터의 완전한 뷰를 얻으려면 clusterAllReplicas 함수가 필요해요. 자세한 내용은 여기 를 참고하세요.
Description
쿼리 실행 시 실행된 의존 뷰에 대한 정보(예: 뷰 유형 또는 실행 시간)를 포함해요. 로깅을 시작하려면:
-
query_views_log 섹션에서 파라미터를 구성해요.
-
log_query_views 를 1로 설정해요.
데이터의 flush 주기는 query_views_log 서버 설정 섹션의 flush_interval_milliseconds 파라미터로 설정돼요. 강제로 flush하려면 SYSTEM FLUSH LOGS 쿼리를 사용해요.
ClickHouse는 테이블에서 데이터를 자동으로 삭제하지 않아요. 자세한 내용은 Introduction 을 참고하세요.
log_queries_probability 설정을 사용하여 query_views_log 테이블에 등록되는 쿼리 수를 줄일 수 있어요.
이 테이블은 언제든지 안전하게 truncate 하거나 drop 할 수 있어요.
Columns
-
hostname(LowCardinality(String)) — 쿼리를 실행한 서버의 호스트 이름이에요. -
clickhouse_version(LowCardinality(String)) — 이 행을 만든 ClickHouse 서버의 버전이에요. -
system_processor(LowCardinality(String)) — 이 행을 만든 ClickHouse 서버의 CPU 아키텍처예요. -
event_date(Date) — 뷰의 마지막 이벤트가 발생한 날짜예요. -
event_time(DateTime) — 뷰가 실행을 마친 날짜와 시간이에요. -
event_time_microseconds(DateTime64(6)) — 뷰가 실행을 마친 날짜와 시간(마이크로초 정밀도)이에요. -
view_duration_ms(UInt64) — 뷰 실행 시간(단계 합계)이에요(밀리초). -
initial_query_id(String) — 동일한 쿼리 체인에서 초기 쿼리의 ID예요. -
view_name(String) — 뷰의 이름이에요. -
view_uuid(UUID) — 뷰의 UUID예요. -
view_type(Enum8(‘Default’ = 1, ‘Materialized’ = 2, ‘Live’ = 3, ‘Window’ = 4)) — 뷰의 유형이에요. 값: ‘Default’ = 1 — 기본 뷰. 이 로그에는 나타나지 않아야 해요, ‘Materialized’ = 2 — 구체화된 뷰, ‘Live’ = 3 — 라이브 뷰. -
view_query(String) — 뷰가 실행한 쿼리예요. -
view_target(String) — 뷰 대상 테이블의 이름이에요. -
read_rows(UInt64) — 읽은 행 수예요. -
read_bytes(UInt64) — 읽은 바이트 수예요. -
written_rows(UInt64) — 쓴 행 수예요. -
written_bytes(UInt64) — 쓴 바이트 수예요. -
peak_memory_usage(Int64) — 이 뷰의 맥락에서 할당된 메모리와 해제된 메모리 양 사이의 최대 차이예요. -
ProfileEvents(Map(LowCardinality(String), UInt64)) — 다양한 메트릭을 측정하는 ProfileEvents예요. 이에 대한 설명은 system.events 테이블에서 찾을 수 있어요. -
status(Enum8(‘QueryStart’ = 1, ‘QueryFinish’ = 2, ‘ExceptionBeforeStart’ = 3, ‘ExceptionWhileProcessing’ = 4)) — 뷰의 상태예요. 값: ‘QueryStart’ = 1 — 뷰 실행의 성공적인 시작. 나타나지 않아야 해요, ‘QueryFinish’ = 2 — 뷰 실행의 성공적인 종료, ‘ExceptionBeforeStart’ = 3 — 뷰 실행 시작 전 예외, ‘ExceptionWhileProcessing’ = 4 — 뷰 실행 중 예외. -
exception_code(Int32) — 예외 코드예요. -
exception(String) — 예외 메시지예요. -
stack_trace(String) — 스택 트레이스예요. 쿼리가 성공적으로 완료되면 빈 문자열이에요.
별칭(Aliases):
-
ProfileEvents.Names—mapKeys(ProfileEvents)의 별칭이에요. -
ProfileEvents.Values—mapValues(ProfileEvents)의 별칭이에요.
Example
Query
SELECT * FROM system.query_views_log LIMIT 1 \G;
Response
Row 1:
──────
hostname: clickhouse.eu-central1.internal
event_date: 2021-06-22
event_time: 2021-06-22 13:23:07
event_time_microseconds: 2021-06-22 13:23:07.738221
view_duration_ms: 0
initial_query_id: c3a1ac02-9cad-479b-af54-9e9c0a7afd70
view_name: default.matview_inner
view_uuid: 00000000-0000-0000-0000-000000000000
view_type: Materialized
view_query: SELECT * FROM default.table_b
view_target: default.`.inner.matview_inner`
read_rows: 4
read_bytes: 64
written_rows: 2
written_bytes: 32
peak_memory_usage: 4196188
ProfileEvents: {'FileOpen':2,'WriteBufferFromFileDescriptorWrite':2,'WriteBufferFromFileDescriptorWriteBytes':187,'IOBufferAllocs':3,'IOBufferAllocBytes':3145773,'FunctionExecute':3,'DiskWriteElapsedMicroseconds':13,'InsertedRows':2,'InsertedBytes':16,'SelectedRows':4,'SelectedBytes':48,'ContextLock':16,'RWLockAcquiredReadLocks':1,'RealTimeMicroseconds':698,'SoftPageFaults':4,'OSReadChars':463}
status: QueryFinish
exception_code: 0
exception:
stack_trace:
See also
-
system.query_log —
query_log시스템 테이블에 대한 설명으로, 쿼리 실행에 대한 공통 정보를 포함해요. -
system.query_thread_log — 이 테이블은 각 쿼리 실행 스레드에 대한 정보를 포함해요.