カテゴリ:

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

ALTER STORAGE INTEGRATION

既存のストレージ統合のプロパティを変更します。

こちらもご参照ください:

CREATE STORAGE INTEGRATIONDROP INTEGRATIONSHOW INTEGRATIONS

このトピックの内容:

構文

ALTER [ STORAGE ] INTEGRATION [ IF EXISTS ] <name> SET
  cloudProviderParams
  [ ENABLED = { TRUE | FALSE } ]
  [ STORAGE_ALLOWED_LOCATIONS = ('<cloud>://<bucket>/<path>/', '<cloud>://<bucket>/<path>/') ]
  [ STORAGE_BLOCKED_LOCATIONS = ('<cloud>://<bucket>/<path>/', '<cloud>://<bucket>/<path>/') ]
  [ COMMENT = '<string_literal>' ]

ALTER [ STORAGE ] INTEGRATION [ IF EXISTS ] <name>  UNSET {
                                                          ENABLED                   |
                                                          STORAGE_BLOCKED_LOCATIONS |
                                                          COMMENT
                                                          }
                                                          [ , ... ]

条件:

cloudProviderParams (for Amazon S3) ::=
  STORAGE_AWS_ROLE_ARN = '<iam_role>'
cloudProviderParams (for Microsoft Azure) ::=
  AZURE_TENANT_ID = '<tenant_id>'

パラメーター

名前

変更する統合の識別子。識別子にスペースまたは特殊文字が含まれる場合、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

SET ...

テーブルに設定する1つ(または複数)のプロパティ/パラメーターを指定します(空白、カンマ、または改行で区切られます)。

ENABLED = TRUE | FALSE

このストレージ統合を段階的に使用できるかどうかを指定します。

  • TRUE は、ユーザーがこの統合を参照する新しいステージを作成できます。この統合機能を通常参照する既存のステージ。

  • FALSE は、ユーザーがこの統合を参照する新しいステージを作成できないようにします。この統合を参照する既存のステージは、ステージ定義の保存場所にアクセスできません。

STORAGE_ALLOWED_LOCATIONS = ('クラウド固有のURL')

統合を使用して1つ以上の保管場所を参照する外部ステージを明示的に制限します(つまり、Amazon S3、Google Cloud Storage、またはMicrosoft Azure)既存のバケットのコンマ区切りリスト URLs をサポートし、オプションで、ロード/アンロード用のデータファイルの保存に使用されるパスをサポートします。または、「すべてのバケットやパスへのアクセスを許可する」という意味の * ワイルドカードをサポートしています。

Amazon S3

STORAGE_ALLOWED_LOCATIONS = ('s3://バケット/パス/', 's3://バケット/パス/')

  • バケット は、データファイルを保存するS3バケットの名前です(例: mybucket)。

  • パス は、一連のファイルへのアクセスを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。

Google Cloud Storage

STORAGE_ALLOWED_LOCATIONS = ('gcs://バケット/パス/', 'gcs://バケット/パス/')

  • バケット は、データファイルを保存する GCS バケットの名前です(例: mybucket)。

  • パス は、一連のファイルへのアクセスを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。

Microsoft Azure

STORAGE_ALLOWED_LOCATIONS = ('azure://アカウント.blob.core.windows.net/コンテナー/パス/', 'gcs://バケット/パス/')

  • アカウント は、Azureアカウントの名前です(例: myaccount)。Data Lake Storage Gen2を含む、サポートされているすべてのタイプのAzure BLOBストレージアカウントに、 blob.core.windows.net エンドポイントを使用します。

  • コンテナー は、データファイルを保存するAzureコンテナーの名前です(例: mycontainer)。

  • パス は、一連のファイルへのアクセスを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。

STORAGE_BLOCKED_LOCATIONS = ('クラウド固有のURL')

統合を使用する外部ステージが1つ以上の保管場所を参照することを明示的に禁止します(つまり、Amazon S3、Google Cloud Storage、Microsoft Azure)。既存の保存場所の URLs のコンマ区切りリスト、およびオプションで、ロード/アンロード用のデータファイルの保存に使用されるパスをサポートします。一般的に STORAGE_ALLOWED_LOCATIONS が * ワイルドカードに設定されている場合に使用され、アカウントのすべてのバケットへのアクセスを許可しますが、ブロックされた保管場所および、任意でパスは 例外 です。

Amazon S3

STORAGE_BLOCKED_LOCATIONS = ('s3://バケット/パス/', 's3://バケット/パス/')

  • バケット は、データファイルを保存するS3バケットの名前です(例: mybucket)。

  • パス は、データファイルへのアクセスをさらに制限するバケット内のオプションのパス(または ディレクトリ)です。

Google Cloud Storage

STORAGE_BLOCKED_LOCATIONS = ('gcs://バケット/パス/', 'gcs://バケット/パス/')

  • バケット は、データファイルを保存する GCS バケットの名前です(例: mybucket)。

  • パス は、データファイルへのアクセスをさらに制限するバケット内のオプションのパス(または ディレクトリ)です。

Microsoft Azure

STORAGE_BLOCKED_LOCATIONS = ('azure://アカウント.blob.core.windows.net/コンテナー/パス/', 'gcs://バケット/パス/')

  • アカウント は、Azureアカウントの名前です(例: myaccount)。

  • コンテナー は、データファイルを保存するAzureコンテナーの名前です(例: mycontainer)。

  • パス は、データファイルへのアクセスをさらに制限するコンテナー内のオプションのパス(または ディレクトリ)です。

COMMENT = '文字列リテラル'

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

UNSET ...

ストレージ統合の設定を解除する1つ(または複数)のプロパティ/パラメーターを指定し、それらをデフォルトにリセットします。

  • ENABLED

  • STORAGE_BLOCKED_LOCATIONS

  • COMMENT

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

Amazon S3

STORAGE_AWS_ROLE_ARN = iamロール

データファイルを含むS3バケットに対する権限を付与する AWS IDおよびアクセス管理(IAM)ロールのAmazonリソースネーム(ARN)を指定します。詳細については、 Amazon S3へのセキュアアクセスの構成 をご参照ください。

Microsoft Azure

AZURE_TENANT_ID = 'テナントID'

許可およびブロックされたストレージアカウントが属するOffice 365テナントの ID を指定します。ストレージ統合は1つのテナントのみを認証できるため、許可およびブロックされたストレージの場所は、すべてこのテナントに属するストレージアカウントを参照する必要があります。

テナント IDを見つけるには、Azureポータルにログインして Azure Active Directory » Properties をクリックします。テナント ID が Directory ID フィールドに表示されます。

次の例では、中断された統合の操作を開始します。

ALTER STORAGE INTEGRATION myint SET ENABLED = TRUE;