카테고리:

데이터 메트릭 함수

DATA_METRIC_SCHEDULED_TIME(시스템 데이터 메트릭 함수)

DMF가 실행되도록 예약된 시점의 타임스탬프 또는 함수가 수동으로 호출된 경우 현재 타임스탬프를 반환합니다.

이 DMF를 사용하여 사용자 지정 메트릭을 정의하여 데이터의 최신성을 측정하거나 이미 존재하는 DMFs와 함께 증분 메트릭을 정의할 수 있습니다.

구문

SNOWFLAKE.CORE.DATA_METRIC_SCHEDULED_TIME()
Copy

인자

없습니다.

반환

이 함수는 TIMESTAMP_LTZ 데이터 타입의 스칼라 값을 반환합니다.

액세스 제어 요구 사항

시스템 DMF를 연결하고 실행하려면 시스템 DMF에 대한 USAGE 권한이 필요합니다. 사용자에게 모든 시스템 DMFs에 대한 USAGE 권한을 부여하기 위해 SNOWFLAKE.DATA_METRIC_USER 데이터베이스 역할을 부여할 수 있습니다. 자세한 내용은 시스템 DMFs에 대해 USAGE 권한 부여 섹션을 참조하십시오.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.

사용법 노트

SELECT 쿼리에서 이 함수를 수동으로 호출하면 CURRENT_TIMESTAMP 함수와 동일한 값이 반환됩니다.

지난 1시간 동안 테이블의 데이터 최신성을 확인하기 위해 사용자 지정 데이터 메트릭 함수를 만듭니다.

CREATE OR REPLACE DATA METRIC FUNCTION data_freshness_hour(
  ARG_T TABLE (ARG_C TIMESTAMP_LTZ))
  RETURNS NUMBER AS
  'SELECT TIMEDIFF(
     minute,
     MAX(ARG_C),
     SNOWFLAKE.CORE.DATA_METRIC_SCHEDULED_TIME())
   FROM ARG_T';
Copy

데이터 메트릭 함수를 수동으로 호출합니다.

SELECT data_freshness_hour(SELECT last_updated FROM hr.tables.empl_info) < 60;
Copy

이 문은 지난 1시간(60분) 동안 테이블에 대한 업데이트가 없는 경우 True 를 반환합니다.

이 문은 1시간 전에 테이블에 업데이트가 발생한 경우 False 를 반환합니다.