Delta Sharingプロバイダーを管理する(データ受信者向け)

この記事では、Unity Catalog を使用して、Delta Sharing を使用してデータを共有しているデータ プロバイダーに関する情報を取得する方法について説明します。 また、プロバイダー オブジェクトとは何か、Unity Catalog メタストアにプロバイダー オブジェクトを作成する必要がある状況についても説明します。これは、ほとんどの受信者が行う必要のないタスクです。

重要

この記事で説明されている機能を使用するには、データ受信者はUnity Catalogが有効になっている Databricks ワークスペースにアクセスできる必要があります。 この記事は、Unity Catalog 対応のワークスペースを持たない受信者には適用されません。

受信者はプロバイダー オブジェクトを作成する必要がありますか?

Databricks の Delta Sharing では、「プロバイダー」という用語は、データを共有している組織と、その組織を表す受信者の Unity Catalog メタストア内のセキュリティ保護可能なオブジェクトの両方を意味します。 受信者の Unity Catalog メタストアにセキュリティ保護可能なオブジェクトが存在すると、受信者はUnity Catalog を使用してチームの共有データへのアクセスを管理できるようになります。

Unity Catalogメタストアにアクセスできる受信者は、通常、プロバイダー オブジェクトを作成する必要はありません。 これは、 Databricks-to-Databricks共有を使用してデータを共有する必要があり、プロバイダー オブジェクトがUnity Catalogメタストアに自動的に作成されるためです。

注:

Unity Catalog 対応の Databricks ワークスペースから共有されていないプロバイダーからデータを受信している、Unity Catalog 上のまれな受信者である場合は、Unity Catalog を使用してその共有データを管理できるように、Unity Catalog にプロバイダー オブジェクトを作成することをお勧めします。 そのカテゴリに当てはまる場合は、POST /api/2.1/unity-catalog/providers を使用できます REST API 呼び出しまたはDatabricks CLI を使用して、Unity Catalog プロバイダー オブジェクトを作成します。 メタストア管理者であるか、メタストアの CREATE_PROVIDER 権限を持つユーザーである必要があります。

始める前に

Databricks ワークスペースでプロバイダーを管理するには:

  • ワークスペースで Unity Catalog が有効になっている必要があります。

  • プロバイダーを表示するには、メタストア管理者であるか、メタストア管理者から USE PROVIDER 特権が付与されている必要があります。

  • プロバイダーを作成するには、メタストア管理者であるか、メタストア管理者から CREATE PROVIDER 特権が付与されている必要があります。

  • プロバイダーを更新するには、プロバイダー オブジェクトの所有者であり、 CREATE PROVIDER 特権を持っている必要があります。 詳細については、「 プロバイダーの更新 (名前の変更、所有者の変更、コメント)」を参照してください。

このため、ワークスペースがメタストア管理者なしで作成された場合、Databricks でプロバイダー オブジェクトを操作する前に、Databricks アカウント管理者がユーザーまたはグループにメタストア管理者ロールを付与する必要があります。 「Unity Catalog の自動有効化」および「(オプション) メタストア管理者ロールの割り当て」を参照してください。

プロバイダーの表示

使用可能なデータ プロバイダーの一覧を表示するには、カタログ エクスプローラー、Databricks Unity Catalog CLI、または Databricks ノートブックまたは Databricks SQL クエリ エディターのSHOW PROVIDERS SQL コマンドを使用できます。

必要なアクセス許可: メタストア管理者であるか、メタストア内のすべてのプロバイダーを表示するための USE PROVIDER 特権を持っている必要があります。 他のユーザーは、自分が所有するプロバイダーにのみアクセスできます。

  1. Databricks ワークスペースで、カタログアイコンカタログをクリックします。

  2. カタログパネルの上部にある歯車アイコン歯車アイコンをクリックし、 Delta Sharingを選択します。

    または、クイック アクセスページでDelta Sharing >]ボタンをクリックします。

  3. [共有アイテム]タブで、利用可能なすべてのプロバイダーを表示します。

ノートブックまたは Databricks SQL クエリー エディターで次のコマンドを実行します。 必要に応じて、 <pattern> 'LIKE' 述語に置き換えます。

SHOW PROVIDERS [LIKE <pattern>];

Databricks CLIを使用して次のコマンドを実行します。

databricks providers list

プロバイダーの詳細を表示する

プロバイダーの詳細を表示するには、カタログ エクスプローラー、Databricks Unity Catalog CLI、または Databricks ノートブックまたは Databricks SQL クエリ エディターのDESCRIBE PROVIDER SQL コマンドを使用できます。

必要なアクセス許可: メタストア管理者、 USE PROVIDER 権限を持つユーザー、またはプロバイダー オブジェクトの所有者。

詳細は次のとおりです。

  • プロバイダーが共有している共有 ( プロバイダーが自分と共有している共有を表示するを参照)。

  • プロバイダーの作成者、作成タイムスタンプ、コメント、および認証タイプ (TOKEN または DATABRICKS)。 TOKEN 、Delta Sharing オープン共有プロトコルを使用してデータを共有したプロバイダーを表します。 DATABRICKS はDatabricks-to-Databricks共有プロトコルを使用してデータを共有したプロバイダーを表します。

  • プロバイダーがDatabricks-to-Databricks共有を使用する場合: プロバイダーのUnity Catalogメタストアのクラウド、リージョン、およびメタストア ID。

  • プロバイダーがオープン共有を使用している場合: Delta Sharing 共有サーバーがホストされている受信者プロファイル エンドポイント。

  1. Databricks ワークスペースで、カタログアイコンカタログをクリックします。

  2. カタログパネルの上部にある歯車アイコン歯車アイコンをクリックし、 Delta Sharingを選択します。

    または、クイック アクセスページでDelta Sharing >]ボタンをクリックします。

  3. [共有アイテム]タブで、プロバイダーを見つけて選択します。

