Blog/データエンジニアリング/自動化されたSnowpipeセットアップの紹介:1つのプロンプトでCoCoを使用して取り込みパイプラインを構築
2026年10月28日/約1分で読めますデータエンジニアリング

自動化されたSnowpipeセットアップの紹介:1つのプロンプトでCoCoを使用して取り込みパイプラインを構築

本日、Snowflake CoCoを使用した自動化されたSnowpipeセットアップの一般提供を発表します。これにより、チームはクラウドストレージに到着する生ファイルから、継続的にロードされる標準のSnowflakeテーブルまたはSnowflakeマネージドのApache Iceberg™テーブルへの移行を、単一の自然言語の会話で実現できます。CoCoは自動的にファイルをサンプリングし、スキーマを推論し、パイプラインを構築して、データが期待どおりにロードされることを確認します。そのため、新しいソースがデータエンジニアリングのキューで待機する必要はありません。詳細や利用開始については、自動化されたSnowpipeセットアップのドキュメントをご確認ください。

組織は、AIアプリケーションやエージェントが生成されたばかりの新しいデータに迅速に対応することをますます求めていますが、新しいソースは誰かが使用する前に接続する必要があります。新しいアプリケーションをリリースするモバイルチームを例に挙げます。最初の数日間の使用状況データが最も重要になることがよくあります。これらは、ユーザーが新機能を見つけたかどうか、および次のビルドの前に何を修正すべきかを示します。データは、数分ごとにAmazon S3バケットに保存されるクリックストリームファイルとしてすぐに到着し始めます。アプリケーションログを通じてインシデントを追跡するセキュリティチーム、新しい生産ラインからのセンサーデータを監視する製造企業、またはパートナーの日次エクスポートをオンボーディングする財務チームにとっても、同じように時間は進みます。これらのフィードはそれぞれクラウドストレージ内のファイルとして保存され、その価値は誰かがどれだけ早くクエリできるかにかかっています。

Snowflakeの継続的なロードサービスであるSnowpipeは、この種のデータのために構築されました。通常、クラウドストレージに到着してから数分以内に、Snowflakeが管理するサーバーレスコンピュート上で各新しいファイルをピックアップします。通常、チームの作業を遅らせるのは、最初のロードの前に完了する必要がある作業です。誰かがファイルを検査してフォーマットオプションを選択し、ストレージ統合、ステージ、テーブル、およびパイプを作成する必要があります。クラウドチームは、IAMロール、信頼ポリシー、およびファイルが到着したときにSnowpipeに通知するイベント通知もセットアップする必要があります。これらの手順が完了するまで、誰もクエリできないバケットにデータが置かれたまま、最も重要な数日間が過ぎてしまいます。

Snowsight、CoCo Desktop、およびCoCo CLIで利用可能な自動化されたSnowpipeセットアップを使用すると、適切な権限を持つ人なら誰でも、データエンジニアを待つことなく新しいソースを直接接続できます。デフォルトでは、CoCoは変更を加える前に明示的な承認を求めます。セットアップが完了すると、CoCoセッションが終了した後もSnowpipeはデータの流れを維持します。

“AIエージェントはチームにおけるデータの利活用方法を大きく変革していますが、どのようなプロジェクトであっても、新たなデータを接続することから始まるという点に変わりはありません。Snowflake CoCoとSnowpipeを組み合わせることで、新しいデータソースを取り込んで利用可能にする際の最も困難なプロセスを私たちが肩代わりし、現場チームがより多くのアイデアを実稼働するアプリケーションへと具現化できるよう支援します。これにより、新たなファイルが到着するたびにデータは常に最新状態へと保たれます。さらに、AWSとのパートナーシップによって、Amazon S3を利用するお客様にとってこの一連の流れは一段とシンプルなものになります。”

Saptarshi Mukherjee
Senior Director of Product Management, Snowflake

 

このリリースにより、以下のことが可能になります。

  • クラウドストレージパスからの開始:Amazon S3、Azure Blob Storage、またはGoogle Cloud Storage内のファイルをCoCoに指定すると、フォーマットを検出し、スキーマを提案します。
  • SnowflakeによるAWSセットアップの処理:期限付きのAWS IAM一時的委任リクエストを1つ承認すると、Snowflakeはストレージロール、信頼ポリシー、およびバケット通知を作成します。AWSアクセスキーを共有する必要はありません。
  • 任意のクラウドでのコードとしてのインフラストラクチャの維持:CoCoは、Icebergテーブルを含む完全なパイプライン用のTerraformを記述し、チームの通常のレビューの準備を整えます。
  • オープンなApache Icebergテーブルへのデータの格納:Icebergテーブルを選択すると、Snowflakeおよび任意のIceberg互換エンジンが同じデータを読み取ることができます。
  • パイプラインの動作確認:CoCoは、ファイルがテーブルに到達していることを確認し、ロードエラーにフラグを立てます。
