카테고리:

시스템 함수 (시스템 제어)

SYSTEM$PIPE_FORCE_RESUME

ALTER PIPE 를 사용하여 일시 중지된 파이프를 강제로 다시 시작합니다. 이는 다음 시나리오 중 하나에서 필요합니다.

  • 파이프 소유자가 파이프가 일시 중지된 동안 파이프의 소유권을 다른 역할로 이전합니다.

  • 일시 중지된 파이프가 부실해질 수 있습니다.

    파이프에 대해 수신된 이벤트 메시지의 제한된 보존 기간(기본적으로 14일)보다 오래 일시 중지된 파이프는 부실한 것으로 간주됩니다. 각 알림이 이 기간의 끝에 도달하면 Snowflake는 내부 메타데이터에서 알림을 삭제하도록 예약합니다. 파이프가 나중에 재게되면 Snowpipe는 14일 이전의 알림을 처리하기 위해 최선을 다합니다. Snowflake는 이러한 오래된 알림이 처리된다고 보장할 수 없습니다.

    이 시나리오는 클라우드 메시징을 활용하여 데이터 로딩을 트리거하는 파이프 오브젝트에만 적용됩니다(즉, 파이프 정의에서 AUTO_INGEST = TRUE 인 경우).

이 함수를 실행하는 경우, 지정된 파이프가 다시 시작됩니다.

큐에 있는 파일 수를 확인하려면 SYSTEM$PIPE_STATUS 를 쿼리하십시오.

자세한 내용은 Snowpipe 섹션을 참조하십시오.

구문

SYSTEM$PIPE_FORCE_RESUME( '<pipe_name>' , '[ STALENESS_CHECK_OVERRIDE ] [ , OWNERSHIP_TRANSFER_CHECK_OVERRIDE ]')
Copy

인자

pipe_name

실행을 다시 시작할 파이프입니다.

STALENESS_CHECK_OVERRIDE

부실한 파이프를 다시 시작하도록 지정합니다. 파이프에 대해 수신된 이벤트 메시지의 제한된 보존 기간(기본적으로 14일)보다 오래 일시 중지된 파이프는 부실한 것으로 간주됩니다.

참고

이 인자는 클라우드 메시징을 활용하여 데이터 로딩을 트리거하는 파이프 오브젝트에만 적용됩니다.

OWNERSHIP_TRANSFER_CHECK_OVERRIDE

파이프 소유권이 다른 역할로 이전된 후 파이프를 다시 시작하도록 지정합니다.

참고

이전 버전과의 호환성을 보장하기 위해, pipe_name 을 유일한 입력으로tj 전달하는 것은 pipe_nameOWNERSHIP_TRANSFER_CHECK_OVERRIDE 를 둘 다 전달하는 것과 구문상 동일합니다.

STALENESS_CHECK_OVERRIDEOWNERSHIP_TRANSFER_CHECK_OVERRIDE 가 둘 다 필요한 경우, 이러한 인자는 어느 순서로든 입력할 수 있습니다.

사용법 노트

  • 파이프 소유자(즉, 파이프에 대한 OWNERSHIP 권한이 있는 역할) 또는 파이프에 대한 OPERATE 권한이 있는 역할만이 이 SQL 함수를 호출할 수 있습니다.

    스키마 오브젝트에 대한 SQL 작업에는 오브젝트를 포함하는 데이터베이스와 스키마에 대한 USAGE 권한도 필요합니다.

  • pipe_name 은 문자열이므로 작은따옴표로 묶어야 합니다.

    • 데이터베이스와 스키마(이름이 정규화된 경우)를 포함하여 전체 이름을 작은따옴표로 묶어야 합니다(즉, '<db>.<스키마>.<파이프_이름>').

    • 파이프 이름이 대/소문자를 구분하거나 특수 문자나 공백이 포함된 경우, 대/소문자를 처리하려면 큰따옴표가 필요합니다. 큰따옴표는 작은따옴표로 묶어야 합니다. 즉, '"<파이프_이름>"' 이어야 합니다.

대/소문자를 구분하지 않는 이름의 파이프를 강제로 다시 시작합니다.

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.mypipe');
Copy

대/소문자를 구분하는 이름의 파이프를 강제로 다시 시작합니다.

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema."myPipe"');
Copy

해당 소유권이 다른 역할로 이전된 후 부실한 파이프를 강제로 다시 시작합니다.

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.stalepipe','staleness_check_override, ownership_transfer_check_override');
Copy