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 Data Exchange の全体像:特定アカウント間でのデータ共有と発見の仕組み

0
Last updated at Posted at 2026-01-08

概要

本記事は、Snowflake の Data Exchange を「これから触る」「運用設計したい」方向けに、全体像と運用上の要点を整理したものです。
なお、基本的な操作フロー(有効化、同一リージョン共有、異なるリージョン共有)は別記事に分けているため、本記事では該当記事へのリンクを案内しつつ、運用時に効いてくるポイントを中心にまとめます。

下記は AI による記事の概要です。

17679216959059106474007107157124.png

1. Data Exchange について

1-1. Data Exchange とは

Data Exchange は、特定のメンバー(Snowflake アカウント)を招待し、データを安全に共有し、Exchange 内で発見できるハブを構成する仕組みです。
提供側(Provider)はデータを Listing として公開し、参加メンバー(Consumer)は Exchange 内で Listing を検索して、データを取得(無料)またはリクエスト(パーソナライズ)できます。

image.png

出所: Data Exchangeについて | Snowflake Documentation

1-2. データ共有機能における位置付け

Snowflake には複数のデータ共有手段があり、用途によって最適解が変わります。主に下記の 6 つが候補になります。
このうち Data Exchange は、Snowflake の Organization(組織)に閉じずに、特定の Snowflake アカウント群をメンバーとして招待し、共有と発見を一体で運用できる点が特徴です。

  1. Direct Share(Share)
  2. Private Listings
  3. Snowflake Marketplace(Public Listings)
  4. Data Exchange
  5. Internal Marketplace(Organizational listings)
  6. VPS private listings
  7. Data Clean Rooms

1-3. Listing のタイプ

Data Exchange の Listing には、主に以下の 2 タイプがあります。
重要なのは「承認の有無」というより、事前に SHARE がアタッチされているかどうかが実務上の差分になりやすい点です。あわせて、UI とドキュメントで表記が異なる(例: UI の リクエストにより がドキュメントでは パーソナライズされたリスト と表現される)ため、表記ゆれに注意してください。

  1. 無料 タイプ(無料リスト)
  2. リクエストにより タイプ(パーソナライズされたリスト)

image.png

2. 基本的な利用方法

2-1. Data Exchange の有効化

下記の記事に整理しています。

image.png

引用: Snowflake にて Data Exchange の構成手順 #Snowflake - Qiita

2-2. 同一リージョンにてデータ共有する手順

下記の記事に整理しています。

image.png

出所: Snowflake の Data Exchange により同一リージョンにある Snowflake アカウント間でデータ共有を実施する手順 #Snowflake - Qiita

2-3. 異なるリージョンにて無料リストのデータ共有を行う手順

下記の記事に整理しています。

image.png

出所: Snowflake の Data Exchange により異なるリージョンにある Snowflake アカウント間でデータ共有を実施する手順 #Snowflake - Qiita

3. 活用に向けた情報整理

3-1. ロールについて

Data Exchange には 3 つのロールがあります。
Data Exchange をホストする Snowflake アカウントが管理者(Admin)となり、メンバー(他の Snowflake アカウント)の登録やロール付与を行います。データ提供を担うアカウントには Provider ロールを、データ消費を担うアカウントには Consumer ロールを付与します。

  1. Admin
  2. Provider
  3. Consumer

image.png

各ロールで可能な操作は、以下のドキュメントで整理されています。

image.png

出所: Data Exchangeへのアクセス | Snowflake Documentation

3-2. SQL で実行できない(または情報が少ない)操作がある

Data Exchange は、Snowsight の GUI 運用を前提にしているように見えます。公式ドキュメントでも GUI 手順の説明が中心で、同等の手順を SQL に置き換える方法が十分に提示されていない項目が散見されます。
そのため、運用設計では「どこまでを SQL で自動化できるか」よりも、「GUI 前提で誰がどの作業を担うか(権限・手順・監査)」を先に固めるのが現実的です。

3-3. Data Exchange の管理者権限の委譲

Data Exchange の管理は基本的に ACCOUNTADMIN が担います。一方で、Admin アカウント内のロールに IMPORTED PRIVILEGES を付与することで、管理タスクを他ユーザーへ委譲できます。詳細は以下を参照してください。

image.png

出所: 他のロールへの権限付与 | Snowflake Documentation

3-4. リモートリージョン(異なるリージョン)へのデータ共有

リモートリージョンに共有する場合、無料リストパーソナライズされたリストで仕様が異なります。特に Manual fulfilment を選択する場合、アカウント間でのレプリケーション等により、提供側がデータ複製を行う必要があります。

  1. 無料 タイプ(無料リスト): Auto-fulfilment / Manual fulfilment を選択可能
  2. リクエストにより タイプ(パーソナライズされたリスト): Manual fulfilment のみ選択可能
  • パーソナライズされた リストの場合、データはリモートリージョンで自動的に利用できません。プロバイダーは、これらの各リージョンにデータを複製する責任があります。
  • 無料 のリストの場合は、共有をリモートリージョンのリストに事前に関連付けるオプションがあります。

image.png

出所: データリストを管理する | Snowflake Documentation

3-5. その他の考慮事項

公式ドキュメントに運用上の考慮事項が整理されており、チェックリストとして有用です。

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?