Snowflakeデータクリーンルーム:コンシューマーAPIリファレンスガイド

以下のコンテンツは、Snowflakeデータクリーンルームがコンシューマー向けに提供するすべての開発者APIsの詳細です。すべての関数は以下のスキーマの中にあります。

samooha_by_snowflake_local_db.consumer
Copy

環境設定

開発者APIsを使用してSnowflake Data Clean Roomで作業する前に、以下のコマンドを実行してSnowflake環境をセットアップします。SAMOOHA_APP_ROLEのロールをお持ちでない場合は、アカウント管理者にお問い合わせください。

use role samooha_app_role;
use warehouse app_wh;
Copy

プロバイダーが共有したクリーンルームの名前を割り当てます。

set cleanroom_name = 'Test Cleanroom 1';
Copy

クリーンルームをインストールする

プロバイダーが共有するクリーンルームを以下のコマンドでインストールします。

consumer.install_cleanroom

説明:関連プロバイダーと選択されたクリーンルームを使って、クリーンルームをコンシューマーアカウントにインストールします。

入力: cleanroom_name(文字列)、 provider_account_locator(文字列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.install_cleanroom($cleanroom_name, '<PROVIDER_ACCOUNT_LOCATOR>');
Copy

consumer.is_enabled

説明: クリーンルームのインストールが完了すると、プロバイダー側で設定が完了し、使用可能になるまで約1分かかります。この関数により、ユーザーはクリーンルームのステータスを確認し、有効かどうかを確認することができます。クリーンルームのインストール後、通常1分程度でフラグが「真」に切り替わります。

入力: cleanroom_name(文字列)

出力: 有効化(ブール値)

:

call samooha_by_snowflake_local_db.consumer.is_enabled($cleanroom_name);
Copy

consumer.uninstall_cleanroom

説明:コンシューマーアカウントのクリーンルームをアンインストールします。これにより、共有クリーンルームデータベースを含む、クリーンルームに関連するすべてのデータベースが削除されます。クリーンルームは consumer.install_cleanroom で随時再インストールできることに注意してください。

入力: cleanroom_name(文字列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.uninstall_cleanroom($cleanroom_name);
Copy

プロバイダー実行分析を設定する

library.is_provider_run_enabled

説明: このクリーンルームがプロバイダー実行分析を有効にしているかチェックします。注意:consumer.enable_templates_for_provider_runを呼び出すことによって、明示的な承認を与える必要があります (以下を参照)。

入力: cleanroom_name(文字列)

出力: 有効メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.is_provider_run_enabled($cleanroom_name)
Copy

library.is_consumer_run_enabled

説明: このクリーンルームでコンシューマー実行分析が有効になっているかどうかをチェックします。このフラグは、クリーンルームの利用者(インストール担当者)が分析を実行できるかどうか、またはコラボレーションへのデータ提供者として機能するかどうかを決定します。

入力: cleanroom_name(文字列)

出力: 有効メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.is_consumer_run_enabled($cleanroom_name)
Copy

consumer.enable_templates_for_provider_run

説明: クリーンルームがプロバイダー実行分析を有効にしている場合 (すなわち、クリーンルームのプロバイダーが、プロバイダーが分析を実行できるようにクリーンルームをマークしている場合)、それらを有効にするために、このプロシージャをコンシューマーが呼び出す必要があります。この手続きは、分析を実行したいプロバイダーに対して、テンプレートごとに明確な承認を与えるために必要です。

最後のブール値パラメータは、TRUEに設定された場合、コンシューマーがプロバイダーの分析のための差分プライバシーを有効にすることを可能にします。

入力: cleanroom_name(文字列)、template_names(配列)、enable_differential_privacy(ブール値)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.enable_templates_for_provider_run($cleanroom_name, ['prod_overlap_analysis'], FALSE);
Copy

データの登録および登録解除

以下のコマンドを使用して、データベース、スキーマ、オブジェクトの登録および登録解除を行います。テーブルとビューは、クリーンルームにリンクする前に登録する必要があります。データベースまたはスキーマを登録すると、そのデータベースまたはスキーマ内のすべてのオブジェクトが登録されます。

consumer.register_db

説明: クリーンルームにデータベースを追加することで、データベースから任意のデータセットをリンクすることができます。これが呼び出されない場合、samooha_app_roleに個別に付与する必要があります。

入力: db_name(文字列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.register_db('SAMOOHA_SAMPLE_DATABASE');
Copy

library.register_schema

説明: register_db と似ていますが、スキーマレベルで操作します。完全修飾されたテーブル名を表す配列または文字列を渡すことができ、 SAMOOHA_APP_ROLE ロールへの付与選択が行われ、ユーザーはテーブルをクリーンルームにリンクすることができます。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)を登録したい場合は、代わりに library.register_managed_access_schema を使用します。

入力: schema_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_schema(['SAMOOHA_SAMPLE_DATABASE.DEMO']);
Copy

library.register_managed_access_schema

説明: register_schema と似ていますが、 WITH MANAGED ACCESS パラメーターで作成されたスキーマを登録します。完全修飾されたテーブル名を表す配列または文字列を渡すことができ、 SAMOOHA_APP_ROLE ロールへの付与選択が行われ、ユーザーはテーブルをクリーンルームにリンクすることができます。

入力: schema_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_managed_access_schema(['SAMOOHA_SAMPLE_DATABASE.DEMO']);
Copy

library.register_table_or_view

説明: あらゆるタイプのテーブルとビューを登録します。

入力: object_names (array), is_view (boolean), is_iceberg (boolean), is_external (boolean), is_under_managed_access_schema (boolean)

出力: success message (string)

テーブルを登録するには:

call samooha_by_snowflake_local_db.library.register_table_or_view(
    ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
    false,
    false,
    false,
    false);
Copy

Icebergテーブルを登録するには:

call samooha_by_snowflake_local_db.library.register_table_or_view(
        ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'], 
        false, 
        true,
        false,
        false);
Copy

library.register_table

説明register_dbと似ていますが、テーブルレベルで操作します。完全修飾されたテーブル名を表す配列または文字列を渡すことができ、SAMOOHA_APP_ROLEロールへのグラント選択が行われ、ユーザーはテーブルをクリーンルームにリンクすることができます。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)にテーブルを登録したい場合は、代わりに library.register_managed_access_table を使用してください。

入力: table_name(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_table(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.register_managed_access_table

説明: register_table と似ていますが、 WITH MANAGED ACCESS パラメーターで作成されたスキーマのテーブルを登録します。完全修飾されたテーブル名を表す配列または文字列を渡すことができ、SAMOOHA_APP_ROLEロールへのグラント選択が行われ、ユーザーはテーブルをクリーンルームにリンクすることができます。

入力: table_name(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_managed_access_table(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.register_table

説明: register_db と似ていますが、ビューレベルで操作します。完全修飾されたビュー名を表す配列または文字列を渡すことができ、 SAMOOHA_APP_ROLE ロールへの付与選択が行われ、ユーザーはビューをクリーンルームにリンクすることができます。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)にビューを登録したい場合は、代わりに library.register_managed_access_view を使用してください。

入力: view_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_view(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.register_managed_access_view

説明: register_view と似ていますが、 WITH MANAGED ACCESS パラメーターで作成されたスキーマのビューを登録します。完全修飾されたビュー名を表す配列または文字列を渡すことができ、 SAMOOHA_APP_ROLE ロールへの付与選択が行われ、ユーザーはビューをクリーンルームにリンクすることができます。

入力: view_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.register_managed_access_view(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.unregister_db

説明register_dbプロシージャを取り消し、SAMOOHA_APP_ROLEロールとSnowflake Data Clean Roomネイティブアプリケーションに与えられたデータベースレベルのグラントを削除します。これにより、UIドロップダウン要素からデータベースも削除されます。

入力: db_name(文字列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_db('SAMOOHA_SAMPLE_DATABASE');
Copy

library.unregister_schema

説明: スキーマの登録を解除し、ユーザーがそのテーブルとビューをクリーンルームにリンクすることを防ぎます。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)の登録を解除したい場合は、代わりに library.unregister_managed_access_schema を使用してください。

入力: schema_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_schema(['SAMOOHA_SAMPLE_DATABASE.DEMO']);
Copy

library.unregister_managed_access_schema

説明: unregister_schema と似ていますが、 WITH MANAGED ACCESS パラメーターで作成されたスキーマの登録を解除します。

入力: schema_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_managed_access_schema(['SAMOOHA_SAMPLE_DATABASE.DEMO']);
Copy

library.unregister_table_or_view

説明: すべてのタイプのテーブルとビューの登録を解除します。

入力: object_names (array), is_view (boolean), is_iceberg (boolean), is_external (boolean), is_under_managed_access_schema (boolean)

出力: success message (string)

テーブルの登録を解除するには:

call samooha_by_snowflake_local_db.library.unregister_table_or_view(
    ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
    false,
    false,
    false,
    false);
Copy

library.register_table

説明: unregister_db と似ていますが、テーブルレベルで操作します。テーブルの登録を解除するために、完全修飾テーブル名を表す配列または文字列を渡すことができます。未登録のテーブルをクリーンルームにリンクすることはできません。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)内のテーブルの登録を解除したい場合は、代わりに library.unregister_managed_access_table を使用してください。

入力: table_name(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_table(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.unregister_managed_access_table

説明: unregister_table と似ていますが、管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)のテーブルの登録を解除します。

入力: table_name(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_managed_access_table(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.unregister_view

説明: unregister_db と似ていますが、ビューレベルで操作します。ビューの登録を解除するには、完全修飾したビュー名を表す配列あるいは文字列を渡します。未登録のビューをクリーンルームにリンクすることはできません。

管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)内のビューの登録を解除したい場合は、代わりに library.unregister_managed_access_view を使用してください。

入力: view_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_view(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

library.unregister_managed_access_view

説明: unregister_view と似ていますが、管理アクセススキーマ(つまり、 WITH MANAGED ACCESS パラメーターで作成されたスキーマ)のビューの登録を解除します。

入力: view_name (array)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.library.unregister_managed_access_view(['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
Copy

データセットを追加する

プロバイダー実行分析のセキュリティポリシーの設定

consumer.set_join_policy

説明: プロバイダーがクリーンルーム内でテンプレートを実行する際、プロバイダー実行分析を使用して結合を実行することが許可される列を指定します。列ポリシーは 置換のみ であることに注意してください。したがって、この関数が再度呼び出された場合、以前に設定された列ポリシーは現在のものに完全に置き換えられます。

SQL、データに対して実行されるクエリを解析し、許可されていない列がないかチェックすることに注意してください。ワイルドカードを使用したクエリは、これらのチェックでは検出されない可能性があります。

入力: cleanroom_name(文字列)、table_and_col_names(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.set_join_policy($cleanroom_name, ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:EMAIL', 'SAMOOHA_SAMPLE_DATABASE.DEMO.EXPOSURES:EMAIL']);
Copy

consumer.set_column_policy

説明: データプロバイダーが操作を実行できる列を設定します。これはテンプレートを追加した後にのみ呼び出されるべきです。これはテンプレートの関数でもあるため、入力は template_name:full_table_name:column_name にする必要があります。列ポリシーが 置換のみ であることに注意してください。したがって、関数が呼び出された場合、以前に設定された列ポリシーは現在のものに完全に置き換えられます。

列ポリシーはEメールなどのID列では呼び出されるべきではありません。これは集約および列別のグループにのみ使用されるべきです。

SQL、データに対して実行されるクエリを解析し、許可されていない列がないかチェックすることに注意してください。ワイルドカードを使用したクエリは、これらのチェックでは検出されない可能性があります。

チェックは、SQL Jinja引数の dimensions または measure_columns に対して行われます。これらのタグを使用して、このチェックを有効にしてください。

入力: cleanroom_name(文字列)、 analysis_and_table_and_columns(配列)

出力: 成功メッセージ(文字列)

:

call samooha_by_snowflake_local_db.consumer.set_column_policy($cleanroom_name,
['prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:STATUS',
 'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:AGE_BAND',
 'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS:DAYS_ACTIVE',
 'prod_overlap_analysis:SAMOOHA_SAMPLE_DATABASE.DEMO.EXPOSURES:CAMPAIGN']);
Copy

テンプレート

以下のコマンドにより、ユーザーは、クリーンルームで利用可能な分析テンプレートを実行できます。

consumer.view_template_definition

説明:クリーンルームテンプレートの定義は、テンプレートに渡す必要のあるパラメータを決定するのに役立ちます。

注釈

Samoohaプロシージャは全て暗号化されており、デフォルトでは閲覧できません。ただし、追加したカスタムテンプレートはすべて表示されます。

入力: cleanroom_name(文字列)、template_name(文字列)

出力: テンプレート定義(文字列)

:

call samooha_by_snowflake_local_db.consumer.view_template_definition($cleanroom_name, 'prod_overlap_analysis');
Copy

consumer.get_arguments_from_template

説明: 出力を簡単に消化できるよう、データをどのように整理し、各テンプレートにどのようなデータが必要かを定義します。

入力: cleanroom_name(文字列)、template_name(文字列)

出力: 引数リストと仕様(テーブル)

:

call samooha_by_snowflake_local_db.consumer.get_arguments_from_template($cleanroom_name, 'prod_overlap_analysis');
Copy

テンプレートチェーン

以下のコマンドにより、ユーザーは、クリーンルームで利用可能なテンプレートチェーンで作業することができます。テンプレートチェーンの使用に関する一般的な情報は、「開発者 APIs を使用してテンプレートを順次実行する」(./developer-template-chains.rst)をご参照ください。

consumer.view_added_template_chains

説明: クリーンルームで現在アクティブなテンプレートを表示します。

入力: cleanroom_name(文字列)

出力:* 追加されたテンプレートチェーン(テーブル)*

:

call samooha_by_snowflake_local_db.consumer.view_added_template_chains($cleanroom_name);
Copy

consumer.view_template_chain_definition

説明: テンプレートチェーンの属性を返します。

入力: cleanroom_name (string), template_chain_name (string)

出力: テンプレートチェーンの定義 (string)

:

call samooha_by_snowflake_local_db.consumer.view_template_chain_definition($cleanroom_name, 'insights_chain');
Copy

consumer.get_arguments_from_template_chain

説明: テンプレートチェーン内の全てのテンプレートに対して期待される引数を返します。

入力: cleanroom_name (string), template__chain_name (string)

出力: 引数リストと仕様(テーブル)

:

call samooha_by_snowflake_local_db.consumer.get_arguments_from_template_chain($cleanroom_name, 'insights_chain');
Copy

分析とアクティベーションの実行

以下のコマンドは、指定されたテンプレートに基づいて特定の分析またはアクティベーションを実行します。

consumer.run_analysis

説明: テンプレートまたはテンプレートチェーンを使用して分析を実行します。コンシューマーテーブルとプロバイダーテーブルは別々に指定する必要があります。テンプレートは、特定の分析用に構成されたロジックを実行し、結合されたデータをテーブルとして返します。唯一のオプションの入力は「エプシロン」つまりクエリがどれだけの異なるプライバシー予算を消費する必要があるかです。指定がない場合のデフォルトは0.1です。

入力: cleanroom_name (string), {template_name | template_chain_name} (string), consumer_tables (array), provider_tables (array), analysis_arguments (object)

出力: テンプレート計算出力(テーブル)

:

call samooha_by_snowflake_local_db.consumer.run_analysis(
  $cleanroom_name, -- cleanroom
  'prod_overlap_analysis', -- template name

  ['SAMOOHA_SAMPLE_DATABASE.MYDATA.CONVERSIONS'],  -- Consumer tables
  ['SAMOOHA_SAMPLE_DATABASE.DEMO.EXPOSURES'],     -- Provider tables

  object_construct(                 -- Rest of the custom arguments needed for the template
    'dimensions', ['p.CAMPAIGN'],   -- always use p. to refer to fields in provider tables, and c. to refer to fields in consumer tables. Use p2, p3, etc. for more than one provider table and c2, c3, etc. for more than one consumer table.
    'measure_column', ['p.EXP_COST'],
    'measure_type', ['COUNT'],
    'where_clause', 'p.EMAIL=c.EMAIL'
  )
);
Copy

consumer.run_activation

説明: アクティベーションのために結果をプロバイダーにプッシュバックするテンプレートを実行します。

結果をプロバイダーに戻すアクティブ化の詳細については、[開発者 APIs を使用して結果をプロバイダーにアクティブ化する](./developer-provider-activation.rst)をご参照ください。

入力: cleanroom_name (string), segment_name (string), template_name (string), consumer_tables (array), provider_tables (array), activation_arguments (object)

出力: 成功メッセージ

:

call samooha_by_snowflake_local_db.consumer.run_activation(
  $cleanroom_name,
  'my_activation_segment',
  'activation_custom_template',
  ['consumer_source_table'], 
  ['provider_source_table'],
  object_construct(                 -- Custom arguments needed for the template
    'dimensions', ['p.CAMPAIGN'],   -- always use p. to refer to fields in provider tables, and c. to refer to fields in consumer tables. Use p2, p3, etc. for more than one provider table and c2, c3, etc. for more than one consumer table.
    'where_clause', 'p.EMAIL=c.EMAIL'
  ));
Copy

コンシューマー定義のテンプレート

以下の APIs を使用すると、クリーンルームにコンシューマー定義のテンプレートを追加することができます。詳細については、[開発者 API を使用してコンシューマー定義のテンプレートを追加する](developer-consumer-templates.rst)をご参照ください。

consumer.create_template_request

説明: クリーンルームのプロバイダーにリクエストを送信し、クリーンルームに追加できるようにカスタムテンプレートの承認を求めます。

入力: cleanroom_name (string), template_name (string), template_definition (string)

出力: 成功メッセージ(文字列)

:

  CALL samooha_by_snowflake_local_db.consumer.create_template_request('dcr_cleanroom', 
  'my_analysis', 
  $$
  SELECT 
      identifier({{ dimensions[0] | column_policy }}) 
  FROM 
      identifier({{ my_table[0] }}) c 
    INNER JOIN
      identifier({{ source_table[0] }}) p 
        ON   
          c.identifier({{ consumer_id  }}) = identifier({{ provider_id | join_policy }}) 
        {% if where_clause %} where {{ where_clause | sqlsafe | join_and_column_policy }} {% endif %};
  $$);
Copy

consumer.list_template_requests

説明: コンシューマーがクリーンルームにテンプレートを追加するために行った要求をリストします。

入力: cleanroom_name(文字列)

出力: request_id(string), provider_identifier(string), template_name(string), template_definition(string), request_status(string), reason(string)

:

CALL samooha_by_snowflake_local_db.consumer.list_template_requests('dcr_cleanroom');
Copy

クリーンルームのメタデータゲッターメソッド

以下の方法は、クリーンルームの関連特性を示しています。

consumer.describe_cleanroom

説明: テンプレート、データセット、ポリシーなど、クリーンルームに追加されたすべての情報を含むテキストサマリーを作成します。

入力: cleanroom_name(文字列)

出力: クリーンルームの広範な説明文字列(テーブル)

:

call samooha_by_snowflake_local_db.consumer.describe_cleanroom($cleanroom_name);
Copy

consumer.view_provider_datasets

説明: プロバイダーによってクリーンルームに追加されたすべてのデータセットを表示します。

入力: cleanroom_name(文字列)

出力: クリーンルーム内の全てのプロバイダーデータセット名(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_provider_datasets($cleanroom_name);
Copy

consumer.view_join_policy

説明: コンシューマーデータセットでコンシューマーが設定する、クリーンルーム内でユーザーが安全に参加できる列の概要を示します。

入力: cleanroom_name(文字列)

出力: 結合ポリシー(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_join_policy($cleanroom_name);
Copy

consumer.view_provider_join_policy

説明: プロバイダーがプロバイダーのデータセットに設定した、ユーザーがクリーンルーム内で安全に参加できる列の概要を示します。

入力: cleanroom_name(文字列)

出力: 結合ポリシー(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_provider_join_policy($cleanroom_name);
Copy

consumer.view_added_templates

説明: クリーンルーム内のすべてのアクティブなテンプレートを表示します。

入力: cleanroom_name(文字列)

出力: 追加されたテンプレート(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_added_templates($cleanroom_name);
Copy

consumer.view_column_policy

説明: コンシューマーによってクリーンルームに適用されたすべての列ポリシーを表示します。

入力: cleanroom_name(文字列)

出力: 列ポリシー(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_column_policy($cleanroom_name);
Copy

consumer.view_provider_column_policy

説明: プロバイダーによってクリーンルームに適用されたすべての列ポリシーを表示します。

入力: cleanroom_name(文字列)

出力: 列ポリシー(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_provider_column_policy($cleanroom_name);
Copy

consumer.view_cleanrooms

説明: 説明最近作成されたクリーンルームを作成日順に表示します。

入力:

出力: 既存の全クリーンルームを作成日順に並べたもの(テーブル)

:

call samooha_by_snowflake_local_db.consumer.view_cleanrooms();
Copy

consumer.is_dp_enabled

説明: クリーンルームで差分プライバシーが有効になっているかどうかを確認します。

入力: cleanroom_name(文字列)

出力: クリーンルームが DP を有効にしているかどうか(ブール値)

:

call samooha_by_snowflake_local_db.consumer.is_dp_enabled($cleanroom_name);
Copy

consumer.view_remaining_privacy_budget

説明: クリーンルームからのクエリに使用できるプライバシー予算の残りを表示します。一度使い果たしたrun_analysisは、予算がリセットされるまで、それ以上呼び出すことはできません。予算は毎日リセットされます。

差分プライバシーが有効でない場合、プライバシー予算は任意の高いレベル (例えば10000) に設定され、枯渇することはありません。

入力: cleanroom_name(文字列)

出力: 残りのプライバシー予算(浮動小数点数)

:

call samooha_by_snowflake_local_db.consumer.view_remaining_privacy_budget($cleanroom_name);
Copy

一般的なヘルパーメソッド

クリーンルームの機能とサポートされるフローを活用するために、一般的に以下の方法を使用します。

library.enable_local_db_auto_upgrades

説明: タスク、 samooha_by_snowflake_local_db.admin.expected_version_task を有効にします。このタスクは、新しいバージョンがリリースされると、Snowflake Data Clean Rooms用のSnowflake Native Appを自動的にアップグレードします。

入力:* なし*

出力: 成功メッセージ(文字列)

:

CALL samooha_by_snowflake_local_db.library.enable_local_db_auto_upgrades();
Copy

library.disable_local_db_auto_upgrades

説明: タスク、 samooha_by_snowflake_local_db.admin.expected_version_task を無効にします。このタスクは、新しいバージョンがリリースされると、Snowflake Data Clean Rooms用のSnowflake Native Appを自動的にアップグレードします。

入力:* なし*

出力: 成功メッセージ(文字列)

:

CALL samooha_by_snowflake_local_db.library.disable_local_db_auto_upgrades();
Copy