ONLINE_FEATURE_TABLE_REFRESH_HISTORY
ONLINE_FEATURE_TABLE_REFRESH_HISTORY
ONLINE_FEATURE_TABLE_REFRESH_HISTORY 테이블 함수는 온라인 피처 테이블(online feature table)의 각 새로고침(refresh, 완료 및 실행 중)에 대한 정보를 반환해요.
이 테이블 함수는 진행 중인 모든 새로고침과, REFRESH_START_TIME이 현재 시간 기준 7일 이내인 모든 새로고침을 반환해요.
참고: CREATE ONLINE FEATURE TABLE, ALTER ONLINE FEATURE TABLE, DESCRIBE ONLINE FEATURE TABLE, DROP ONLINE FEATURE TABLE, SHOW ONLINE FEATURE TABLES도 참조하세요.
출처: 문서
본문
문법 (Syntax)
ONLINE_FEATURE_TABLE_REFRESH_HISTORY(
[ REFRESH_START_TIMESTAMP => <constant_expr> ]
[ , REFRESH_END_TIMESTAMP => <constant_expr> ]
[ , RESULT_LIMIT => <integer> ]
[ , NAME => '<string>' ]
[ , NAME_PREFIX => '<string>' ]
[ , ERROR_ONLY => { TRUE | FALSE } ]
)
인자 (Arguments)
모든 인자는 선택적이에요. 인자를 제공하지 않으면 계정의 모든 온라인 피처 테이블에서 100개의 새로고침이 반환돼요.
- REFRESH_START_TIMESTAMP => constant_expr , REFRESH_END_TIMESTAMP => constant_expr — 새로고침이 시작된 시간 범위(TIMESTAMP_LTZ 형식)예요. 끝 버전을 지정하지 않으면 CURRENT_TIMESTAMP가 범위의 끝으로 사용돼요.
- RESULT_LIMIT => integer — 함수가 반환하는 최대 행 수를 지정하는 숫자예요. 일치하는 행 수가 이 한도를 초과하면 가장 최근에 완료된 새로고침(및 여전히 실행 중인 새로고침)이 지정된 한도까지 반환돼요. 범위: 1 ~ 10000. 기본값: 100.
- NAME => 'string' — 온라인 피처 테이블의 이름이에요. 정규화되지 않은 이름(online_feature_table_name), 부분 정규화 이름(schema_name.online_feature_table_name), 또는 완전 정규화 이름(database_name.schema_name.online_feature_table_name)을 지정할 수 있어요. 객체 이름 해석에 대한 자세한 내용은 Object name resolution을 참조하세요. 함수는 이 테이블의 새로고침을 반환해요.
- NAME_PREFIX => 'string' — 온라인 피처 테이블의 접두사예요. 이 접두사로 시작하는 이름을 가진 테이블의 새로고침을 반환해요. 이 인자를 사용해 특정 데이터베이스나 스키마의 온라인 피처 테이블 새로고침을 반환할 수 있어요.
- ERROR_ONLY => { TRUE | FALSE } — TRUE로 설정하면 이 함수는 실패했거나 취소된 새로고침만 반환해요. 기본값: FALSE.
출력 (Output)
명령의 출력에는 객체의 속성과 메타데이터를 설명하는 다음 열이 포함돼요:
| 열 (Column) | 데이터 타입 (Data type) | 설명 (Description) |
|---|---|---|
| NAME | TEXT | 온라인 피처 테이블의 이름 |
| SCHEMA_NAME | TEXT | 온라인 피처 테이블을 포함하는 스키마의 이름 |
| DATABASE_NAME | TEXT | 온라인 피처 테이블을 포함하는 데이터베이스의 이름 |
| QUALIFIED_NAME | TEXT | 온라인 피처 테이블의 완전 정규화 이름 |
| STATE | TEXT | 온라인 피처 테이블의 새로고침 상태. 상태는 다음 중 하나일 수 있어요: EXECUTING: 새로고침 진행 중. SUCCEEDED: 새로고침 성공적으로 완료. FAILED: 실행 중 새로고침 실패. CANCELLED: 완료 전 새로고침 취소. |
| REFRESH_START_TIME | TIMESTAMP_LTZ | 새로고침 작업이 시작된 시간 |
| REFRESH_END_TIME | TIMESTAMP_LTZ | 새로고침이 완료된 시간 |
| REFRESH_TRIGGER | TEXT | 다음 중 하나: SCHEDULED: 목표 지연 시간(lag)을 맞추기 위한 일반 백그라운드 새로고침. MANUAL: 사용자/태스크가 ALTER ONLINE FEATURE TABLE |
| REFRESH_ACTION | TEXT | 다음 중 하나: NO_DATA: 기본 테이블에 새 데이터가 없음. 기본 테이블에 데이터가 있는지 여부와 무관하게 새로 생성된 온라인 피처 테이블의 초기 새로고침에는 적용되지 않음. REINITIALIZE: 기본 테이블 변경됨. FULL: 온라인 피처 테이블의 새로고침 모드가 FULL로 설정되어 전체 새로고침. INCREMENTAL: 일반 증분 새로고침. |
| QUERY_ID | TEXT | 온라인 피처 테이블에 대한 결과를 생성한 SQL 문의 ID |
| STATE_CODE | TEXT | 새로고침의 현재 상태를 나타내는 코드 |
| STATE_MESSAGE | TEXT | 새로고침의 현재 상태 설명 |
접근 제어 요구사항 (Access control requirements)
| 특권 (Privilege) | 객체 (Object) | 참고 (Notes) |
|---|---|---|
| MONITOR | 온라인 피처 테이블 | 온라인 피처 테이블에 MONITOR 특권을 가진 역할 |
특정 특권 집합으로 사용자 지정 역할을 만드는 방법에 대한 지침은 Creating custom roles를 참조하세요. 보호 가능한 객체에 대해 SQL 작업을 수행하기 위한 역할 및 특권 부여에 대한 일반 정보는 Overview of Access Control을 참조하세요.
사용 메모 (Usage notes)
- 이 함수는 INFORMATION_SCHEMA에서 사용할 수 있어요.
- 이 함수가 반환하는 정보는 최신 상태예요. ACCOUNT_USAGE.ONLINE_FEATURE_TABLE_REFRESH_HISTORY 뷰의 온라인 피처 테이블 새로고침 기록은 최대 3시간까지 지연될 수 있어요.
예제 (Examples)
다음 예제는 계정의 모든 온라인 피처 테이블에 대한 새로고침 기록을 반환해요:
SELECT *
FROM TABLE(INFORMATION_SCHEMA.ONLINE_FEATURE_TABLE_REFRESH_HISTORY());
다음 예제는 my_feature_table이라는 특정 온라인 피처 테이블에 대한 새로고침 기록을 반환해요:
SELECT *
FROM TABLE(INFORMATION_SCHEMA.ONLINE_FEATURE_TABLE_REFRESH_HISTORY(
NAME => 'my_feature_table'
));
다음 예제는 최근 24시간의 실패한 새로고침만 반환해요:
SELECT *
FROM TABLE(INFORMATION_SCHEMA.ONLINE_FEATURE_TABLE_REFRESH_HISTORY(
REFRESH_START_TIMESTAMP => CURRENT_TIMESTAMP - INTERVAL '1 DAY',
ERROR_ONLY => TRUE
));
다음 예제는 feature_로 시작하는 이름을 가진 온라인 피처 테이블의 새로고침을 반환하고 결과를 50행으로 제한해요:
SELECT *
FROM TABLE(INFORMATION_SCHEMA.ONLINE_FEATURE_TABLE_REFRESH_HISTORY(
NAME_PREFIX => 'feature_',
RESULT_LIMIT => 50
));