Snowflake Data Clean Rooms: 管理者のタスク

このトピックでは、 Snowflake Data Clean Room の管理者のタスクについて説明します。Snowflakeアカウントにクリーンルーム環境をインストールすることに関する情報については、Snowflake Data Clean Rooms 環境のインストール をご覧ください。

クリーンルーム環境の更新

Snowflake Data Clean Roomsは、新しい機能、プロシージャ、および UI 更新をサポートするために、毎週バイナリを更新します。重要な新しいリリースのリリースノートは、Snowflake リリースノートのページの 機能更新セクション で確認できます(「クリーンルーム」を検索)。

クリーンルーム UI の更新

クリーンルーム UI 環境はSnowflakeによって自動的に更新されます。ユーザーは、クラスルーム UI からサインアウトしてサインインし直すだけで、更新を入手できます。

クリーンルーム API の更新

クリーンルーム管理者は、次に説明するように、自動 API 更新(推奨)を有効化するか、新しいリリースごとに API 環境を手動で更新することができます。

API の自動更新

クリーンルーム API 管理者は、次の SQL コマンドをアカウントで1回実行することで、クリーンルームの更新をリリース時に自動でインストールできるようになります。

USE ROLE SAMOOHA_APP_ROLE;
CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.library.enable_local_db_auto_upgrades();
Copy

そのアカウントのクリーンルーム API ユーザーには、ロールアウトされるとすぐに更新が表示されます。ログアウトする必要はありません。

API の手動更新

アカウントでクリーンルームの自動更新を有効にすることをお勧めします。ただし、アカウントの API 環境の手動更新を希望する場合は、環境を更新したいときに毎回次の SQL コマンドを実行することで、手動更新できます。

USE ROLE SAMOOHA_APP_ROLE;
CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.library.apply_patch();
Copy

次の SQL コマンドを実行すると、リリース番号を確認できます。

SELECT * FROM SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.ADMIN.VERSION;
Copy

別のウェアハウスの使用

クリーンルームには API にアクセスできる いくつかのウェアハウス が用意されています。ニーズに適したウェアハウスを選択してください。また、プロバイダーのアクティベーション など特定のアクションに対してカスタムウェアハウスサイズを選択することもできます。

ただし、クリーンルームは、そのウェアハウスに対する USAGE および OPERATE の権限が SAMOOHA_APP_ROLE ロールに付与されていれば、選択されたどのウェアハウスでも使用できます。

例えば、分析の実行に使用できるウェアハウス my_big_warehouse を追加するには、ワークシートから以下のコマンドを実行します。

USE ROLE ACCOUNTADMIN;

CREATE WAREHOUSE my_big_warehouse WITH WAREHOUSE_SIZE = X5LARGE;
GRANT USAGE, OPERATE ON WAREHOUSE my_big_warehouse TO ROLE SAMOOHA_APP_ROLE;
Copy

クリーンルームの UI アクティビティをモニタリングする

管理者として、Snowflakeアカウントのクエリ履歴をモニタリングすることで、ユーザーがクリーンルーム UI で何をしているかを追跡できます。user_name の値は、Snowflakeアカウントが構成 されたときに作成されたサービスユーザーの名前であるため、クリーンルーム UI のアクティビティに対応するクエリ履歴エントリを識別できます。

user_email クエリタグを使用して、どのクリーンルームユーザーがアクションを実行したかを識別できます。

クリーンルーム環境のクエリ履歴にアクセスするには、 SQL または Snowsight のどちらを使用するかによって、以下のいずれかの操作を行います。

Snowsight:
  1. ACCOUNTADMINロールを持つユーザーとして、クリーンルーム環境に関連付けられたSnowflakeアカウントにサインインします。

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

  3. User フィルターを使用して、クリーンルーム環境に関連するサービスアカウントユーザーを選択します。

SQL:
  • 共有 SNOWFLAKE データベースの ACCOUNT_USAGE スキーマの QUERY_HISTORY ビュー に対してクエリを実行します。

    たとえば、ユーザー joe@example.com のクリーンルーム UI のアクティビティをトレースするには、以下のコードを実行します。

    SELECT *,
      TRY_PARSE_JSON(query_tag) AS query_tag_details
      FROM snowflake.account_usage.query_history
      WHERE query_tag_details IS NOT NULL
        AND query_tag_details:request_type = 'DCR'
        AND query_tag_details:user_email = 'joe@example.com';
    
    Copy

プロバイダーが運営する分析をモニターする

プロバイダーが実行する分析とは、プロバイダーがクリーンルームを作成して共有し、コンシューマーがデータをリンクした後にクリーンルームで分析を実行するプロセスを指します。これらの分析は、プロバイダーではなく、コンシューマーのアカウントで実行されます。このセクションでは、コンシューマーがクリーンルーム内でプロバイダーの分析によって実行されたクエリを追跡する方法について説明します。

