このページでは、受信者が Unity Catalog が有効な Databricks ワークスペースに属している場合に、Delta Sharing で受信者を作成する方法を説明します。 既存の受信者の IP リストで表示、更新、削除、共有アクセスの許可、プロパティの管理、アクセスの制限を行う場合は、「 差分共有のデータ受信者を管理する」を参照してください。
受信者は、共有データを使用するユーザーまたはユーザー のグループの ID を表す名前付きオブジェクトです。 受信者を作成する方法は、受信者が Unity カタログに対して有効になっている Databricks ワークスペースにアクセスできるかどうかによって異なります。
Unity カタログ対応 Databricks ワークスペースにアクセスできる受信者:
Databricks によって管理されるセキュリティで保護された接続を使用して、受信者オブジェクトを作成できます。 この共有モードは Databricks から Databricks への共有と呼ばれ、このページに記載されています。
Unity カタログ対応 Databricks ワークスペースにアクセスしない受信者:
トークン ベースの認証 (ベアラー トークンまたは OAuth フェデレーション) を使用して管理するセキュリティで保護された接続で 、オープン共有を使用する必要があります。 オープン共有レシピエントの作成については、「Delta Sharing レシピエントの Open ID Connect (OIDC) フェデレーションを有効にする」および「ベアラー トークンを使用して Databricks 以外のユーザー用のレシピエント オブジェクトを作成する(オープン共有)」を参照してください。
これら 2 つの共有モードの詳細と、どちらをいつ選択するかについては、「オープン共有と Databricks 間共有」を参照してください。
必要条件
受信者を作成するには、次の要件を満たす必要があります。
- 共有するデータが登録されている Unity カタログ メタストアの
CREATE RECIPIENT権限が必要です。 - その Unity Catalog メタストアがアタッチされている Azure Databricks ワークスペースを使用して受信者を作成する必要があります。
- Databricks ノートブックを使用して受信者を作成する場合、コンピューティングでは Databricks Runtime 11.3 LTS 以降と、標準アクセス モードまたは専用アクセス モード (以前の共有およびシングル ユーザー アクセス モード) を使用する必要があります。
他の受信者の操作 (表示、更新、削除、共有アクセス権の付与、プロパティの管理) に必要なアクセス許可については、「 差分共有のデータ受信者を管理する」を参照してください。
Databricks にアクセスできるユーザーのために受信者オブジェクトを作成する (Databricks から Databricks への共有)
データ受信者が、Unity Catalog で有効になっている Databricks ワークスペースにアクセスできる場合は、認証の種類 DATABRICKS を使用して受信者オブジェクトを作成できます。
認証の種類が DATABRICKS の受信者オブジェクトは、特定の Unity カタログ メタストア上のデータ受信者を表します。これは、メタストアのクラウド、リージョン、UUID で構成される 共有識別子 文字列によって受信者オブジェクト定義で識別されます。 この受信者と共有されるデータは、そのメタストアでのみアクセスできます。
手順 1: 受信者の共有識別子を要求する
受信者ユーザーまたはユーザー グループが共有データを操作するワークスペースにアタッチされている Unity Catalog メタストアの共有識別子を送信するように受信者ユーザーに依頼します。
共有識別子は、メタストアのクラウド、リージョン、UUID (メタストアの一意識別子) で構成される文字列であり、 <cloud>:<region>:<uuid>形式です。
たとえば、次のスクリーンショットで、完全な共有識別子文字列は aws:us-west-2:19a84bee-54bc-43a2-87de-023d0ec16016 です。
受信者は、カタログ エクスプローラー、Databricks Unity カタログ CLI、または使用するワークスペース内の Unity カタログ対応コンピューティングで実行される Databricks ノートブックまたは Databricks SQL クエリで CURRENT_METASTORE 既定の SQL 関数を使用して識別子を検索できます。
カタログ エクスプローラー
カタログ エクスプローラーを使用して共有識別子を取得するには、次の手順を行います。
Azure Databricks ワークスペースで、[
カタログ。
[カタログ] ウィンドウの上部にある
歯車アイコンをクリックして、[Delta Sharing] を選択します。
または、右上隅の > をクリックします。
[自分と共有] タブで、右上にある Databricks 共有組織名をクリックし、[共有識別子のコピー] を選択します。
SQL
ノートブックまたは Databricks SQL クエリ エディターで次のコマンドを実行します。
SELECT CURRENT_METASTORE();
CLI
Databricks CLI を使用して次のコマンドを実行します。 共有識別子は、global_metastore_id として返されます。
databricks metastores summary
この手順に含まれる情報を受信者に送信するか、 Databricks-to-Databricks モデルで [アクセス権の取得] を指定できます。
手順 2: 受信者を作成する
Databricks 間共有の受信者を作成するには、カタログ エクスプローラーまたは Databricks Unity Catalog CLI を使用するか、Azure Databricks ノートブックまたは Databricks SQL クエリ エディターで CREATE RECIPIENT SQL コマンドを使用できます。
必要なアクセス許可: メタストア管理者、または共有するデータが登録されている Unity Catalog メタストアに対して CREATE RECIPIENT 特権を持つユーザー。
カタログ エクスプローラー
Azure Databricks ワークスペースで、[
カタログ。
[カタログ] ウィンドウの上部にある
歯車アイコンをクリックして、[Delta Sharing] を選択します。
または、右上隅の > をクリックします。
[自分と共有] タブで、[新しい受信者] をクリックします。
受信者名を入力します。
[受信者の種類] で、[Databricks] を選択します。
受信者の 共有識別子を入力します。
<cloud>:<region>:<uuid>形式の共有識別子文字列全体を使用します。 たとえば、「aws:us-west-2:19a84bee-54bc-43a2-87de-023d0ec16016」のように入力します。(省略可能) コメントを入力します。
Create をクリックしてください。
(省略可能) カスタムの受信者のプロパティを作成します。
受信者の「概要」タブで、「受信者のプロパティ」の横にある「編集」アイコンをクリックします。 次に、プロパティ名 (キー) と値を追加します。 詳細については、「受信者のプロパティを管理する」を参照してください。
SQL
ノートブックまたは Databricks SQL クエリ エディターで次のコマンドを実行します。
CREATE RECIPIENT [IF NOT EXISTS] <recipient-name>
USING ID '<sharing-identifier>'
[COMMENT "<comment>"];
<cloud>:<region>:<uuid> 形式の共有識別子文字列全体を使用します。 たとえば、「 aws:eu-west-1:g0c979c8-3e68-4cdf-94af-d05c120ed1ef 」のように入力します。
受信者のカスタム プロパティを追加することもできます。 詳細については、「受信者のプロパティを管理する」を参照してください。
CLI
Databricks CLI を使用して次のコマンドを実行します。 プレースホルダー値を次のように置き換えます。
-
<recipient-name>: 受信者の名前。 -
<sharing-identifier>:<cloud>:<region>:<uuid>形式の共有識別子文字列全体。 たとえば、「aws:eu-west-1:g0c979c8-3e68-4cdf-94af-d05c120ed1ef」のように入力します。 -
<authentication-type>:DATABRICKSの形式の共有識別子文字列を<cloud>:<region>:<uuid>に対して指定するときは、<sharing-identifier>に設定します。
databricks recipients create <recipient-name> <authentication-type> --sharing-code <sharing-identifier>
受信者のカスタム プロパティを追加することもできます。 詳細については、「受信者のプロパティを管理する」を参照してください。
authentication_typeのDATABRICKSを使用して受信者が作成されます。
次のステップ
- Delta Sharing データ共有へのアクセスを管理する(プロバイダー向け) — 受信者に 1 つ以上の共有へのアクセス権を付与します。
- Delta Sharing のデータ受信者を管理 — 既存の受信者のプロパティの表示や更新、削除、プロパティの管理、アクセス制限を行えます。
- Delta Sharing 用の共有を作成 — 受信者にアクセスを許可する共有を作成します。