ノートブックまたはDatabricks SQLクエリーエディタで次のコマンドを実行します。

DESC PROVIDER <provider-name>;

Databricks CLIを使用して次のコマンドを実行します。

databricks providers get <provider-name>

プロバイダーが自分と共有している共有を表示する

プロバイダーが共有している共有を表示するには、カタログ エクスプローラー、Databricks Unity Catalog CLI、または Databricks ノートブックまたは Databricks SQL クエリー エディターの SHOW SHARES IN PROVIDER SQL コマンドを使用できます。

必要なアクセス許可: メタストア管理者、 USE PROVIDER 権限を持つユーザー、またはプロバイダー オブジェクトの所有者。

  1. Databricks ワークスペースで、カタログアイコンカタログをクリックします。

  2. カタログパネルの上部にある歯車アイコン歯車アイコンをクリックし、 Delta Sharingを選択します。

    または、クイック アクセスページでDelta Sharing >]ボタンをクリックします。

  3. [共有アイテム]タブで、プロバイダーを見つけて選択します。

ノートブックまたは Databricks SQL クエリー エディターで次のコマンドを実行します。 必要に応じて、 <pattern> 'LIKE' 述語に置き換えます。

SHOW SHARES IN PROVIDER [LIKE <pattern>];

Databricks CLIを使用して次のコマンドを実行します。

 databricks providers list-shares <provider-name>

プロバイダーの更新 (名前の変更、所有者の変更、コメント)

カタログ エクスプローラー、Databricks Unity Catalog CLI、または Databricks ノートブックまたは Databricks SQL クエリー エディターの ALTER PROVIDER SQL コマンドを使用して、Unity Catalog メタストア内のプロバイダー オブジェクトを変更できます。

  • プロバイダーの名前を変更して、ユーザーが Databricks インターフェイスでプロバイダー オブジェクトを表示する方法を変更します。

  • プロバイダ オブジェクトの所有者を変更します。

  • コメントを追加または変更します。

必要な権限: 所有者を更新するには、プロバイダー オブジェクトの所有者である必要があります。 プロバイダー名を更新するには、メタストア管理者 (または CREATE_PROVIDER 特権を持つユーザー) および プロバイダー所有者である必要があります。 コメントを更新するには、所有者である必要があります。 初期所有者はメタストア管理者です。

  1. Databricks ワークスペースで、カタログアイコンカタログをクリックします。

  2. カタログパネルの上部にある歯車アイコン歯車アイコンをクリックし、 Delta Sharingを選択します。

    または、クイック アクセスページでDelta Sharing >]ボタンをクリックします。

  3. [共有アイテム]タブで、プロバイダーを見つけて選択します。

  4. 詳細ページで、所有者、コメント、またはプロバイダー名を更新します。

    プロバイダーの名前を変更するには、 ケバブメニュー ケバブメニューをクリックし、「 名前の変更」を選択します。

ノートブックまたはDatabricks SQLクエリーエディタで次のコマンドを実行します。

ALTER PROVIDER <provider-name> RENAME TO <new-provider-name>
OWNER TO <new-owner>
COMMENT "<comment>";

Databricks CLIを使用して次のコマンドを実行します。 <provider-name> を現在のプロバイダー名に、<new-provider-name> を新しい名前に置き換えます。

databricks providers update <provider-name> /
--new-name <new-provider-name> /
--comment "<new comment>" /
--owner <new-owner-name>

プロバイダーを削除する

プロバイダーを削除するには、カタログ エクスプローラー、Databricks Unity Catalog CLI、または Databricks ノートブックまたは Databricks SQL クエリ エディターのDROP PROVIDER SQL コマンドを使用できます。 プロバイダーを削除するには、プロバイダー オブジェクトの所有者である必要があります。

プロバイダーを削除すると、自分と組織内のユーザー (受信者) は、プロバイダーが共有するデータにアクセスできなくなります。

必要な権限: プロバイダー オブジェクトの所有者。

  1. Databricks ワークスペースで、カタログアイコンカタログをクリックします。

  2. カタログパネルの上部にある歯車アイコン歯車アイコンをクリックし、 Delta Sharingを選択します。

    または、クイック アクセスページでDelta Sharing >]ボタンをクリックします。

  3. [共有アイテム]タブで、プロバイダーを見つけて選択します。

  4. ケバブメニューケバブメニューをクリックし、[削除]を選択します。

  5. 確認ダイアログで、[ 削除] をクリックします。

ノートブックまたはDatabricks SQLクエリーエディタで次のコマンドを実行します。

DROP PROVIDER [IF EXISTS] <provider-name>;

Databricks CLIを使用して次のコマンドを実行します。

databricks providers delete <provider-name>

操作が成功した場合、結果は返されません。