Snowflake Data Clean Rooms は、プロバイダーが実行する分析で実行される各クエリにクエリタグを割り当てます。このクエリタグは cleanroom_UUID_provider_account_locator という形式をとります。コンシューマーは、自分のアカウントのクエリ履歴でクエリタグを検索することにより、プロバイダーが実行した分析に関連するすべてのクエリを取得することができます。

クエリを取得するには、まずクリーンルームの UUID を取得し、次にクエリタグを検索します。以下のコードでは、 cleanroom_nameprovider_account_locator を適切な値に置き換えてください。

-- Retrieve clean room UUID
SELECT cleanroom_id FROM samooha_by_snowflake_local_db.public.cleanroom_record
  WHERE cleanroom_name = '<cleanroom_name>';

-- Retrieve queries with provider-run query tag
SELECT * FROM snowflake.account_usage.query_history
  WHERE query_tag = cleanroom_id || '<provider_account_locator>;
Copy

また、 SQL を使ってクリーンルーム UUID を取得した後、 Snowsight を使って、適切なクエリタグでクエリ履歴をフィルタリングすることもできます。

利用可能なコネクタをカスタマイズする

コネクタにより、クリーンルーム環境をエコシステムパートナーと統合できます。プロバイダーのクリーンルーム管理者として、クリーンルーム環境をカスタマイズして、クリーンルームユーザーのオプションとして表示されるコネクタを制限することができます。例えば、優先的なアクティベーションパートナーが1社ある場合、コンシューマーがクリーンルームで分析結果をアクティベーションする際に、そのパートナーが唯一の選択肢となるようにクリーンルーム環境を設定することができます。

注釈

カスタマイズは新しいクリーンルームにのみ適用されます。

どのコネクタをclean roomで使用できるかを制御するには、 MANAGE_DCR_CONNECTORS ロールが必要です。

  1. クリーンルーム UI にサインインします。

  2. 左側のナビゲーションで Admin » Profile & Features を選択します。

  3. オプション: アクティベーションコネクタをカスタマイズするには、以下の手順に従ってください:

    1. Activation タイルで、 Edit を選択します。

    2. 表示したいアクティベーションオプションを選択し、 Save を選択します。

  4. オプション: IDおよびデータプロバイダーコネクタをカスタマイズするには、次のステップに従います。

    1. Identity & Data Provider タイルで、 Edit を選択します。

    2. 表示したいIDオプションを選択し、 Save を選択します。

クリーンルームのブランド化

クリーンルーム環境用のプロファイルを設定できるので、作成されたクリーンルームはすべてロゴと会社名でブランド化されます。会社のロゴと名前を定義するには、 MANAGE_DCR_PROFILE_AND_FEATURES ロールが必要です。

  1. クリーンルーム UI にサインインします。

  2. 左側のナビゲーションで Admin » Profile & Features を選択します。

  3. Company profile セクションで、次の操作を実行します。

    1. あなたの会社のロゴを JPG または PNG 形式でアップロードします。このロゴは、作成されるすべてのクリーンルームに表示されます。

    2. Company Name を編集して、環境内に作成されるクリーンルームに表示する名前を定義します。

シングルサインオンの有効化 (SSO)

Snowflake認証でのシングルサインオン(SSO)を有効化するには、Snowflakeサポート にお問い合わせください。アカウントはSnowflake認証を使って SSO を有効化する必要があります。まだ使用していない場合は、Snowflake認証に移行 してから SSO をリクエストします。

キーペア認証を許可する

クリーンルーム環境がSnowflakeアカウントとの通信に使用するサービスアカウントユーザーは、 キーペア認証 を使用して認証します。Snowflake アカウントが 認証ポリシー を使用してユーザーの認証方法を制御している場合、サービスアカウントユーザーを制御する認証ポリシーは、キーペア認証を許可する必要があります。

キーペア認証を許可するには、すべての認証ポリシーを削除するか、認証ポリシーに AUTHENTICATION_METHODS = ALL または AUTHENTICATION_METHODS = KEYPAIR を追加します。Snowflakeアカウントに、キーペア認証を許可しないアカウントレベルの認証ポリシーがある場合は、適切なパラメーターを持つ新しい認証ポリシーを作成し、インストールプロセス中に作成されたサービスアカウントユーザーにポリシーを割り当てる必要があります。

このコマンドを実行することで、認証ポリシーを確認できます:

SHOW AUTHENTICATION POLICIES;
Copy

空の結果テーブルはポリシーが存在せず、よってキーペア認証が許可されていることを示します。

clean room UI でのアクティベーションの有効化または無効化

