アカウントの Delta Sharing を設定する (プロバイダーの場合)
このアーティクルでは、データ プロバイダー (Delta Sharing を使用してデータを安全に共有する組織) が、Azure Databricks で Delta Sharing の初期セットアップを実行する方法について説明します。
Note
データ受信者 (Delta Sharing を使用して共有されているデータを受信する組織) の場合は、代わりに「Databricks 間 Delta Sharing を使用して共有されたデータを読み取る (受信者の場合)」を参照してください。
重要
Azure Databricks に組み込まれている Delta Sharing サーバーを使用するプロバイダーには、Unity Catalog に対して有効になっているワークスペースが少なくとも 1 つ必要です。 ワークスペースをすべて Unity Catalog に移行する必要はありません。 共有管理用の Unity カタログ対応ワークスペースを 1 つ作成できます。 一部のアカウントでは、新しいワークスペースで Unity Catalog が自動的に有効になります。 「Unity Catalog の自動有効化」を参照してください。
Unity Catalog が有効な新しいワークスペースを作成できない場合は、オープンソースの Delta Sharing プロジェクトを使って独自の Delta Sharing サーバーを配置し、それを使用して任意のプラットフォームから Delta テーブルを共有できます。
プロバイダーの初期セットアップの手順は、次のとおりです。
- Unity Catalog メタストアのDelta Sharing を有効にします。
- (省略可能) Unity Catalog CLI のインストール。
- Delta Sharing アクティビティの監査を構成します。
必要条件
Azure Databricks アカウントを設定してデータを共有できるようにするデータ プロバイダーは、以下を所有している必要があります。
Unity Catalog が有効になっている少なくとも 1 つの Azure Databricks ワークスペース。
Delta Sharing プロバイダーに対する Databricks のサポートを利用するために、すべてのワークスペースを Unity Catalog に移行する必要はありません。 「Delta Sharing を使用するには Unity Catalog が必要ですか?」を参照してください。
受信者は、Unity Catalog 対応のワークスペースを持っている必要はありません。
Unity Catalog メタストアの Delta Sharing を有効にし、監査ログを有効にするためのアカウント管理者ロール。
メタストア管理者ロール、または
CREATE SHARE
とCREATE RECIPIENT
の特権。 「管理者ロール」を参照してください。Note
ワークスペースで Unity Catalog が自動的に有効になっている場合は、メタストア管理者がいない可能性があります。ただし、このようなワークスペースのワークスペース管理者は、既定でメタストアに対する
CREATE SHARE
とCREATE RECIPIENT
の特権を持っています。 詳しくは、「Unity Catalog の自動有効化」と「ワークスペースで Unity Catalog が自動的に有効になる場合のワークスペース管理特権」を参照してください。
メタストアでの Delta Sharing 有効化
Delta Sharing を使用して共有する予定の データを管理する Unity Catalog メタストアごとに、次のステップに従います。
注意
Delta Sharing を使用してアカウント内の他の Unity Catalog メタストアのユーザーとデータを共有する場合にのみ、メタストアで Delta Sharing を有効にする必要はありません。 1 つの Azure Databricks アカウント内でのメタストア間の共有は、既定では有効になっています。
Azure Databricks アカウント管理者として、アカウント コンソールにログインします。
サイド バーで、 [カタログ] をクリックします。
メタストアの名前をクリックして、その詳細を開きます。
[Enable Delta Sharing and allow a Databricks user to share data outside their organization] (Delta Sharing を有効にし、Databricks のユーザーが組織の外部のデータを共有できるようにする) の横にあるチェックボックスをクリックします。
受信者トークンの有効期間を構成します。
この構成は、すべての受信者トークンが失効し、再生成が必要となるまでの期間をセットします。 受信者トークンは、オープン共有プロトコルでのみ使用されます。 Databricks では、トークンを無期限に存続させるのではなく、既定のトークン有効期間を構成することをお勧めします。
注意
メタストアの受信者トークンの既定の有効期間を変更しても、既存の受信者の受信者トークンの有効期間は、自動的に更新されません。 特定の受信者に新しいトークンの有効期間を適用するには、トークンをローテーションする必要があります。 受信者トークンを管理する (オープン共有)を参照してください。
既定の受信者トークンの有効期間をセットするには、次の手順を実行します:
[有効期限のセット] が有効になっていることを確認します (これがデフォルトです)。
このチェック ボックスをクリアにすると、トークンの有効期限は切れません。 Databricks では、トークンの有効期限を構成することをお勧めしています。
秒、分、時間、または日の数を入力し、計算単位を選択します。
[有効化]をクリックします。
詳しくは、トークンに関するセキュリティ上の考慮事項をご覧ください。
必要に応じて、受信者が、共有しているユーザーを識別するために使用できる、組織の名前を入力します。
[有効化]をクリックします。
(省略可能) Unity Catalog CLI をインストールする
共有と受信者を管理するには、Catalog Explorer、SQL コマンド、または Unity Catalog CLI を使用します。 CLI はローカル環境で実行され、Azure Databricks のコンピューティング リソースは必要ありません。
CLI をインストールするには、「Databricks CLI とは」を参照してください。
監査ログを有効にする
Azure Databricks アカウント管理者は、監査ログを有効にして、次のような Delta Sharing イベントをキャプチャする必要があります:
- 他のユーザーが共有または受信者を作成、変更、更新、または削除した場合
- 受信者がアクティブ化リンクにアクセスし、資格情報をダウンロードする場合 (オープン共有のみ)
- 受信者がデータにアクセスする場合
- 受信者の資格情報がローテーションされたかまたは期限切れになった場合 (オープン共有のみ)
Delta Sharing のアクティビティは、アカウント レベルでログに記録されます。
監査ログを有効にするには、「診断ログ リファレンス」の手順に従います。
重要
Delta Sharing のアクティビティは、アカウント レベルでログに記録されます。 ログデリバリーを構成するときは、workspace_ids_filter
の値を入力しないでください。
Delta Sharing イベントのログ記録方法の詳細については、「データの共有の監査と監視」を参照してください。
共有と受信者を作成および管理するためのアクセス許可を付与する
メタストア管理者は、受信者への共有の付与を含む、共有と受信者を作成および管理する権限を持っています。 多くのプロバイダー タスクは、次の特権を使用してメタストア管理者によって委任できます。
Note
ワークスペースで Unity Catalog が自動的に有効になっている場合は、メタストア管理者がいない可能性があります。ただし、このようなワークスペースのワークスペース管理者は、既定でメタストアに対する CREATE SHARE
と CREATE RECIPIENT
の特権を持っています。 詳しくは、「Unity Catalog の自動有効化」と「ワークスペースで Unity Catalog が自動的に有効になる場合のワークスペース管理特権」を参照してください。
CREATE SHARE
: メタストアでは、共有を作成する機能が付与されます。CREATE RECIPIENT
: メタストアでは、受信者を作成する機能が付与されます。USE RECIPIENT
: メタストア内のすべての受信者の詳細を一覧表示および表示する機能が付与されます。USE SHARE
: メタストアでは、メタストア内のすべての共有の詳細を一覧表示および表示する機能が付与されます。USE RECIPIENT
、USE SHARE,
、SET SHARE PERMISSION
を組み合わせることで、ユーザーは共有アクセス権を受信者に付与できます。USE SHARE
とSET SHARE PERMISSION
を組み合わせることで、ユーザーは任意の共有の所有権を譲渡できます。- 共有と受信者の所有者は、これらのオブジェクトを更新し、共有を受信者に付与できます。 オブジェクト作成者には既定で所有権が付与されますが、所有権は譲渡できます。
- 共有所有者は、テーブルに対する
SELECT
アクセス、ボリュームに対するREAD VOLUME
アクセスができる限り、テーブルとボリュームを共有に追加できます。
詳細については、「Unity Catalog の権限とセキュリティ保護可能なオブジェクト」および「Delta Sharing ガイド」で説明されているすべてのタスクについて記載されているアクセス許可を参照してください。