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 間共有を使用してデータを共有する必要があり、プロバイダー オブジェクトが 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 間共有プロトコルを使用してデータを共有したプロバイダーを表します。

  • プロバイダーが DatabricksDatabricks 共有を使用する場合: プロバイダーの 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>

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