Diagram comparing manual setup workflow across AWS and Snowflake consoles versus simplified CoCo workflow for data integration
Figure 1: On Amazon S3, one request to CoCo replaces the manual back-and-forth between the AWS Management Console and Snowflake.

“AWS上でSnowflakeを利用するお客様は、アクセス制御やセキュリティへの統制を一切緩めることなく、自社のAmazon S3データをより迅速に利活用したいと考えています。Snowflake CoCoは、AWS IAMの一時的な権限委任を活用することで、お客様がAWSマネジメントコンソール上で限定的かつ有効期限付きのアクセス権限を承認するだけで済むようにし、面倒なSnowpipeのセットアップはすべてSnowflake側で自動処理します。これは、AWSとSnowflakeが緊密に連携し、お客様が環境構築に要する工数を削減して、データをビジネス価値へと変える本来の業務により多くの時間を投資できるよう支援している強力な実例です。”

Chris Spandikow
Director of Engineering, AWS

クラウドストレージパスの指定

モバイルチームは1つの文から始めます。

Continuously ingest data from s3://my-bucket/clickstream/

Snowsightでは、チームはIngestion » Add DataからSet up Snowpipe with CoCoを選択して開始することもできます。いずれの場合も、CoCoはデータの格納先と、チームに適した4つのセットアップオプション(Amazon S3での一時的なアクセス、完全なパイプライン用のTerraform、既存のクラウドアクセス、またはSnowflakeオブジェクトとクラウドセットアップファイル)のどれかを尋ねます。

次に、ファイルをサンプリングしてCSV、JSON、Parquet、Avro、ORC、XMLなどのフォーマットを検出し、列名とデータ型を提案します。

CoCoは、互換性のあるストレージ統合、ステージ、およびファイルフォーマットを再利用します。パイプがすでに同じファイルをカバーしている場合、CoCoはそれにフラグを立てて指示を待つため、データを二重にロードすることはありません。すべてのステートメントはアクティブなSnowflakeロールの下で実行され、デフォルトでは、CoCoはSnowflakeオブジェクトを作成または変更する前にSQLを表示して承認を求めます。

パイプが存在する前に到着したファイルも取り残されません。CoCoは過去7日間のデータをすぐにロードすることを提案し、それより古いデータについては1回限りのロードを実行できます。アプリが新しいフィールドの送信を開始した場合、CoCoはスキーマの進化をオンにして新しい列にすることができます。既存のテーブルについては最初に確認します。

SnowflakeによるAWSでのクラウドセットアップの自動化

モバイルチームのバケットはAmazon S3にあるため、AWS IAM一時的委任を使用して、セットアップのために制限された期限付きの許可をSnowflakeに付与します。

  • CoCoによるリクエストの準備:セットアップに必要なもの(1つのバケットへの通知アクセスと、Snowpipeが使用するストレージロールを作成または更新する許可)のみを要求し、そのロールが実行できることを制限する許可の境界を設けます。
  • AWS管理コンソールでの決定:要求されたすべての許可を確認し、許可するか、拒否するか、または承認のためにAWS管理者に送信します。
  • Snowflakeによる承認内容のセットアップ:ストレージロールと信頼ポリシーを作成します。承認したSQLを使用してCoCoがパイプを作成すると、Snowflakeはパイプの通知ルールを追加し、バケットの既存のルールはそのまま残します。

AWS CloudTrailは、委任されたロールの下でSnowflakeが実行するすべてのセットアップアクションをログに記録し、Snowflakeのクエリ履歴には、ユーザーとロールの下でCoCoが実行した各ステートメントが表示されます。

Diagram showing AWS account integration with Snowflake data pipeline using temporary access, S3 bucket, and Snowpipe ingestion
Figure 2: Temporary access expires, and only the storage role and bucket notifications stay in your AWS account for ongoing loads.

パイプラインのコード化または独自の方法での展開

