Snowflakeデータクリーンルーム:コンシューマーAPIリファレンスガイド¶
以下のコンテンツは、Snowflakeデータクリーンルームがコンシューマー向けに提供するすべての開発者APIsの詳細です。すべての関数は以下のスキーマの中にあります。
samooha_by_snowflake_local_db.consumer
環境設定¶
開発者APIsを使用してSnowflake Data Clean Roomで作業する前に、以下のコマンドを実行してSnowflake環境をセットアップします。SAMOOHA_APP_ROLEのロールをお持ちでない場合は、アカウント管理者にお問い合わせください。
use role samooha_app_role;
use warehouse app_wh;
プロバイダーが共有したクリーンルームの名前を割り当てます。
set cleanroom_name = 'Test Cleanroom 1';
クリーンルームをインストールする¶
プロバイダーが共有するクリーンルームを以下のコマンドでインストールします。
consumer.install_cleanroom¶
説明:関連プロバイダーと選択されたクリーンルームを使って、クリーンルームをコンシューマーアカウントにインストールします。
入力: cleanroom_name(文字列)、 provider_account_locator(文字列)
出力: 成功メッセージ(文字列)
例:
call samooha_by_snowflake_local_db.consumer.install_cleanroom($cleanroom_name, '<PROVIDER_ACCOUNT_LOCATOR>');
consumer.is_enabled¶
説明: クリーンルームのインストールが完了すると、プロバイダー側で設定が完了し、使用可能になるまで約1分かかります。この関数により、ユーザーはクリーンルームのステータスを確認し、有効かどうかを確認することができます。クリーンルームのインストール後、通常1分程度でフラグが「真」に切り替わります。
入力: cleanroom_name(文字列)
出力: 有効化(ブール値)
例:
call samooha_by_snowflake_local_db.consumer.is_enabled($cleanroom_name);
consumer.uninstall_cleanroom¶
説明:コンシューマーアカウントのクリーンルームをアンインストールします。これにより、共有クリーンルームデータベースを含む、クリーンルームに関連するすべてのデータベースが削除されます。クリーンルームは consumer.install_cleanroom で随時再インストールできることに注意してください。
入力: cleanroom_name(文字列)
出力: 成功メッセージ(文字列)
例:
call samooha_by_snowflake_local_db.consumer.uninstall_cleanroom($cleanroom_name);
プロバイダー実行分析を設定する¶
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)
library.is_consumer_run_enabled¶
説明: このクリーンルームでコンシューマー実行分析が有効になっているかどうかをチェックします。このフラグは、クリーンルームの利用者(インストール担当者)が分析を実行できるかどうか、またはコラボレーションへのデータ提供者として機能するかどうかを決定します。
入力: cleanroom_name(文字列)
出力: 有効メッセージ(文字列)
例:
call samooha_by_snowflake_local_db.library.is_consumer_run_enabled($cleanroom_name)
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);
データの登録および登録解除¶
以下のコマンドを使用して、データベース、スキーマ、オブジェクトの登録および登録解除を行います。テーブルとビューは、クリーンルームにリンクする前に登録する必要があります。データベースまたはスキーマを登録すると、そのデータベースまたはスキーマ内のすべてのオブジェクトが登録されます。
consumer.register_db¶
説明: クリーンルームにデータベースを追加することで、データベースから任意のデータセットをリンクすることができます。これが呼び出されない場合、samooha_app_roleに個別に付与する必要があります。
入力: db_name(文字列)
出力: 成功メッセージ(文字列)
例:
call samooha_by_snowflake_local_db.consumer.register_db('SAMOOHA_SAMPLE_DATABASE');
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']);
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']);
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);
Icebergテーブルを登録するには:
call samooha_by_snowflake_local_db.library.register_table_or_view(
['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS'],
false,
true,
false,
false);
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']);
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']);
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']);
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']);
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');
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']);
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']);
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);
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']);
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']);
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']);
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']);
データセットを追加する¶
consumer.link_datasets¶
説明: ユーザーは、Snowflakeテーブルをクリーンルームにリンクし、クリーンルーム内からテーブルの安全な表示を作成して共有できます。
入力: cleanroom_name(文字列)、tables_list(配列)
出力: 成功メッセージ(文字列)
例:
call samooha_by_snowflake_local_db.consumer.link_datasets($cleanroom_name, ['SAMOOHA_SAMPLE_DATABASE.DEMO.CUSTOMERS']);
プロバイダー実行分析のセキュリティポリシーの設定¶
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']);
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']);
テンプレート¶
以下のコマンドにより、ユーザーは、クリーンルームで利用可能な分析テンプレートを実行できます。
consumer.view_template_definition¶
説明:クリーンルームテンプレートの定義は、テンプレートに渡す必要のあるパラメータを決定するのに役立ちます。
注釈
Samoohaプロシージャは全て暗号化されており、デフォルトでは閲覧できません。ただし、追加したカスタムテンプレートはすべて表示されます。
入力: cleanroom_name(文字列)、template_name(文字列)
出力: テンプレート定義(文字列)
例:
call samooha_by_snowflake_local_db.consumer.view_template_definition($cleanroom_name, 'prod_overlap_analysis');
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');
テンプレートチェーン¶
以下のコマンドにより、ユーザーは、クリーンルームで利用可能なテンプレートチェーンで作業することができます。テンプレートチェーンの使用に関する一般的な情報は、「開発者 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);
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');
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');
分析とアクティベーションの実行¶
以下のコマンドは、指定されたテンプレートに基づいて特定の分析またはアクティベーションを実行します。
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'
)
);
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'
));
コンシューマー定義のテンプレート¶
以下の 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 %};
$$);
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');
クリーンルームのメタデータゲッターメソッド¶
以下の方法は、クリーンルームの関連特性を示しています。
consumer.describe_cleanroom¶
説明: テンプレート、データセット、ポリシーなど、クリーンルームに追加されたすべての情報を含むテキストサマリーを作成します。
入力: cleanroom_name(文字列)
出力: クリーンルームの広範な説明文字列(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.describe_cleanroom($cleanroom_name);
consumer.view_provider_datasets¶
説明: プロバイダーによってクリーンルームに追加されたすべてのデータセットを表示します。
入力: cleanroom_name(文字列)
出力: クリーンルーム内の全てのプロバイダーデータセット名(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_provider_datasets($cleanroom_name);
consumer.view_join_policy¶
説明: コンシューマーデータセットでコンシューマーが設定する、クリーンルーム内でユーザーが安全に参加できる列の概要を示します。
入力: cleanroom_name(文字列)
出力: 結合ポリシー(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_join_policy($cleanroom_name);
consumer.view_provider_join_policy¶
説明: プロバイダーがプロバイダーのデータセットに設定した、ユーザーがクリーンルーム内で安全に参加できる列の概要を示します。
入力: cleanroom_name(文字列)
出力: 結合ポリシー(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_provider_join_policy($cleanroom_name);
consumer.view_added_templates¶
説明: クリーンルーム内のすべてのアクティブなテンプレートを表示します。
入力: cleanroom_name(文字列)
出力: 追加されたテンプレート(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_added_templates($cleanroom_name);
consumer.view_column_policy¶
説明: コンシューマーによってクリーンルームに適用されたすべての列ポリシーを表示します。
入力: cleanroom_name(文字列)
出力: 列ポリシー(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_column_policy($cleanroom_name);
consumer.view_provider_column_policy¶
説明: プロバイダーによってクリーンルームに適用されたすべての列ポリシーを表示します。
入力: cleanroom_name(文字列)
出力: 列ポリシー(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_provider_column_policy($cleanroom_name);
consumer.view_cleanrooms¶
説明: 説明最近作成されたクリーンルームを作成日順に表示します。
入力:
出力: 既存の全クリーンルームを作成日順に並べたもの(テーブル)
例:
call samooha_by_snowflake_local_db.consumer.view_cleanrooms();
consumer.is_dp_enabled¶
説明: クリーンルームで差分プライバシーが有効になっているかどうかを確認します。
入力: cleanroom_name(文字列)
出力: クリーンルームが DP を有効にしているかどうか(ブール値)
例:
call samooha_by_snowflake_local_db.consumer.is_dp_enabled($cleanroom_name);
consumer.view_remaining_privacy_budget¶
説明: クリーンルームからのクエリに使用できるプライバシー予算の残りを表示します。一度使い果たしたrun_analysisは、予算がリセットされるまで、それ以上呼び出すことはできません。予算は毎日リセットされます。
差分プライバシーが有効でない場合、プライバシー予算は任意の高いレベル (例えば10000) に設定され、枯渇することはありません。
入力: cleanroom_name(文字列)
出力: 残りのプライバシー予算(浮動小数点数)
例:
call samooha_by_snowflake_local_db.consumer.view_remaining_privacy_budget($cleanroom_name);
一般的なヘルパーメソッド¶
クリーンルームの機能とサポートされるフローを活用するために、一般的に以下の方法を使用します。
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();
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();