DATA_TRANSFER_HISTORY
DATA_TRANSFER_HISTORY
Snowflake 테이블에서 다른 클라우드 스토리지 공급자의 네트워크 및/또는 지리적 리전으로 전송된 데이터 이력(AWS·Google Cloud Platform·Microsoft Azure의 Snowflake에서 다른 클라우드 공급자 네트워크로)을 지정한 날짜 범위 안에서 조회하는 테이블 함수예요. 계정 전체의 전송 이력을 반환합니다.
본문
참고: 이 함수는 최근 14일 이내의 데이터 전송 활동을 반환해요. 또한 이 함수는 일반적으로 더 완전한 데이터셋과 더 긴 기간을 지원하는 ACCOUNT_USAGE.DATA_TRANSFER_HISTORY 뷰로 대체되어 더 이상 권장되지 않아요.
DATA_TRANSFER_HISTORY(
[ DATE_RANGE_START => <constant_expr> ]
[, DATE_RANGE_END => <constant_expr> ] )
모든 인자는 선택이에요.
DATE_RANGE_START / DATE_RANGE_END — 최근 2주 이내에서 데이터 전송 이력을 조회할 날짜/시간 범위.
- 끝 날짜를 지정하지 않으면 범위 끝으로 CURRENT_DATE를 사용해요.
- 시작 날짜를 지정하지 않으면 범위는
DATE_RANGE_END시작 10분 전부터예요(즉 기본은 이전 10분의 전송 이력 표시). 예를 들어DATE_RANGE_END가 CURRENT_DATE면 기본DATE_RANGE_START는 전날 오후 11:50이에요.
이력은 지정한 범위의 길이에 따라 5분, 1시간, 또는 24시간 단위로 표시돼요. 범위가 최근 15일을 벗어나면 오류가 반환돼요.
사용 메모 — ACCOUNTADMIN 역할 또는 MONITOR USAGE 전역 권한이 명시적으로 부여된 역할에게만 결과를 반환해요. Information Schema 테이블 함수 호출 시 세션에 INFORMATION_SCHEMA 스키마가 사용 중이거나 함수 이름이 정규화되어야 해요.
반환 컬럼
| Column Name | Data Type | Description |
|---|---|---|
| START_TIME | TIMESTAMP_LTZ | 데이터 전송이 발생한 지정 시간 범위의 시작 |
| END_TIME | TIMESTAMP_LTZ | 데이터 전송이 발생한 지정 시간 범위의 끝 |
| SOURCE_CLOUD | TEXT | 데이터 전송이 시작된 클라우드 공급자 이름: Amazon Web Services, Google Cloud Platform, Microsoft Azure |
| SOURCE_REGION | TEXT | 데이터 전송이 시작된 리전 |
| TARGET_CLOUD | TEXT | 데이터가 전송된 클라우드 공급자 이름 |
| TARGET_REGION | TEXT | 데이터가 전송된 리전 |
| BYTES_TRANSFERRED | NUMBER | START_TIME~END_TIME 구간에 전송된 바이트 수 |
| TRANSFER_TYPE | VARCHAR | 전송을 일으킨 작업 유형(COPY, EXTERNAL_ACCESS, EXTERNAL_FUNCTION, REPLICATION) |
예시 — 계정의 30분 범위(5분 단위) 데이터 전송 이력:
select *
from table(mydb.information_schema.data_transfer_history(
date_range_start=>to_timestamp_tz('2017-10-24 12:00:00.000 -0700'),
date_range_end=>to_timestamp_tz('2017-10-24 12:30:00.000 -0700')));
최근 14일 이력(1일 단위)도 조회할 수 있어요.
select *
from table(information_schema.data_transfer_history(
date_range_start=>dateadd('day',-14,current_date()),
date_range_end=>current_date()));