클린룸 이벤트 시스템 테이블 참조
Important
이 시스템 테이블은 공개 프리뷰 상태에있습니다. 테이블에 액세스하려면 system
카탈로그에서 스키마를 사용하도록 설정해야 합니다. 자세한 내용은 시스템 테이블 스키마 사용을 참조하세요.
클린룸 이벤트 테이블은 계정의 클린룸(공개 미리 보기)에서 사용자 또는 협력자가 수행한 작업을 기록합니다. 이 표에는 계정 전체의 지역 데이터가 포함됩니다.
클린룸에 대한 자세한 내용은 Azure Databricks Clean Rooms란?을 참조하세요.
테이블 경로: 이 시스템 테이블은 system.access.clean_room_events
있습니다.
클린룸 이벤트 시스템 테이블 스키마
클린룸 이벤트 시스템 테이블은 다음 스키마를 사용합니다.
기록된 클린룸 이벤트
이 시스템 테이블은 다음 이벤트를 기록합니다.
-
CLEAN_ROOM_CREATED
: 사용자가 새 클린룸을 만듭니다. -
CLEAN_ROOM_DELETED
: 사용자가 클린룸을 삭제합니다. -
RUN_NOTEBOOK_STARTED
: 사용자가 클린룸에서 노트북 실행을 시작합니다. -
RUN_NOTEBOOK_COMPLETED
: Notebook 실행이 완료되었습니다.run_notebook_completed_metadata
확인하여 실행이 성공했는지 확인합니다. -
CLEAN_ROOM_ASSETS_UPDATED
: 클린룸의 자산이 업데이트됩니다. 자산을 추가, 업데이트 또는 삭제할 수 있습니다. -
DELETE_OUTPUT_SCHEMA
: 출력 스키마가 만료되고 삭제됩니다. 출력 스키마가 만료되면 삭제가 발생하므로 이 이벤트 형식에 대한initiator_global_metastore_id
항상system
.
완료된 노트북 실행 메타데이터 스키마
run_notebook_completed_metadata
열에는 RUN_NOTEBOOK_COMPLETED
이벤트에 대한 메타데이터 정보가 포함되어 있습니다. Notebook 실행에서
run_notebook_completed_metadata
열은 다음 스키마를 사용합니다.
notebook_name: "example_notebook"
run_id: "TaskRunId-55555129818570"
state: "SUCCESS"
duration_in_seconds: 120
output_schema:
name: "output_schema_123450129818570"
owner_global_metastore_id: "aws:us-west-2:55555e-55bc-55a5-55ab-555d5ec16013"
action: "CREATE"
expire_time: "2025-01-14T15:28:19.000Z"
assets_added:
0:
name: "important_data"
data_object_type: "TABLE"
클린룸 청구 가능 사용량 모니터링
클린룸 사용량 및 비용에 대해 자세히 알아보려면 이 테이블을 central_clean_room_id
열을 사용하여 billing.usage
테이블에 조인할 수 있습니다.
billing.usage
테이블에서 클린룸 사용량은 usage_metadata.central_clean_room_id
키를 사용하여 사용됩니다.
샘플 쿼리
다음 샘플 쿼리는 계정의 클린룸 활동에 대한 인사이트를 얻는 데 도움이 됩니다.
- 지정된 클린룸의 모든 이벤트를 나열합니다
- 지정된 협력자 시작한 모든 이벤트를 나열합니다.
- 클린룸의 모든 관련 협력자를 나열하십시오
- 실행이 가장 느린 Notebook 나열
- 모든 Notebook의 성공률
- 정리실에 지정된 테이블이 추가된 모든 이벤트를 나열합니다
지정된 클린룸의 모든 이벤트 나열
참고 항목
<clean_room_name>
지정한 클린룸 이름으로 대체합니다.
SELECT
event_time, initiator_global_metastore_id, event_type,
CASE
WHEN event_type = 'CLEAN_ROOM_CREATED' THEN to_json(clean_room_created_metadata)
WHEN event_type = 'CLEAN_ROOM_DELETED' THEN to_json(clean_room_deleted_metadata)
WHEN event_type = 'RUN_NOTEBOOK_STARTED' THEN to_json(run_notebook_started_metadata)
WHEN event_type = 'RUN_NOTEBOOK_COMPLETED' THEN to_json(run_notebook_completed_metadata)
WHEN event_type = 'CLEAN_ROOM_ASSETS_UPDATED' THEN to_json(clean_room_assets_updated_metadata)
ELSE ""
END AS event_metadata
FROM system.access.clean_room_events
WHERE clean_room_name = '<clean_room_name>'
ORDER BY event_time DESC
지정된 협력자가 시작한 모든 이벤트 나열
:initiator_global_metastore_id
매개 변수의 경우 공동 작업자의 전역 메타스토어 ID(공유 식별자라고도 함)를 입력합니다.
SELECT
clean_room_name,
event_type,
event_time,
CASE
WHEN event_type = 'CLEAN_ROOM_CREATED' THEN to_json(clean_room_created_metadata)
WHEN event_type = 'CLEAN_ROOM_DELETED' THEN to_json(clean_room_deleted_metadata)
WHEN event_type = 'RUN_NOTEBOOK_STARTED' THEN to_json(run_notebook_started_metadata)
WHEN event_type = 'RUN_NOTEBOOK_COMPLETED' THEN to_json(run_notebook_completed_metadata)
WHEN event_type = 'CLEAN_ROOM_ASSETS_UPDATED' THEN to_json(clean_room_assets_updated_metadata)
ELSE ""
END AS event_metadata
FROM
system.access.clean_room_events
WHERE
initiator_global_metastore_id = :initiator_global_metastore_id
ORDER BY
clean_room_name,
event_time DESC
클린룸의 모든 관련 협력자 나열
SELECT DISTINCT explode(transform(clean_room_created_metadata.collaborators, x -> x.collaborator_global_metastore_id)) AS collaborator
FROM system.access.clean_room_events
WHERE event_type = 'CLEAN_ROOM_CREATED'
가장 느린 노트북 파일 실행 목록
SELECT
clean_room_name,
run_notebook_completed_metadata.notebook_name AS notebook_name,
run_notebook_completed_metadata.duration_in_seconds AS duration_in_seconds,
run_notebook_completed_metadata.run_id AS run_id
FROM system.access.clean_room_events
WHERE event_type = 'RUN_NOTEBOOK_COMPLETED'
AND run_notebook_completed_metadata.state = 'SUCCESS'
AND run_notebook_completed_metadata.duration_in_seconds IS NOT NULL
ORDER BY duration_in_seconds DESC
모든 Notebook의 성공률
SELECT
clean_room_name,
run_notebook_completed_metadata.notebook_name AS notebook_name,
ROUND(COUNT(CASE WHEN run_notebook_completed_metadata.state = 'SUCCESS' THEN 1 END) * 1.0 / COUNT(*) * 100) AS success_rate
FROM system.access.clean_room_events
WHERE event_type = 'RUN_NOTEBOOK_COMPLETED'
GROUP BY clean_room_name, notebook_name
ORDER BY clean_room_name, notebook_name
클린룸에 지정된 테이블이 추가된 모든 이벤트를 나열합니다.
:table_name_string
매개 변수에 대해 지정된 테이블 이름을 입력합니다.
SELECT
clean_room_name,
initiator_global_metastore_id,
event_time,
clean_room_assets_updated_metadata
FROM
system.access.clean_room_events
WHERE
event_type = 'CLEAN_ROOM_ASSETS_UPDATED'
AND exists(
clean_room_assets_updated_metadata.added_assets,
item -> item.data_object_type = 'TABLE'
AND item.name = :table_name_string
)
ORDER BY
clean_room_name,
event_time DESC