Delta Sharing の Databricks 間プロトコルを使用してデータを共有する (プロバイダーの場合)
この記事では、Databricks 間 Delta Sharing を使用して、アカウントやクラウド ホストに関係なく、Databricks ユーザーが Unity Catalog で有効になっているワークスペースにアクセスできる限り、そのユーザーと安全にデータを共有する方法の概要について説明します。
Note
データ受信者 (Databricks データが共有されているユーザーまたはユーザーのグループ) である場合は、「Delta Sharing を使用した共有データへのアクセス (受信者の場合)」を参照してください。
Databricks 間 Delta Sharing の対象ユーザー
Delta Sharing を使用してデータを共有するには、3 つの方法があります。
この記事で説明する Databricks 間共有プロトコル を使用すると、Unity Catalog 対応のワークスペースからのデータを、Unity Catalog 対応の Databricks ワークスペースへのアクセス権を同様に持っているユーザーと共有できます。
このアプローチでは、Azure Databricks に組み込まれている Delta Sharing サーバーを使用し、プロバイダーと受信者の両方に対してノートブック共有、Unity Catalog データ ガバナンス、監査、使用状況の追跡のサポートを提供します。 Unity Catalog と統合すると、プロバイダーと受信者の両方のセットアップとガバナンスが簡素化され、パフォーマンスが向上します。
Databricks オープン共有プロトコルを使用すると、Unity Catalog 対応の Databricks ワークスペースで管理するデータを、任意のコンピューティング プラットフォーム上のユーザーと共有できます。
「Delta Sharing オープン共有プロトコルを使用してデータを共有する (プロバイダーの場合)」を参照してください。
オープンソースの Delta Sharing サーバーのカスタマー マネージド実装。これを使用して、Databricks かどうかを問わず、任意のプラットフォームから任意のプラットフォームに共有できます。
github.com/delta-io/delta-sharing を参照してください。
Delta Sharing の概要と、これら 3 つのアプローチの詳細については、「Delta Sharing とは」を参照してください。
Databricks 間 Delta Sharing のワークフロー
このセクションでは、Databricks 間共有ワークフローの大まかな概要を説明し、各手順の詳細なドキュメントへのリンクを示します。
Databricks 間 Delta Sharing モデルでは、次のようになります。
データ "受信者" が、データ "プロバイダー" に、Databricks ワークスペースに接続されている Databricks Unity Catalog メタストアの一意の "共有識別子" を付与します。受信者 (ユーザーまたはユーザーのグループを表します) はこれを使用して、データ プロバイダーが共有しているデータにアクセスします。
詳細については、「手順 1: 受信者の共有識別子を要求する」を参照してください。
データ プロバイダーは、プロバイダーの Unity Catalog メタストアに "共有" を作成します。 この名前付きオブジェクトには、メタストアに登録されたテーブル、ビュー、ボリューム、ノートブックのコレクションが含まれています。
詳細については、「Delta Sharing の共有を作成および管理する」を参照してください。
データ プロバイダーは、プロバイダーの Unity Catalog メタストアに受信者オブジェクトを作成します。 この名前付きオブジェクトは、ユーザーまたはユーザーのグループが共有にアクセスするために使用するワークスペースに接続されている Unity Catalog メタストアの共有識別子と共に、共有に含まれるデータにアクセスするユーザーまたはユーザーのグループを表します。 共有識別子は、セキュリティで保護された接続を有効にするキー識別子です。
詳細については、「手順 2: 受信者を作成する」を参照してください。
データ プロバイダーは、受信者に共有へのアクセス権を付与します。
詳細については、Delta Sharing データ共有へのアクセスの管理 (プロバイダーの場合) に関する記事を参照してください。
共有が受信者の Databricks ワークスペースで使用できるようになり、ユーザーが Catalog Explorer、Databricks CLI、または Azure Databricks ノートブックや Databricks SQL クエリ エディターの SQL コマンドを使用してそれにアクセスできます。
共有内のテーブルやビュー、ボリューム、ノートブックへアクセスするには、メタストア管理者または特権ユーザーが共有からカタログを作成する必要があります。 その後、そのユーザーまたは適切な特権を付与された別のユーザーは、カタログとカタログ内のオブジェクトへのアクセス権を他のユーザーに付与できます。 共有カタログとデータ資産に対するアクセス許可の付与は、Unity Catalog に登録された他の資産に対する場合と同様に機能します。重要な違いは、Delta Sharing 共有から作成されたカタログ内のオブジェクトに対する読み取りアクセス権のみをユーザーに付与できることです。
共有ノートブックはカタログ レベルに存在しているため、カタログに対する
USE CATALOG
特権を持つすべてのユーザーがアクセスできます。詳細については、「Databricks 間 Delta Sharing を使用して共有されたデータを読み取る (受信者の場合)」を参照してください。