카테고리:

Information Schema , 테이블 함수

VALIDATE_PIPE_LOAD

이 테이블 함수는 지정된 시간 범위 내에서 Snowpipe 가 처리하는 데이터 파일의 유효성을 검사하는 데 사용할 수 있습니다. 이 함수는 Snowflake 테이블에 데이터 로딩을 시도하는 동안 발생한 오류에 대한 세부 정보를 반환합니다.

참고

이 함수는 지난 14일 이내의 파이프 활동을 반환합니다.

구문

VALIDATE_PIPE_LOAD(
      PIPE_NAME => '<string>'
       , START_TIME => <constant_expr>
      [, END_TIME => <constant_expr> ] )
Copy

인자

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())));
Copy