clean room UI 使用時のアクティベーションは、clean room管理者によってグローバルに制御されます。clean room API でのアクティベーションは、プロバイダーによってclean roomレベルで制御されます。

このセクションでは、clean room UI の使用時にアクティベーションを有効または無効にする方法を示します。API の使用時にアクティベーションを有効にする方法については、 アクティベーションの説明 をお読みください。

clean room UI を使用する場合、プロバイダーとコンシューマーのアクティベーションは、clean roomのアカウントでデフォルトで有効化されます。サードパーティのアクティベーションは、手動で有効にする必要があります。

ここでは、アカウント内の UI ユーザーのアクティベーションを有効または無効にする方法を説明します:

  1. クリーンルーム UI のクリーンルーム環境へ DCR 管理者としてサインインします。

  2. Admin » Profile & Features を選択します。

  3. Activation セクションで、 Edit を選択します。

    • コンシューマーアクティベーション を管理するには: Collaborator Account の横のチェックボックスをオンまたはオフにします。

    • プロバイダーアクティベーション を管理するには: 自分のアカウント名の横のチェックボックスをオンまたはオフにします。

    • サードパーティアクティベーション を管理するには: 有効または無効にしたいサードパーティアクティベーションのターゲットの横のチェックボックスをオンまたはオフにします。サードパーティアクティベーションはコネクタを通じて有効化され、clean room UI でのみ利用可能です。 利用可能なサードパーティコネクタのリストをご参照ください

clean roomにアクティベーション実装する方法を説明します。

ネットワークポリシーの構成

Snowflakeアカウントが ネットワークポリシー を使用してネットワークトラフィックを制御する場合は、クリーンルーム UI がSnowflakeアカウントとの通信に使用する IP アドレスからのトラフィックを明示的に許可する必要があります。

以下の表でクラウドプロバイダーのアカウントリージョンを探し、その行にリストされているすべての IP アドレスを許可するようにアカウントネットワークポリシーを構成してください:

Snowflakeアカウントリージョン

クリーンルーム UI のこれらの IP アドレスを許可する

  • AWS US 西部(オレゴン)

  • AWS US東部(オハイオ)

  • AWS US 東部(北部バージニア)

  • AWS 南米(サンパウロ)

  • Azure西部US 2(ワシントン)

  • Azure中部US(アイオワ)

  • Azure南中央US(テキサス)

  • Azure東 US 2(バージニア)

  • GCP US 中部1(アイオワ州)

  • GCPUS 東部4(バージニア州北部)

52.7.249.136
34.195.16.248
52.7.210.215
  • AWSカナダ(中部)

  • Azureカナダ中部(トロント)

15223145218
3.96.6.109
15.222.142.44
  • AWS EU(アイルランド)

  • AWSヨーロッパ(ロンドン)

  • AWS EU (パリ)

  • AWS EU (フランクフルト)

  • AWS EU(ストックホルム)

  • AWS EU (チューリッヒ)

  • Azure UK南部(ロンドン)

  • Azure北部ヨーロッパ(アイルランド)

  • Azure西ヨーロッパ(オランダ)

  • Azureスイス北部(チューリッヒ)

  • Azure UAE 北部(ドバイ)

  • GCP ヨーロッパ西部2(ロンドン)

  • GCP ヨーロッパ西部4(オランダ)

54.93.86.99
3.126.238.8
3127143168
  • AWSアジア太平洋(ムンバイ)

  • Azure中部インド(プネー)

35.154.94.29
13235168249
15.206.48.175
  • AWS アジア太平洋(シンガポール)

  • AWS アジア太平洋(東京)

  • AWS アジア太平洋(大阪)

  • AWS アジア太平洋(ソウル)

  • AWS アジア太平洋地域(ジャカルタ)

  • Azure東南アジア(シンガポール)

  • Azure日本東部(東京)

13.228.90.174
52.220.42.130
52.220.249.16
  • AWS アジア太平洋(シドニー)

  • Azureオーストラリア東部(ニューサウスウェールズ)

52.65.205.236
52.62.198.227
3.104.160.96

この環境のサービスアカウントの詳細を表示する

クリーンルーム UI はサービスアカウントを使用してSnowflakeと通信します。このサービスアカウントは、アカウント管理者がこのアカウントのクリーンルーム環境をインストールしたときに作成したものです。

サービスアカウントユーザーの詳細の変更はできません。

このclean room環境のサービスアカウントの詳細を表示するには、 MANAGE_DCR_PROFILE_AND_FEATURES ロールが必要です。

  1. Snowflake Data Clean Roomsのログインページ に移動します。

  2. Admin > Snowflake Admin に移動します。

  3. Snowflake Admin ページに、サービスユーザーの名前やサービスユーザーの電子メールなどの情報が表示されます。