データの登録

このトピックでは、 Snowflake Data Clean Room にリンクできるようにデータを登録する方法について説明します。

サポートされているオブジェクト

クリーンルームにリンクできるオブジェクトの種類は、ウェブアプリで作成するか、開発者 APIs を使用するかによって異なります。これらのタイプの特定のオブジェクトは、リンクする前に登録する必要があります。

ウェブアプリ:

Snowflake Data Clean Rooms のウェブアプリは以下のオブジェクトをサポートしています。

  • テーブル

  • 外部テーブル

  • Apache Iceberg™ テーブル

  • ビュー

  • マテリアライズドビュー

  • セキュアビュー。さらに、セキュアビューの所有者は SAMOOHA_APP_ROLE ロールでなければなりません。

開発者API:

Snowflake Data Clean Roomは Snowflake Native App Frameworkに依存しているため、Snowflake Native App Frameworkでサポートされている任意のオブジェクトをリンクできます。

注釈

外部テーブルとIcebergテーブルのクリーンルーム内での連結は明示的に許可されなければなりません。詳細については、 Snowflake Data Clean Rooms: 外部テーブルとIcebergテーブル をご参照ください。

データオブジェクトの登録

ユーザーがデータを Snowflake Data Clean Room にリンクする前に、データはデータベース、スキーマ、またはオブジェクトレベルで登録されなければなりません。データベースまたはスキーマを登録すると、そのデータベースまたはスキーマ内のすべてのオブジェクトが登録されます。

データベース、スキーマ、オブジェクトの登録には、 Snowsight または 開発者 APIs を使用します。 Snowsight を使う方が簡単ですが、 ACCOUNTADMIN ロールが必要です。開発者 APIs では、オブジェクトの所有者はアカウント管理者でなくても登録できます。

データベース、スキーマ、またはオブジェクトを登録すると、 SAMOOHA_APP_ROLE ロールにアクセスできるようになります。これは、開発者が開発者 APIs を実行するときに使用するロールです。

注釈

データベースやスキーマを登録しても、登録 に追加されたオブジェクトは自動的に登録されません。新しいオブジェクトを個別に登録するか、ウェブアプリの Snowflake Admin オプションを使って Database Registration セクションに戻り、 Resync を選択する必要があります。

Snowsight へのデータの登録

Snowsight にデータベース、スキーマ、オブジェクトを登録するには、次のようにします。

  1. ウェブアプリにサインインします

  2. Admin » Snowflake Admin を選択します。

  3. Login to Snowflake を選択し、 ACCOUNTADMIN ロールを持つユーザーとして認証します。

  4. Database Registration セクションで、 Edit を選択し、データベース、スキーマ、またはオブジェクトを選択します。

  5. Save を選択します。

開発者 APIs を使用したデータの登録

開発者 APIs は、アカウント管理者はデータベース、スキーマ、オブジェクトをプログラムで登録できるようにします。データベース、スキーマ、オブジェクトの所有者が登録できます。

以下の APIs が利用可能です。

タスク

API

入力

データベースの登録

  • provider.register_db (プロバイダー向け)

  • consumer.register_db (コンシューマー向け)

データベース名(string)

スキーマの登録

library.register_schema

スキーマ名(文字列の配列)

管理アクセススキーマの登録

library.register_managed_access_schema

管理アクセススキーマ名(文字列の配列)

任意のタイプのオブジェクトの登録

library.register_table_or_view

  • オブジェクト名(文字列の配列)

  • is_view(boolean)

  • is_iceberg(boolean)

  • is_external(boolean)

  • is_under_managed_access_schema(boolean)

テーブルの登録

library.register_table

テーブル名(文字列の配列)

ビューの登録

library.register_view

ビュー名(文字列の配列)

管理アクセススキーマへのテーブルの登録

library.register_managed_access_table

テーブル名(文字列の配列)

管理アクセススキーマへのビューの登録

library.register_managed_access_view

ビュー名(文字列の配列)

例えば、スキーマ MY_SCHEMA の所有者は、ワークシートで以下のコマンドを実行することにより、そのスキーマを登録することができます。

CALL samooha_by_snowflake_local_db.library.register_schema(['MY_DB.MY_SCHEMA']);
Copy

開発者 APIs を使用したデータの登録解除

以下の APIs を使用して、データベース、スキーマ、オブジェクトの登録解除を行うことができます。

タスク

API

入力

データベースの登録解除

library.unregister_db

データベース名(string)

スキーマの登録解除

library.unregister_schema

スキーマ名(文字列の配列)

管理アクセススキーマの登録解除

library.unregister_managed_access_schema

管理アクセススキーマ名(文字列の配列)

あらゆるタイプのオブジェクトの登録解除

library.unregister_table_or_view

  • オブジェクト名(文字列の配列)

  • is_view(boolean)

  • is_iceberg(boolean)

  • is_external(boolean)

  • is_under_managed_access_schema(boolean)

テーブルの登録解除

library.unregister_table

テーブル名(文字列の配列)

ビューの登録解除

library.unregister_view

ビュー名(文字列の配列)

管理アクセススキーマのテーブルの登録解除

library.unregister_managed_access_table

テーブル名(文字列の配列)

管理アクセススキーマのビューの登録解除

library.unregister_managed_access_view

ビュー名(文字列の配列)