0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【図解あり】SnowflakeのStorage Integrationとは?5分で理解するS3連携の仕組み

0
Last updated at Posted at 2026-07-10

はじめに

SnowflakeでAmazon S3上のCSVファイルを読み込もうとすると、

Storage Integration

という設定が登場します。

初めて見ると、

「External Stageと何が違うの?」

「なぜStorage Integrationが必要なの?」

と思う方も多いのではないでしょうか。

本記事では、Storage Integrationの役割やExternal Stageとの違いを図解しながら解説します。


Storage Integrationとは?

Storage Integrationとは、

SnowflakeがAmazon S3などのクラウドストレージへ安全にアクセスするための認証設定

です。

簡単に言うと、

SnowflakeとS3を安全につなぐための橋渡し役

になります。


なぜStorage Integrationが必要なの?

例えば、SnowflakeがS3上にあるCSVファイルを読み込みたいとします。

しかし、

Snowflake
      │
      ▼
Amazon S3

この状態ではアクセスできません。

S3には、

「このアクセスは許可されているのか?」

という認証が必要だからです。

そこでStorage Integrationを利用します。


イメージ

image.png

Storage Integrationは、

IAMロールを利用してSnowflakeが安全にS3へアクセスできるようにします。

Storage Integrationには何が設定される?

主に次のような情報が設定されています。

  • IAMロール
  • 許可するS3バケット
  • クラウドプロバイダー(AWSなど)
  • 外部ストレージへのアクセス情報

つまり、

「どのS3へアクセスできるのか」

を管理する設定です。


External Stageとの違い

初心者が一番混同しやすいポイントです。

Storage Integration External Stage
認証を担当 S3の場所を指定
IAMロールを利用 CSVファイルの場所を指定
一度作れば使い回せる 用途ごとに複数作成可能

イメージすると、

image.png

という役割になります。


データパイプラインではどこで使われる?

Storage Integrationは、

Snowflakeのデータパイプラインでは次の位置にあります。

image.png

Storage Integrationは、

データを保存するものでも処理するものでもありません。

External StageがS3へアクセスするために利用される認証設定です。


Storage Integrationを使うメリット

セキュリティが高い

アクセスキーをSnowflakeへ保存する必要がありません。

IAMロールによる認証を利用するため、安全に運用できます。


使い回せる

一度作成すれば、

複数のExternal Stageから利用できます。


AWS推奨の構成

現在は、

IAMロールを利用するStorage Integrationが推奨されています。

アクセスキーを直接設定する方法よりも、安全で管理しやすい構成です。


作成イメージ

Storage IntegrationはSQLで作成します。

CREATE STORAGE INTEGRATION my_s3_integration
TYPE = EXTERNAL_STAGE
STORAGE_PROVIDER = S3
ENABLED = TRUE
STORAGE_ALLOWED_LOCATIONS = ('s3://sample-bucket/');

作成後、

IAMロールとの信頼関係を設定します。


External Stageで利用する

Storage Integrationを作成したら、

External Stageから指定します。

CREATE STAGE sample_stage
URL='s3://sample-bucket/'
STORAGE_INTEGRATION=my_s3_integration
FILE_FORMAT=(TYPE=CSV);

これで、

SnowflakeはStorage Integrationを利用してS3へアクセスできるようになります。


よくある質問

Q. Storage IntegrationだけでCSVを読み込めますか?

いいえ。

Storage Integrationは認証設定です。

実際にファイルを読み込むには、

External StageやSnowpipe、COPY INTOなどを利用します。


Q. Storage Integrationは複数作成できますか?

はい。

用途ごとや環境ごと(開発・本番など)に複数作成できます。


Q. Storage Integrationは毎回作る必要がありますか?

いいえ。

一度作成すれば、

複数のExternal Stageで共有できます。


まとめ

Storage Integrationは、

SnowflakeがS3へ安全にアクセスするための認証設定です。

External StageやSnowpipeを利用する際には欠かせない重要な機能です。

ポイントのおさらい

  • Storage Integrationは認証を担当する
  • IAMロールを利用してS3へアクセスする
  • External Stageとは役割が異なる
  • 一度作成すれば複数のStageで利用できる
  • AWS推奨の認証方法

Storage Integrationの役割を理解すると、Snowflakeのデータパイプライン全体の構成も理解しやすくなります。


参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?