Amazon S3からの一括ロード

既にAmazon Web Services(AWS)アカウントをお持ちで、データファイルの保存と管理にS3バケットを使用している場合、Snowflakeへの一括ロードに既存のバケットとフォルダーパスを使用できます。 COPY コマンドを使用して、S3バケットからテーブルに一括ロードする方法について説明します。

次の図に示すように、S3バケットからのデータのロードは2つのステップで実行されます。

ステップ1

Snowflakeは、データファイルが既にS3バケットにステージングされていることを前提としています。まだステージングされていない場合は、 AWS が提供するアップロードインターフェイス/ユーティリティを使用してファイルをステージングします。

ステップ2

COPY INTO <テーブル> コマンドを使用して、ステージングされたファイルの内容をSnowflakeデータベーステーブルにロードします。バケットからは直接ロードできますが、Snowflakeでは、バケットを参照する外部ステージを作成し、代わりに外部ステージを使用することをお勧めします。

コマンドを手動またはスクリプト内で実行する場合は、使用する方法に関係なく、このステップでは、稼働中の現行の仮想ウェアハウスがセッションのために必要です。ウェアハウスは、テーブルに行を実際に挿入するコンピューティングリソースを提供します。

Data loading overview

注釈

Snowflakeは、各Amazon Virtual Private Cloudで、Amazon S3のゲートウェイエンドポイントを使用します。

外部ステージによって参照されるS3バケットがSnowflakeアカウントと同じ地域にある場合、ネットワークトラフィックはパブリックインターネットを通過しません。Amazon S3のゲートウェイエンドポイントは、地域のトラフィックが AWS ネットワーク内にとどまるようにします。

ちなみに

この一連のトピックの手順では、 データロードの準備 を読み終えて、必要がある場合は、名前付きファイル形式が作成済みであることを前提としています。

始める前に、ベストプラクティス、ヒント、およびその他のガイダンスについて データロードに関する考慮事項 を読むこともできます。

次のトピック: