Snowflake Data Clean Rooms 環境のインストール¶
始める前に¶
clean room環境用は、同じアカウントのすべてのユーザーのSnowflakeにインストールされます。
アカウント内のユーザーに、clean room管理者から、clean room環境へのアクセス許可が付与されます。
clean room環境がアカウントにインストールされていない場合: このページのインストール手順に従ってください。
clean roomへの招待メールを受け取った場合: リンクをクリックし、指示に従ってメールアドレスと新しいパスワードを入力してください。clean roomのウェブアプリケーションが開き、clean roomに参加して使用できます。招待を受け取ったメールアドレスを入力する必要があります。パスワードはclean roomのアカウントごとに作成しますので、Snowflakeのパスワードを再利用しないことをお勧めします。
clean room環境が自分のアカウントにインストールされ、それにアクセスしたい場合: API、 UI、またはその両方へのアクセス許可をclean room管理者に依頼してください。
概要¶
Snowflake Data Clean Roomsは次の2つの環境で構成されています:
clean room UI: ユーザーが簡単に分析を作成・実行できる、ノーコードのブラウザベース環境。
clean room API: clean roomの作成と管理、分析の実行に使用する、ストアドプロシージャのセット。
この2つの環境は似ていますが、 まったく同じではありません。clean room管理者は、Snowflakeアカウントにどちらか一方、または両方のコンポーネントをインストールし、2つの環境へのアクセス許可を、別々にユーザーに付与できます。
Snowflake Data Clean Roomsのインストール要件¶
アカウントとユーザーの要件¶
Snowflakeアカウントに Snowflake Data Clean Rooms をインストールするための要件は以下のとおりです:
アカウントは、必要な Snowflake Edition である必要があります。
clean roomを作成するには、Enterprise Editionまたはそれ以上が必要です。
他のアカウントで作成されたclean roomに参加して使用 するには、Standard Editionまたはそれ以上が必要です。
アカウントが キーペア認証 を許可し、それを認証のサービスプロバイダーが使用する必要があります。
データ共有条件に同意する必要があります。 Snowflakeお客様管理データシェア機能利用規約 に同意されていない場合は、 Snowflake サポート までご連絡ください。Snowflake Data Clean Roomsで使用する リスト は、Snowflakeサービスの一部であり、Snowflakeの利用規約(Snowflakeお客様管理データ共有機能利用規約や Snowflakeで認められる使用のポリシー)が適用されます。
アカウントレベルのデフォルト 照合順序 を定義しないでください。照合順序の状態は、以下のコマンドで確認できます:
SHOW PARAMETERS LIKE 'DEFAULT_DDL_COLLATION' IN ACCOUNT;
(Clean room UI のみ) Snowflakeアカウントは容量アカウントである必要があります。 容量アカウントは、前もって容量を約束するアカウントを言います。Snowflake On-Demandアカウントでは、clean room UI にアクセスできません。
(Clean room UI のみ) 多要素認証 (MFA) を、 サポート対象の認証アプリ で使用する必要があります。
これらの要件をすべて満たしておらず、アップグレードが必要な場合は、 Snowflakeサポート までご連絡ください。
インストールの際のユーザー要件¶
clean room環境をインストールするユーザーには、次の要件があります:
clean room環境をSnowflakeアカウントにインストールするために、 ACCOUNTADMIN ロールがそのアカウントに必要です。
ACCOUNTADMINロールを持つユーザーは、そのユーザーオブジェクトに有効な姓、名、メールが定義されている必要があります。確認するには、 DESCRIBE USER を実行してください。
clean room環境をインストールする¶
Snowflakeアカウントにclean room環境をインストールするには、次の手順に従います。
必ずネイティブアプリをインストールする必要がありますが(手順 1)、その後、clean room UI を有効にしてブラウザで使用することも、clean room API を有効にしてコードで使用することも、またはその両方を使用することもできます。UI と API の両方をインストールし、コーディングをする場合もしない場合も対応可能にすることをお勧めします。
1.ネイティブアプリケーションのインストール¶
コードまたはマーケットプレイスからネイティブアプリケーションをインストールします:
- マーケットプレイスのプロバイダーおよびコンシューマー規約に同意したくない場合:
Snowflakeアカウントで以下のコードを実行します:
USE ROLE ACCOUNTADMIN; CALL system$accept_legal_terms('DATA_EXCHANGE_LISTING', 'GZSTZTP0KKO'); CREATE APPLICATION SAMOOHA_BY_SNOWFLAKE FROM LISTING 'GZSTZTP0KKO';
- マーケットプレイスのプロバイダーおよびコンシューマー規約に同意する場合:
現在のロールを ACCOUNTADMIN にセットします
Snowflake Data Clean Roomsアプリケーション をSnowflake Marketplaceからインストールします。
Get を選択し、デフォルトオプションを受け入れます。
インストールには数分かかります。
2.clean room API をインストールする¶
clean room API は、clean roomの作成と使用をプログラムにより行うために使用します。
以下に、clean room API をSnowflakeアカウントにインストールする手順を示します:
ネイティブアプリケーションをインストールした後、Snowflakeでそれを起動します: Data products » Apps » Snowflake Data Clean Rooms » Launch app。SQL コマンドを含むワークシートが開きます。
SQL コマンドを実行し、以下の手順でclean room API をインストールします:
インストール中にネイティブアプリケーションの名前を変更した場合は、スクリプトのコメントに示されているように、スクリプトを修正する必要があります。
インストールスクリプトの実行前に全体を確認したい場合は、
DRY_RUN=TRUE
のスクリプト行のコメントを解除し、すべてのコマンドを実行すると、スクリプトの内容が表示されます。ここで表示される インストールスクリプトを手動で実行しないでください。 インストールが途中で終了します。インストールには数分かかります。
APIにアクセスできることを確認してください:
USE ROLE samooha_app_role; USE WAREHOUSE app_wh; CALL SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.LIBRARY.CHECK_MOUNT_STATUS();
FALSE と表示された場合は、以下のトラブルシューティングのセクションを参照してください。
Snowflakeアカウントの他のユーザーに API へのアクセス許可を付与します:
clean roomを作成・管理のための フルアクセス を持つユーザーを追加するには、
GRANT ROLE SAMOOHA_APP_ROLE to USER USER
を実行します。コンシューマーの実行アクセスのみ が許可されたユーザーを追加するには、1つ以上のSnowflakeロールを作成し、このロールへのアクセス許可をユーザーに付与します。その後、
consumer.grant_run_on_cleanrooms_to_role
を呼び出すことで、特定のclean roomの実行アクセスを許可します。
(オプション) clean room UI をインストールして、clean roomへのノーコードアクセスやスケジュールクエリなどの機能を有効にします。
3.clean room UI を有効にする¶
clean room UI は、clean roomのアカウントを管理し、clean roomを作成し、分析を実行するための使いやすいノーコード環境です。また、スケジュールクエリ、サードパーティアクティベーション、便利な定義済みテンプレートなど、clean room API にはない 追加の機能 も用意されています。
Snowflakeアカウントでclean room UI を有効にするには、以下の手順に従います:
ネットワークポリシーを構成して clean room UI からSnowflake アカウントへのアクセスを許可します。(Snowflakeアカウントでネットワークポリシーを使用してネットワークトラフィックを制御する場合のみ必要です。)
サービスユーザーを作成します。 このサービスユーザーは、clean room UI がSnowflakeと通信するために使用します。
Snowflake管理者の認証情報でSnowsightにサインインし、以下のようにサービスユーザーを作成します。パスワードと有効なメールアドレスを入力してください。個人のメールアドレスではなく、配信リストを使用することをお勧めします。
-- Create the service user account. USE ROLE USERADMIN; CREATE USER <SERVICE-USER-USERNAME> PASSWORD='<SERVICE-USER-PASSWORD>' FIRST_NAME='DCR' LAST_NAME='Service User' EMAIL='<SERVICE-USER-EMAIL-ADDRESS>';
サービスのユーザー名とパスワードは、Snowsightのインストールプロセスで使用するため、Snowsight以外の場所に保存してください。
Snowsightの現在のユーザーをサインアウトし、同じSnowflakeアカウントにサインインし直しますが、 サービスユーザーの認証情報 を使用します。
プロファイル を開き、 Resend verification email を選択します。
確認メールを開き、リンクをクリックしてサービスユーザーのメールアドレスを確認してください。サービスユーザーの認証情報でSnowsightに再度サインインする必要はありません。clean room UI のサービスユーザーの詳細は、 Admin » Snowflake Admin のページの、 Snowflake にあります。
UI のセットアップを完了します。 これにより、サービスユーザーにネットワークポリシーが適用され、サービスユーザーがパスワード認証からキーペア認証に移行します。また、 SAMOOHA_APP_ROLE がサービスユーザーに付与されます。以下の手順に従って、 UI の基本的なセットアップを完了してください:
Snowflakeの認証情報で clean room UI にサインインします。
Admin » Snowflake Admin » Connect to Snowflake account を開きます。
サービスアカウントのユーザー名を入力し、 Save を選択します。
以上でclean room UI を使用できます。
clean room UI の環境を構成する¶
ネイティブアプリケーション、 API、 UI をインストールした後、環境を構成して、ユーザーを追加します:
clean room UI の管理者とユーザーを追加します。 管理者は日常的に環境を管理し、コラボレーターの管理やサードパーティコネクタの構成など、多くの処理を実行できます。ユーザーはclean roomを作成・参加したり、分析を実行したりできます。
開発者を追加します。 Snowflakeアカウントの開発者に API のアクセス許可を付与し、アカウント内でclean roomを作成または使用できるようにします。
クロスクラウド自動複製を有効にします。 デフォルトでは、clean roomの作成者と同じクラウドリージョンに含まれるコンシューマーとのみ、clean roomを共有できます。プロバイダーに、別のクラウドリージョンに含まれるコンシューマーと、clean roomを共有させたい場合は、アカウントでクロスクラウド自動複製を有効にする必要があります。
UI で利用可能なデータセットを登録します。 clean room UI を使用するコラボレーターは、clean room UI の管理者によって事前に登録されているデータのみを、clean roomにインポートできます。
インストールのトラブルシューティング¶
このセクションは、このトピックのステップを完了した後に発生する可能性のある問題のトラブルシューティングに使用します。
- 症状: 権限が不十分である
解決策: ウェブアプリに関連付けられた IP アドレスが、ネットワークポリシーで許可されていることを確認します。これらの IP アドレスのリストについては、 ネットワークポリシーの構成 をご参照ください。
- 症状: インストールは成功したが、ウェブアプリが正しく機能しない。
解決策#1: DESCRIBE USER コマンドを使用して、Snowflakeの設定に使用したSnowflakeユーザーが有効な姓、名、メールアドレスを持っていることを再確認します。これらのいずれかが欠けている場合は、 ALTER USER コマンドを実行して指定します。
解決策2: Snowflake Data Clean Rooms の Snowflake Native App をアンインストールしてから、再インストールします。
アプリをアンインストールするには、 Snowflake Native Appのアンインストール をご参照ください。アプリケーションをデフォルトの名前でインストールした場合、その名前は SAMOOHA_BY_SNOWFLAKE となります。
アプリを再インストールするには:
左側のナビゲーションペインで、 Snowflake Admin を選択します。
Login to Snowflake を選択し、ACCOUNTADMIN ロールを持つSnowflakeユーザーとして認証します。
DESCRIBE USER コマンドを使用して、先ほど認証に使用した ACCOUNTADMIN ロールを持つSnowflakeユーザーの姓、名、およびメールアドレスが有効であることを確認します。これらのいずれかが欠けている場合は、 ALTER USER コマンドを実行して指定します。
Snowflake Native App をインストールするには、 Install を選択します。
インストール時に、アプリケーションのデフォルト名を受け入れます。