コードを通じてクラウドリソースを展開するチームは、AWS、Azure、およびGoogle Cloud上で、代わりにCoCoにコードとしてセットアップを準備させることができます。標準テーブルおよびIcebergテーブルの場合、CoCoはサンプリングされたファイルから入力された、Snowflakeオブジェクトとクラウドリソースの両方をカバーする完全なパイプライン用のTerraformを記述します。AWSでは、Terraformはバケットの既存の通知ルールを保持します。チームはプルリクエストでそれをレビューし、通常どおりに展開します。CoCoは、他の2つのセットアップオプションも提供しています。

  • 既存のクラウドアクセスの再利用:すでに使用しているストレージ統合とIAMロールを維持し、CoCoが通知セットアップを案内します。
  • Snowflakeオブジェクトの作成とクラウドセットアップファイルの生成:CoCoは承認したSQLを使用してSnowflakeオブジェクトを作成し、クラウドチームが展開するためのTerraform、CloudFormation、またはARMテンプレートを生成します。

具体例は以下の通りです。

Generate complete Snowpipe Terraform for gcs://my-bucket/events/. My team will deploy it.

CoCo DesktopおよびCoCo CLIは、マシンのクラウド認証情報を使用し、各アプリケーションの前に確認を求めて、Terraformおよびクラウドセットアップファイルを適用できます。または、展開をチームに任せることもできます。Snowsightでは、CoCoはワークスペースのsnowpipeフォルダーにファイルを保存します。

オープンなApache Icebergテーブルへの同じデータのロード

データサイエンスチームがApache Spark™で同じクリックストリームデータを必要とする場合は、代わりにIcebergテーブルを要求します。

Continuously ingest s3://my-bucket/clickstream/ into an Iceberg table.

CoCoは、SnowflakeマネージドのIcebergテーブルと、それにデータを供給するパイプをセットアップします。SnowpipeはデータをParquetとして書き込み、ロード時に他のフォーマットを変換します。SnowflakeはIcebergメタデータを維持するため、Sparkやその他のIceberg互換エンジンがテーブルを読み取ることができます。Snowflakeは、SnowflakeマネージドのIcebergテーブルのテーブルメンテナンスも処理します。IcebergパイプラインをTerraformとして生成することもできます。

CoCoによる最初のファイルロードの確認

アクセスと展開が完了すると、CoCoはパイプのステータス、通知の配信、およびロード履歴を確認し、ロードエラーを報告します。自分でSYSTEM$PIPE_STATUSやCOPY_HISTORYをクエリする必要はありません。新しいファイルがまだ到着していない場合は、テストファイルの手順を案内できます。

Diagram showing CoCo session with setup and validation phases, and Snowpipe continuously loading files over time
Figure 3: CoCo validates the pipeline, and the session ends while Snowpipe keeps loading new files.

モバイルチームの場合、リリース日以降のクリックストリームはすでにテーブルにあり、ユーザーがどの新機能を使用しているか、次のビルドの前に何を修正すべきかを示しています。同じ最新データは、それに依存するAIアプリケーションやエージェントの準備ができています。

CoCoを使用した1回限りのロードの実行

本日より、CoCoを使用した一括ロードも一般提供されます。バックフィル、移行、オンデマンド配信などでファイルがすでに配置されている場合は、CoCoに1回限りのロードを要求すると、ファイルフォーマットとテーブルを準備し、ウェアハウスでCOPY INTOを実行して結果を確認します。リクエストに1回ロードするか継続的にロードするかが記載されていない場合、CoCoは最初に確認します。

今すぐ利用を開始

自動化されたSnowpipeセットアップのドキュメントで前提条件と必要な権限を確認してから、次の手順を実行します。

  • Snowsight、CoCo Desktop、またはCoCo CLIでCoCoを開きます。Snowsightでは、Ingestion » Add DataページでSet up Snowpipe with CoCoを選択することもできます。
  • ソースを記述します。具体例は以下の通りです。s3://your-bucket/path/からデータを継続的に取り込む
  • セットアップオプションを選択し、CoCoが準備したものを承認する
  • CoCoに最初のロードを確認させる

SnowpipeおよびCoCoのリソース

セットアップ後、Snowpipeはサーバーレスコンピュート上でファイルをロードし、Snowpipeの使用量として請求されます。詳細については、CoCoのコストおよびSnowpipeのコストをご確認ください。Snowflakeを初めてご利用の場合は、無料トライアルをご確認ください。詳細については、以下をご確認ください。

次のデータソースをCoCoに指定し、Snowpipeにロードを継続させます。

注:AWS IAM一時的委任は、AWS GovCloud(米国)または中国リージョンでは利用できません。クラウドの承認と許可の伝播は、セットアップ時間に影響を与える可能性があります。

著者についてもっと知る

Ankit Gupta, Staff Product Manager at Snowflake

Ankit Gupta

Staff Product Manager
この投稿をシェア

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week