쿼리 기록 시스템 테이블 참조
Important
이 시스템 테이블은 공개 미리 보기로 제공됩니다. 테이블에 액세스하려면 system
카탈로그에서 스키마를 사용하도록 설정해야 합니다. 자세한 내용은 시스템 테이블 스키마 사용을 참조하세요.
이 문서에는 테이블 스키마의 개요를 포함하여 쿼리 기록 시스템 테이블에 대한 정보가 포함되어 있습니다.
Important
쿼리 기록 시스템 테이블에 액세스하려면 query
스키마를 사용하도록 설정해야 합니다. 시스템 스키마를 사용하도록 설정하는 방법에 대한 지침은 시스템 테이블 스키마 사용을 참조하세요.
테이블 경로: 이 시스템 테이블은 .에 있습니다 system.query.history
.
쿼리 기록 테이블 사용
쿼리 기록 테이블에는 SQL 웨어하우스를 사용하여 실행되는 모든 SQL 문에 대한 레코드가 포함됩니다. 테이블에는 테이블에 액세스하는 동일한 지역에 있는 모든 작업 영역의 계정 전체 레코드가 포함됩니다.
기본적으로 관리자만 시스템 테이블에 액세스할 수 있습니다. 테이블의 데이터를 사용자 또는 그룹과 공유하려는 경우 Databricks는 각 사용자 또는 그룹에 대한 다이나믹 보기를 만드는 것이 좋습니다. 동적 뷰 만들기를 참조하세요.
쿼리 기록 시스템 테이블 스키마
쿼리 기록 테이블에서는 다음 스키마를 사용합니다.
열 이름 | 데이터 형식 | 설명 | 예시 |
---|---|---|---|
account_id |
string | 계정의 ID. | 11e22ba4-87b9-4cc2 -9770-d10b894b7118 |
workspace_id |
string | 쿼리가 실행된 작업 영역의 ID. | 1234567890123456 |
statement_id |
string | 문의 실행을 고유하게 식별하는 ID. 이 ID를 사용하여 쿼리 기록 UI에서 문 실행을 찾을 수 있습니다. | 7a99b43c-b46c-432b -b0a7-814217701909 |
session_id |
string | Spark 세션 ID. | 01234567-cr06-a2mp -t0nd-a14ecfb5a9c2 |
execution_status |
string | 문 종료 상태. 가능한 값은 다음과 같습니다. - FINISHED : 실행이 완료됨- FAILED : 함께 제공되는 오류 메시지에 설명된 실패 원인으로 인해 실행이 실패함- CANCELED : 실행이 취소됨 |
FINISHED |
compute |
struct | 문을 실행하는 데 사용되는 컴퓨팅 리소스의 형식과 해당하는 리소스의 ID를 나타내는 구조체. type 값은 WAREHOUSE 또는 SERVERLESS_COMPUTE 입니다. |
{ type: WAREHOUSE, cluster_id: NULL, warehouse_id: ec58ee3772e8d305 } |
executed_by_user_id |
string | 문을 실행한 사용자의 ID. | 2967555311742259 |
executed_by |
string | 문을 실행한 사용자의 이메일 주소 또는 사용자 이름. | example@databricks.com |
statement_text |
string | SQL 문의 텍스트. 고객 관리형 키를 구성한 경우 statement_text 는 비어 있습니다. |
SELECT 1 |
statement_type |
string | 문 유형. 예: ALTER , COPY 및 INSERT . |
SELECT |
error_message |
string | 오류 조건을 설명하는 메시지. 고객 관리형 키를 구성한 경우 error_message 는 비어 있습니다. |
[INSUFFICIENT_PERMISSIONS] Insufficient privileges: User does not have permission SELECT on table 'default.nyctaxi_trips'. |
client_application |
string | 문을 실행한 클라이언트 애플리케이션. 예: Databricks SQL 편집기, Tableau 및 Power BI. 이 필드는 클라이언트 애플리케이션에서 제공하는 정보에서 파생됩니다. 값은 시간이 지남에 따라 정적 상태로 유지되어야 하지만 이를 보장할 수 없습니다. | Databricks SQL Editor |
client_driver |
string | 문을 실행하기 위해 Azure Databricks에 연결하는 데 사용되는 커넥터. 예: Databricks SQL Driver for Go, Databricks ODBC Driver, Databricks JDBC Driver. | Databricks JDBC Driver |
total_duration_ms |
bigint | 결과 페치 시간을 제외하고 문의 총 실행 시간(밀리초). | 1 |
waiting_for_compute_duration_ms |
bigint | 컴퓨팅 리소스가 프로비전될 때까지 대기하는 데 소요된 시간(밀리초). | 1 |
waiting_at_capacity_duration_ms |
bigint | 사용 가능한 컴퓨팅 용량을 큐에서 대기하는 데 소요된 시간(밀리초). | 1 |
execution_duration_ms |
bigint | 문을 실행하는 데 소요된 시간(밀리초). | 1 |
compilation_duration_ms |
bigint | 메타데이터를 로드하고 쿼리를 최적화하는 데 소요된 시간(밀리초). | 1 |
total_task_duration_ms |
bigint | 모든 태스크 기간의 합계(밀리초)입니다. 이 시간은 모든 노드의 모든 코어에서 쿼리를 실행하는 데 소요된 결합된 시간을 나타냅니다. 여러 태스크가 병렬로 실행되는 경우 벽시계 기간보다 훨씬 길 수 있습니다. 태스크가 사용 가능한 노드를 기다리는 경우 벽시계 기간보다 짧을 수 있습니다. | 1 |
result_fetch_duration_ms |
bigint | 실행이 완료된 후 문 결과를 가져오는 데 소요된 시간(밀리초). | 1 |
start_time |
timestamp | Databricks가 요청을 수신한 시간. 표준 시간대 정보는 UTC를 나타내는 +00:00 와 함께 값의 끝에 기록됩니다. |
2022-12-05T00:00:00.000+0000 |
end_time |
timestamp | 결과 페치 시간을 제외하고 문 실행이 종료된 시간. 표준 시간대 정보는 UTC를 나타내는 +00:00 와 함께 값의 끝에 기록됩니다. |
2022-12-05T00:00:00.000+00:00 |
update_time |
timestamp | 문이 마지막으로 진행률 업데이트를 수신한 시간. 표준 시간대 정보는 UTC를 나타내는 +00:00 와 함께 값의 끝에 기록됩니다. |
2022-12-05T00:00:00.000+00:00 |
read_partitions |
bigint | 정리 후 읽은 파티션 수. | 1 |
pruned_files |
bigint | 정리된 파일 수. | 1 |
read_files |
bigint | 정리 후 읽은 파일 수. | 1 |
read_rows |
bigint | 문이 읽은 총 행 수. | 1 |
produced_rows |
bigint | 문이 반환한 총 행 수. | 1 |
read_bytes |
bigint | 문에서 읽은 데이터의 총 크기(바이트). | 1 |
read_io_cache_percent |
int | IO 캐시에서 읽은 영구 데이터의 바이트 비율. | 50 |
from_result_cache |
부울 값 | TRUE 는 명령문 결과가 캐시에서 페치었음을 나타냅니다. |
TRUE |
spilled_local_bytes |
bigint | 문을 실행하는 동안 디스크에 일시적으로 기록된 데이터의 크기(바이트). | 1 |
written_bytes |
bigint | 클라우드 개체 스토리지에 기록된 영구 데이터의 크기(바이트). | 1 |
shuffle_read_bytes |
bigint | 네트워크를 통해 전송된 총 데이터 양(바이트). | 1 |
query_source |
struct | 작업, Notebook 또는 대시보드와 같이 이 명령문 실행에 관련된 하나 이상의 Databricks 엔터티를 나타내는 키-값 쌍을 포함하는 구조체입니다. 이 필드는 Databricks 엔터티만 기록합니다. | { job_info: { job_id: 64361233243479 job_run_id: 887406461287882 job_task_key: “job_task_1” job_task_run_id: 110378410199121 } |
executed_as |
string | 문을 실행하는 데 권한이 사용된 사용자 또는 서비스 주체의 이름입니다. | example@databricks.com |
executed_as_user_id |
string | 문을 실행하는 데 사용된 권한을 가진 사용자 또는 서비스 주체의 ID입니다. | 2967555311742259 |
레코드에 대한 쿼리 프로필 보기
쿼리 기록 테이블의 레코드를 기반으로 쿼리의 쿼리 프로필로 이동하려면 다음을 수행합니다.
- 관심 있는 레코드를 식별한 다음, 레코드의
statement_id
를 복사합니다. - 레코드의
workspace_id
를 참조하여 레코드와 동일한 작업 영역에 로그인했는지 확인합니다. - 작업 영역 사이드바에서 쿼리 기록을 클릭합니다.
- 문 ID 필드에서 레코드에
statement_id
를 붙여넣습니다. - 쿼리의 이름을 클릭합니다. 쿼리 메트릭의 개요가 나타납니다.
- 쿼리 프로필 보기를 클릭합니다.