- 카테고리:
VALIDATE_PIPE_LOAD¶
이 테이블 함수는 지정된 시간 범위 내에서 Snowpipe 가 처리하는 데이터 파일의 유효성을 검사하는 데 사용할 수 있습니다. 이 함수는 Snowflake 테이블에 데이터 로딩을 시도하는 동안 발생한 오류에 대한 세부 정보를 반환합니다.
참고
이 함수는 지난 14일 이내의 파이프 활동을 반환합니다.
구문¶
VALIDATE_PIPE_LOAD(
PIPE_NAME => '<string>'
, START_TIME => <constant_expr>
[, END_TIME => <constant_expr> ] )
인자¶
PIPE_NAME => string
파이프를 지정하는 문자열입니다. 이 함수는 지정된 파이프에 대한 결과만 반환합니다.
START_TIME => constant_expr
오류 이벤트 검색을 위한 시간 범위의 시작을 표시하는, 지난 14일 이내의 타임스탬프(TIMESTAMP_LTZ 형식)입니다.
선택 사항:
END_TIME => constant_expr
오류 이벤트 검색을 위한 시간 범위의 끝을 표시하는, 지난 14일 이내의 타임스탬프(TIMESTAMP_LTZ 형식)입니다.
사용법 노트¶
파이프 소유자(즉, 파이프에 대한 OWNERSHIP 권한이 있는 역할) 또는 다음과 같은 최소 권한이 있는 역할에 대한 결과만 반환합니다.
권한
오브젝트
참고
MONITOR
파이프
또는, 전역 MONITOR EXECUTION 권한이 지원됩니다.
USAGE
파이프 정의에서의 스테이지
외부 스테이지만
READ
파이프 정의에서의 스테이지
내부 스테이지만
SELECT
파이프 정의에서의 테이블
INSERT
파이프 정의에서의 테이블
스키마 오브젝트에 대한 SQL 작업에는 오브젝트를 포함하는 데이터베이스와 스키마에 대한 USAGE 권한도 필요합니다.
Information Schema 테이블 함수를 호출할 때 세션에는 사용 중인 INFORMATION_SCHEMA 스키마가 있거나 또는 함수 이름이 정규화되어야 합니다. 자세한 내용은 Snowflake Information Schema 섹션을 참조하십시오.
지정된 시간 범위 내에서 Snowpipe가 데이터 파일을 처리하는 동안 오류가 발생하지 않은 경우, 함수는 결과를 반환하지 않습니다.
로딩 중 데이터를 추가로 변환(즉, COPY 변환)하기 위한 쿼리가 파이프 설명의 COPY 문에 포함된 경우, 함수는 현재 사용자 오류를 반환합니다.
지정된 날짜 범위가 지난 15일을 벗어나면 오류가 반환됩니다.
출력¶
이 함수는 다음 열을 반환합니다.
열 이름 |
데이터 타입 |
설명 |
---|---|---|
ERROR |
TEXT |
소스 파일의 첫 번째 오류입니다. |
FILE |
TEXT |
오류가 발생한 소스 파일의 이름입니다. |
LINE |
NUMBER |
오류가 발생한 소스 파일의 줄 번호입니다. |
CHARACTER |
NUMBER |
오류가 발생한 문자의 위치입니다. |
BYTE_OFFSET |
NUMBER |
오류가 발생한 문자에 대한 바이트 오프셋입니다. |
CATEGORY |
TEXT |
오류가 발생한 작업의 카테고리입니다. |
CODE |
NUMBER |
ERROR 열에 표시되는 오류 메시지의 ID입니다. |
SQL_STATE |
NUMBER |
SQL 상태 코드입니다. |
COLUMN_NAME |
TEXT |
오류가 포함된 열의 이름 및 순서입니다. |
ROW_NUMBER |
NUMBER |
오류가 발생한 소스 파일의 행 번호입니다. |
ROW_START_LINE |
NUMBER |
오류가 발생한 행의 첫 번째 줄 번호입니다. |
REJECTED_RECORD |
TEXT |
오류가 포함된 레코드입니다. |
예¶
지난 1시간 이내 mypipe
파이프의 모든 로딩의 유효성을 검사합니다.
select * from table(validate_pipe_load( pipe_name=>'MY_DB.PUBLIC.MYPIPE', start_time=>dateadd(hour, -1, current_timestamp())));