DATABASE_REPLICATION_USAGE_HISTORY
DATABASE_REPLICATION_USAGE_HISTORY
DATABASE_REPLICATION_USAGE_HISTORY() 테이블 함수는 지정한 날짜 범위 내에서 특정 데이터베이스의 복제 이력을 조회할 때 사용해요. 이 함수가 반환하는 정보에는 복제에 사용된 데이터베이스 이름, 크레딧 사용량, 전송된 바이트가 포함돼요.
본문
이 함수는 지난 14일 이내의 데이터베이스 복제 사용량 활동을 반환해요.
이 함수는 더 완전한 데이터 집합을 제공하고 더 긴 날짜 범위를 지원하는 ACCOUNT_USAGE.DATABASE_REPLICATION_USAGE_HISTORY 뷰를 위해 일반적으로 더 이상 사용되지 않아요(deprecated).
문법
DATABASE_REPLICATION_USAGE_HISTORY(
[ DATE_RANGE_START => <constant_expr> ]
[ , DATE_RANGE_END => <constant_expr> ]
[ , DATABASE_NAME => '<string>' ] )
인자
모든 인자는 선택 사항이에요.
DATE_RANGE_START => constant_expr , > DATE_RANGE_END => constant_expr
데이터베이스 복제 이력을 표시할 날짜/시간 범위예요. 종료 날짜를 지정하지 않으면 범위의 끝으로 CURRENT_DATE가 사용돼요. 시작 날짜를 지정하지 않으면 범위는 DATE_RANGE_END 시작 시점 10분 전부터 시작해요(즉, 기본값은 이전 10분의 이력만 표시). 예를 들어 DATE_RANGE_END가 CURRENT_DATE라면 기본 DATE_RANGE_START는 전날 오후 11:50입니다.
DATABASE_NAME => 'string'
데이터베이스 이름이에요. 지정하면 해당 데이터베이스의 이력만 표시해요. 이름을 지정하지 않으면 지정한 시간 범위 내에 복제된 각 데이터베이스의 데이터가 결과에 포함돼요.
출력
이 함수는 JSON 객체로 다음 요소를 반환해요.
| 열 이름 | 데이터 타입 | 설명 |
|---|---|---|
| START_TIME | TIMESTAMP_LTZ | 지정한 시간 범위의 시작 |
| END_TIME | TIMESTAMP_LTZ | 지정한 시간 범위의 끝 |
| DATABASE_NAME | TEXT | 데이터베이스 이름 |
| CREDITS_USED | TEXT | START_TIME과 END_TIME 기간 동안 데이터베이스 복제에 청구된 크레딧 수 |
| BYTES_TRANSFERRED | NUMBER | START_TIME과 END_TIME 기간 동안 데이터베이스 복제로 전송된 바이트 수 |
사용 지침
-
ACCOUNTADMIN 역할, 또는 MONITOR USAGE 글로벌 권한을 명시적으로 부여받은 역할에 대해서만 결과를 반환해요.
-
Information Schema 테이블 함수를 호출할 때는 세션이 INFORMATION_SCHEMA 스키마를 사용 중이어야 하거나 함수 이름이 완전한 자격(fully-qualified)을 갖춰야 해요. 자세한 내용은 Snowflake Information Schema를 참고하세요.
예제
계정에 대해 30분 범위의 복제 이력 조회:
select database_name, credits_used, bytes_transferred
from table(information_schema.database_replication_usage_history(
date_range_start=>'2023-03-28 12:00:00.000 +0000',
date_range_end=>'2023-03-28 12:30:00.000 +0000'));
계정에 대해 지난 12시간의 이력 조회:
select database_name, credits_used, bytes_transferred
from table(information_schema.database_replication_usage_history(
date_range_start=>dateadd(H, -12, current_timestamp)));
계정에 대해 지난 일주일의 이력 조회:
select start_time, end_time, database_name, credits_used, bytes_transferred
from table(information_schema.database_replication_usage_history(
date_range_start=>dateadd(d, -7, current_date),
date_range_end=>current_date));
계정에서 데이터베이스 mydb의 지난 일주일 복제 이력 조회:
select start_time, end_time, database_name, credits_used, bytes_transferred
from table(information_schema.database_replication_usage_history(
date_range_start=>dateadd(d, -7, current_date),
date_range_end=>current_date,
database_name=>'mydb'));