カテゴリ:

ユーザーとセキュリティ DDL (サードパーティのサービス統合)

CREATE NOTIFICATION INTEGRATION

アカウントに新しい通知統合を作成するか、既存の統合を置き換えます。通知統合は、Snowflakeとサードパーティのクラウドメッセージキューサービス間のインターフェイスを提供するSnowflakeオブジェクトです。

通知の統合は、クラウドストレージサービスごとの次の機能に不可欠です。

Amazon S3
Google Cloud Storage
Microsoft Azure BLOBストレージ
こちらもご参照ください。

ALTER NOTIFICATION INTEGRATION , DROP INTEGRATION , SHOW INTEGRATIONS

このトピックの内容:

構文

CREATE [ OR REPLACE ] NOTIFICATION INTEGRATION [IF NOT EXISTS]
  <name>
  ENABLED = { TRUE | FALSE }
  TYPE = QUEUE
  cloudProviderParams
  [ COMMENT = '<string_literal>' ]

条件:

cloudProviderParams (for Amazon S3) ::=

  NOTIFICATION_PROVIDER = AWS_SNS
  DIRECTION = OUTBOUND
  AWS_SNS_TOPIC_ARN = '<topic_arn>'
  AWS_SNS_ROLE_ARN = '<iam_role_arn>'
cloudProviderParams (for Google Cloud Storage) ::=
  NOTIFICATION_PROVIDER = GCP_PUBSUB
  GCP_PUBSUB_SUBSCRIPTION_NAME = '<subscription_id>'
cloudProviderParams (for Microsoft Azure) ::=
  NOTIFICATION_PROVIDER = AZURE_STORAGE_QUEUE
  AZURE_STORAGE_QUEUE_PRIMARY_URI = '<queue_URL>'
  AZURE_TENANT_ID = '<directory_ID>';

必須パラメーター

名前

統合の識別子(つまり、名前)を指定する文字列。アカウント内で一意である必要があります。

また、識別子はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

ENABLED = TRUE | FALSE

統合の操作を開始するか、中断するかを指定します。

  • TRUE は、統合を有効にします。

  • FALSE は、メンテナンスのための統合を無効にします。Snowflakeとサードパーティサービスの統合はいずれも機能しません。

TYPE = QUEUE

統合のタイプを指定します。

  • QUEUE :Snowflakeとサードパーティのクラウドメッセージキューサービスの間のインターフェイスを作成します。

クラウドプロバイダーのパラメーター(cloudProviderParams

Amazon S3

DIRECTION = OUTBOUND

Snowflakeに関するクラウドメッセージングの方向。

OUTBOUND: Snowflakeがクラウドメッセージングサービスに送信される通知を生成することを指定します。

AWS_SNS_TOPIC_ARN = '<topic_arn>'

エラーメッセージを処理するAmazon SNS (SNS)トピックのAmazonリソースネーム(ARN)。

AWS_SNS_ROLE_ARN = '<iam_role_arn>'

SNS トピックにエラーメッセージを公開する権限を持つ IAM ロールの ARN。

Google Cloud Storage

NOTIFICATION_PROVIDER = GCP_PUBSUB

クラウドプロバイダーを指定します。

GCP_PUBSUB :Google Cloud Pub/Subをサードパーティのクラウドメッセージキューサービスとして指定します。

GCP_PUBSUB_SUBSCRIPTION_NAME = '<subscription_id>'

Snowflakeがイベントメッセージにアクセスできるようにするために使用される、Pub/Subトピックサブスクリプション ID。

Microsoft Azure

NOTIFICATION_PROVIDER = AZURE_STORAGE_QUEUE

クラウドプロバイダーを指定します。

AZURE_STORAGE_QUEUE :Microsoft Azure Event Gridを、サードパーティクラウドメッセージキューサービスとして指定します。

AZURE_STORAGE_QUEUE_PRIMARY_URI = 'https://ストレージキューアカウント.queue.core.windows.net/ストレージキュー名'

Event Grid通知用に作成されたAzure Queue Storageキューのキュー ID を指定します。

注釈

Azure Queue Storageキューは、単一の通知の統合をサポートしています。イベント通知は通知の統合間で分割されるため、複数の通知統合で単一のストレージキューを参照すると、ターゲットテーブルのデータが失われる可能性があります。

詳細については、次をご参照ください。

Snowpipe

Microsoft Azure BLOBストレージ用Snowpipeの自動化

外部テーブル

Azure Blobストレージに対する外部テーブルの自動更新

AZURE_TENANT_ID = '広告ディレクトリID'

ID管理に使用されるAzure Active Directoryテナントの ID を指定します。この ID は、Blobストレージ内の新しいファイルのSnowpipeロードを自動トリガーするのに使用するEvent Grid通知サブスクリプションへのSnowflakeアクセスを許可する同意 URL を生成するために必要です。

オプションのパラメーター

COMMENT = '文字列リテラル'

統合のコメントを指定する文字列(リテラル)。

デフォルト: 値なし

アクセス制御の要件

この SQL コマンドの実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

CREATE INTEGRATION

アカウント

Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed.

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 Snowflakeのアクセス制御 をご参照ください。

使用上の注意

  • 複数のMicrosoft AzureストレージキューまたはGoogle Cloud Pub/Subサブスクリプションのために、単一の通知統合を作成することはサポートされていません。

  • メタデータについて。

    注意

    Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。

Google Cloud Storage

CREATE NOTIFICATION INTEGRATION my_notification_int
  TYPE = QUEUE
  NOTIFICATION_PROVIDER = GCP_PUBSUB
  ENABLED = true
  GCP_PUBSUB_SUBSCRIPTION_NAME = 'projects/project-1234/subscriptions/sub2';

Microsoft Azure

CREATE NOTIFICATION INTEGRATION my_notification_int
  ENABLED = true
  TYPE = QUEUE
  NOTIFICATION_PROVIDER = AZURE_STORAGE_QUEUE
  AZURE_STORAGE_QUEUE_PRIMARY_URI = 'https://myqueue.queue.core.windows.net/mystoragequeue'
  AZURE_TENANT_ID = 'a123bcde-1234-5678-abc1-9abc12345678';
最上部に戻る