CREATE NOTIFICATION INTEGRATION¶
계정에 새 알림 통합을 만들거나 기존 통합을 바꿉니다. 알림 통합은 Snowflake와 서드 파티 메시징 서비스(서드 파티 클라우드 메시지 큐 서비스, 이메일 서비스 등) 간의 인터페이스를 제공하는 Snowflake 오브젝트입니다.
기능¶
알림 통합은 클라우드 저장소 서비스 및 이메일 서비스당 다음 기능에 필수적입니다.
- Amazon Web Services(AWS):
푸시 알림:
이메일 알림:
- Google Cloud(GCP):
자동 데이터 로딩 또는 메타데이터 새로 고침:
푸시 알림:
- Microsoft Azure(Azure):
자동 데이터 로딩 또는 메타데이터 새로 고침:
푸시 알림:
구문¶
자동 데이터 로딩 또는 메타데이터 새로 고침
CREATE [ OR REPLACE ] NOTIFICATION INTEGRATION [IF NOT EXISTS]
<name>
ENABLED = { TRUE | FALSE }
TYPE = QUEUE
cloudProviderParamsAuto
[ COMMENT = '<string_literal>' ]
여기서:
cloudProviderParamsAuto (for Google Cloud Storage) ::= NOTIFICATION_PROVIDER = GCP_PUBSUB GCP_PUBSUB_SUBSCRIPTION_NAME = '<subscription_id>'cloudProviderParamsAuto (for Microsoft Azure Storage) ::= NOTIFICATION_PROVIDER = AZURE_STORAGE_QUEUE AZURE_STORAGE_QUEUE_PRIMARY_URI = '<queue_URL>' AZURE_TENANT_ID = '<directory_ID>';
푸시 알림
CREATE [ OR REPLACE ] NOTIFICATION INTEGRATION [IF NOT EXISTS]
<name>
ENABLED = { TRUE | FALSE }
DIRECTION = OUTBOUND
TYPE = QUEUE
cloudProviderParamsPush
[ COMMENT = '<string_literal>' ]
여기서:
cloudProviderParamsPush (for Amazon SNS) ::= NOTIFICATION_PROVIDER = AWS_SNS AWS_SNS_TOPIC_ARN = '<topic_arn>' AWS_SNS_ROLE_ARN = '<iam_role_arn>'cloudProviderParamsPush (for Google Pub/Sub) ::= NOTIFICATION_PROVIDER = GCP_PUBSUB GCP_PUBSUB_TOPIC_NAME = '<topic_id>'cloudProviderParamsPush (for Microsoft Azure Event Grid) ::= NOTIFICATION_PROVIDER = AZURE_EVENT_GRID AZURE_EVENT_GRID_TOPIC_ENDPOINT = '<event_grid_topic_endpoint>' AZURE_TENANT_ID = '<directory_ID>';
이메일 알림
CREATE [ OR REPLACE ] NOTIFICATION INTEGRATION [IF NOT EXISTS]
<name>
TYPE = EMAIL
ENABLED = { TRUE | FALSE }
[ ALLOWED_RECIPIENTS = ( '<email_address_1>' [ , ... '<email_address_N>' ] ) ]
[ COMMENT = '<string_literal>' ]
필수 매개 변수¶
name
통합에 대한 식별자(즉, 이름)를 지정하는 문자열로, 계정에서 고유해야 합니다.
또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object"
)로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
ENABLED = { TRUE | FALSE }
통합 작업을 시작할지 일시 중단할지 여부를 지정합니다.
TRUE
로 지정하면 통합이 활성화됩니다.FALSE
로 지정하면 유지 관리를 위해 통합이 비활성화됩니다. Snowflake와 서드 파티 서비스 간의 통합이 작동하지 않습니다.
TYPE = QUEUE | EMAIL
통합 유형 지정:
QUEUE
: Snowflake와 서드 파티 클라우드 메시지 큐 서비스 간의 인터페이스를 만듭니다.EMAIL
: Snowflake와 서드 파티 이메일 서비스 간의 인터페이스를 만듭니다.주어진 계정에 대해 최대 10개의 이메일 알림 통합을 정의할 수 있습니다.
선택적 매개 변수¶
DIRECTION = OUTBOUND
(
TYPE = QUEUE
를 사용한 푸시 알림의 경우) Snowflake와 관련된 클라우드 메시징의 방향입니다. 클라우드 메시징 서비스에 대한 푸시 알림을 구성할 때만 필요합니다.OUTBOUND
: Snowflake가 클라우드 메시징 서비스로 보내는 알림을 생성하도록 지정합니다.COMMENT = 'string_literal'
통합에 대한 설명을 지정하는 문자열(리터럴)입니다.
기본값: 값 없음
자동 데이터 로딩 또는 메타데이터 새로 고침을 위한 클라우드 공급자 매개 변수(cloudProviderParamsAuto
)¶
Google Cloud Storage
NOTIFICATION_PROVIDER = GCP_PUBSUB
Google Cloud Pub/Sub를 서드 파티 클라우드 메시지 큐 서비스로 지정합니다.
GCP_PUBSUB_SUBSCRIPTION_NAME = '<subscription_id>'
Snowflake가 이벤트 메시지에 액세스할 수 있도록 허용하는 데 사용되는 Pub/Sub 항목 구독 ID입니다.
참고
단일 알림 통합은 단일 Google Cloud Pub/Sub 구독을 지원합니다. 이벤트 알림은 알림 통합 사이에서 분할되므로 여러 알림 통합에서 동일한 Pub/Sub 구독을 참조하면 대상 테이블에서 데이터가 누락될 수 있습니다.
Microsoft Azure 저장소
NOTIFICATION_PROVIDER = AZURE_EVENT_GRID
Microsoft Azure Event Grid를 서드 파티 클라우드 메시지 큐 서비스로 지정합니다.
AZURE_STORAGE_QUEUE_PRIMARY_URI = 'https://storage_queue_account.queue.core.windows.net/storage_queue_name'
Event Grid 알림을 위해 만든 Azure Queue Storage 큐의 큐 ID를 지정합니다.
참고
단일 알림 통합은 단일 Azure 저장소 큐를 지원합니다. 이벤트 알림은 알림 통합 사이에서 분할되므로 여러 알림 통합에서 동일한 저장소 큐를 참조하면 대상 테이블에서 데이터가 누락될 수 있습니다.
AZURE_TENANT_ID = 'ad_directory_id'
ID 관리에 사용되는 Azure Active Directory tenant의 ID를 지정합니다. 이 ID는 Event Grid 알림 구독에 대한 액세스 권한을 Snowflake에 부여하는 동의 URL을 생성하기 위해 필요합니다.
푸시 알림을 위한 클라우드 공급자 매개 변수(cloudProviderParamsPush
)¶
Amazon Simple Notification Service
NOTIFICATION_PROVIDER = AWS_SNS
Amazon Simple Notification Service(SNS)를 서드 파티 클라우드 메시지 큐 서비스로 지정합니다.
AWS_SNS_TOPIC_ARN = '<topic_arn>'
알림이 푸시되는 Amazon SNS(SNS) 항목의 Amazon 리소스 이름(ARN)입니다.
AWS_SNS_ROLE_ARN = '<iam_role_arn>'
SNS 항목에 메시지를 게시할 권한이 있는 IAM 역할의 ARN입니다.
Google Pub/Sub
NOTIFICATION_PROVIDER = GCP_PUBSUB
Google Cloud Pub/Sub를 서드 파티 클라우드 메시지 큐 서비스로 지정합니다.
GCP_PUBSUB_TOPIC_NAME = '<topic_id>'
Snowpipe가 알림을 푸시하는 Pub/Sub 항목의 식별입니다.
Microsoft Azure Event Grid
NOTIFICATION_PROVIDER = AZURE_EVENT_GRID
Microsoft Azure Event Grid를 서드 파티 클라우드 메시지 큐 서비스로 지정합니다.
AZURE_EVENT_GRID_TOPIC_ENDPOINT = '<event_grid_topic_endpoint>'
Snowpipe가 알림을 푸시하는 Event Grid 항목 엔드포인트입니다.
AZURE_TENANT_ID = 'ad_directory_id'
ID 관리에 사용되는 Azure Active Directory 테넌트의 ID입니다. 이 ID는 Event Grid 항목에 대한 액세스 권한을 Snowflake에 부여하는 동의 URL을 생성하기 위해 필요합니다.
이메일 알림 매개 변수¶
ALLOWED_RECIPIENTS=('email_address_1' [, ... 'email_address_N'])
(
TYPE = EMAIL
의 경우) 이 통합에서 알림 이메일을 받을 수 있는 따옴표 붙은 이메일 주소의 쉼표로 구분된 목록입니다.현재 계정에 있는 사용자의 이메일 주소를 지정해야 합니다. 이러한 사용자는 이메일 주소를 확인 해야 합니다.
지정할 수 있는 최대 이메일 주소 개수는 50개입니다.
이 매개 변수를 생략하면 현재 계정에서 확인된 이메일 주소로 이메일 알림을 보낼 수 있습니다.
액세스 제어 요구 사항¶
이 SQL 명령을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
참고 |
---|---|---|
CREATE INTEGRATION |
계정 |
Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed. |
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
사용법 노트¶
여러 Microsoft Azure 저장소 큐 또는 Google Cloud Pub/Sub 구독에 대한 단일 알림 통합 만들기는 지원되지 않습니다.
다른 알림 통합과 동일한 큐 URL이 있는 알림 통합을 사용하여 새 파이프를 생성할 때 파이프 생성이
Notification queue already in use with another integration
오류 발생으로 실패합니다.
여러 인바운드 알림 통합에 동일한 Microsoft Azure 저장소 큐 또는 Google Cloud Pub/Sub 구독을 사용하는 것은 자동화된 데이터 로드 또는 메타데이터 새로 고침에 지원되지 않습니다.
푸시 알림을 위해 여러 파이프에 대해 동일한 아웃바운드 알림 통합을 사용할 수 있습니다.
메타데이터 관련:
주의
고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.
CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다.
클라우드 공급자의 정부 리전에서는 이벤트 알림이 다른 상업 리전으로 전송되거나 다른 상업 리전에서 전송되는 것을 허용하지 않습니다. 자세한 내용은 AWS GovCloud(US) 및 Azure Government 섹션을 참조하십시오.
예¶
Snowflake 기능과 관련된 예제는 이 항목의 기능 섹션에서 참조하는 항목을 참조하십시오.