Azureステージの作成

ステージは、ファイル内のデータをテーブルにロードできるように、データファイルの保存場所(つまり、「ステージングした場所」)を指定します。

このトピックの内容:

データは、指定されたAzureコンテナーまたはAzureの「フォルダー」パス(つまり、キー値プレフィックス)のファイルから直接ロードできます。パスが / で終わる場合、対応するAzureフォルダー内のすべてのオブジェクトがロードされます。

外部ステージ

Snowflakeは、Azureコンテナー内のファイルからの直接ロードに加えて、次のようなステージングファイルに必要なすべての情報をカプセル化する名前付き外部ステージの作成をサポートしています。

  • ファイルがステージングされるAzureコンテナー。

  • コンテナーの名前付きストレージ統合オブジェクトまたはAzure認証情報(保護されている場合)。

  • 暗号化キー(コンテナー内のファイルが暗号化されている場合)。

名前付きの外部ステージはオプションですが、同じ場所から定期的にデータをロードする予定がある場合は、使用することを お勧め します。外部ステージを作成する手順については、以下の 外部ステージの作成 をご参照ください。

外部ステージの作成

SQL またはウェブインターフェイスを使用して、名前付き外部ステージを作成できます。

注釈

ステージを格納するデータベースおよびスキーマに対する USAGE 権限と、スキーマに対する CREATE STAGE 権限が付与または継承されたロールを使用する必要があります。

CREATE STAGE については、 アクセス制御の要件 をご参照ください。

SQL を使用した外部ステージの作成

CREATE STAGE コマンドを使用して、外部ステージを作成します。

次の例では、 my_azure_stage という名前の外部ステージを作成します。CREATE ステートメントには、 myaccount アカウントのAzureコンテナー container1 にアクセスするために データをロードするためのAzureコンテナーの構成 で作成された、 azure_int ストレージ統合が含まれています。

データファイルは load/files/ パスに保存されます。ステージは、パスに保存されているファイル内のデータを説明する、 my_csv_format という名前の名前付きファイル形式オブジェクトを参照します。

CREATE STAGE my_azure_stage
  STORAGE_INTEGRATION = azure_int
  URL = 'azure://myaccount.blob.core.windows.net/mycontainer/load/files/'
  FILE_FORMAT = my_csv_format;
Copy

注釈

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

注釈

ステージに名前付きファイル形式オブジェクト(または個々のファイル形式オプション)を指定すると、後でステージからデータをロードするために使用する COPY コマンドで、同じファイル形式オプションを指定する必要がありません。ファイル形式オブジェクトとオプションの詳細については、 CREATE FILE FORMAT をご参照ください。

Snowsightを使用した外部ステージの作成

Snowsight を使用して名前付き外部ステージを作成するには、次を実行します。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで Data » Databases を選択します。

  3. ステージを作成するデータベースとスキーマを選択します。

  4. Create » Stage を選択します。

  5. 使用するファイルのある、サポートされているクラウドストレージサービスを選択します。

  6. Stage Name を入力します。

  7. 外部クラウドストレージの場所の URL を入力します。

  8. 外部ストレージが公開されていない場合は、 Authentication を有効にして詳細を入力します。詳細については、 CREATE STAGE をご参照ください。

  9. オプションで、 Directory table の選択を解除します。ディレクトリテーブルを使用すると、ステージ上のファイルを確認できますが、ウェアハウスが必要になるためコストがかかります。現時点ではこのオプションの選択を解除し、後でディレクトリテーブルを有効にすることもできます。

    Directory table を有効にすると、オプションで Enable auto-refresh を選択して、イベント通知または通知統合を選択し、ファイルが追加または削除されたときにディレクトリテーブルを自動的にリフレッシュします。詳細については、 ディレクトリテーブルのメタデータ自動更新 をご参照ください。

  10. ファイルが暗号化されている場合は、 Encryption を有効にして詳細を入力します。

  11. 必要に応じて、 SQL Preview を展開し、生成された SQL ステートメントを表示します。AUTO_REFRESH などのステージの追加オプションを指定するには、ワークシートでこの SQL プレビューを開きます。

  12. Create を選択します。

従来のコンソールを使用した外部ステージの作成

Databases データベースタブ » <データベース名> » Stages を選択します。

次: Azureステージからのデータのコピー