SYSTEM$AUTO_REFRESH_STATUS

외부에서 관리되는 Iceberg 테이블 에 대해 자동화된 새로 고침 상태를 반환합니다.

구문

SYSTEM$AUTO_REFRESH_STATUS('<table_name>')
Copy

인자

'table_name'

현재 자동 새로 고침 상태를 검색하려는 Iceberg 테이블의 이름입니다.

정규화된 이름을 사용하는 경우 데이터베이스와 스키마를 포함하여 전체 이름을 작은따옴표로 묶어야 합니다. 테이블 이름이 대/소문자를 구분하거나 특수 문자나 공백을 포함하는 경우에는 큰따옴표를 사용해야 합니다. 큰따옴표는 작은따옴표 내에 묶습니다(예: '"Table_Name"').

반환

이 함수는 다음 이름/값 쌍을 포함하는 JSON 오브젝트를 반환합니다.

{
  “executionState”:”<value>”,
  ”invalidExecutionStateReason”:”<value>”
  ”pendingSnapshotCount”:<value>,
  ”oldestSnapshotTime”:<value>,
  ”currentSnapshotId”:”<value>”,
  ”lastSnapshotTime”:”<value>”,
  ”lastUpdatedTime”:<value>
}
Copy

여기서

“executionState”

Snowflake가 테이블에 대한 메타데이터 새로 고침을 자동화하는 데 사용하는 파이프의 현재 실행 상태입니다.

값:

  • RUNNING: 자동 새로 고침이 예상대로 실행되고 있습니다. 이 상태는 Snowflake가 파이프에 대한 이벤트 메시지를 적극적으로 처리하고 있는지 여부를 나타내지 않습니다.

  • STALLED: 자동 새로 고침에서 오류가 발생하여 복구를 시도하고 있습니다.

  • STOPPED: 자동 새로 고침에서 복구할 수 없는 오류가 발생하여 추가적인 조치를 취하지 않을 경우 새로 고침이 중지됩니다. 자세한 내용은 오류 복구 섹션을 참조하십시오.

”invalidExecutionStateReason”

STALLED 또는 STOPPED 실행 상태와 관련된 오류 메시지입니다.

”pendingSnapshotCount”

자동 새로 고침을 위해 큐에 대기 중인 스냅샷 수입니다.

”oldestSnapshotTime”

큐에 대기 중인 스냅샷 중 가장 빠른 타임스탬프입니다. Snowflake는 스냅샷이 큐에 추가될 때 스냅샷의 타임스탬프를 설정합니다.

”currentSnapshotId”

Snowflake가 추적 중인 현재 스냅샷의 ID입니다. 이는 현재 테이블 데이터에 해당하는 스냅샷을 나타냅니다.

”lastSnapshotTime”

Iceberg 메타데이터에 따른 현재 스냅샷의 생성 타임스탬프입니다. 이 타임스탬프는 외부 카탈로그에서 현재 스냅샷이 생성된 시점에 해당합니다.

”lastUpdatedTime”

Snowflake가 현재 스냅샷을 성공적으로 처리한 시점을 나타내는 타임스탬프입니다. 이 값과 lastSnapshotTime 사이의 차이는 외부 카탈로그에서 스냅샷이 생성되는 시점과 Snowflake가 테이블 메타데이터를 성공적으로 새로 고치는 시점 사이의 지연 시간을 나타냅니다.

지연 시간을 줄이려면 테이블과 연결된 카탈로그 통합의 REFRESH_INTERVAL_SECONDS 매개 변수를 조정합니다.

사용법 노트

이 함수를 호출하려면 Iceberg 테이블에 대한 OWNERSHIP 권한이 있는 역할이 필요합니다.

스키마 db1.schema1 의 테이블 my_iceberg_table 에 대한 자동 새로 고침 상태를 검색합니다.

SELECT SYSTEM$AUTO_REFRESH_STATUS('db1.schema1.my_iceberg_table');
Copy