次の方法で共有


Delta Sharing とは

このページでは、Azure Databricks を使用しているかどうかに関係なく、組織外のユーザーとデータとAI資産を共有できる、Azure Databricks の安全なデータ共有プラットフォーム、「Delta Sharing」について紹介します。 デルタ共有は、データ製品を交換するためのオープン フォーラムである Databricks Marketplace と、セキュリティで保護されたプライバシー保護環境である Clean Rooms の基礎でもあります。この環境では、複数の関係者が機密性の高いエンタープライズ データに対して共同作業を行うことができます。

デルタ シェアリングは、他のプラットフォームから Delta テーブルを共有する際に使用できるオープンソースプロジェクトとしても利用できます。

Delta Sharing のしくみ

Delta Sharing は、使用するコンピューティング プラットフォームに関係なく、他の組織とのセキュリティで保護されたデータ共有のために Databricks によって開発された オープン プロトコル です。

Delta Sharing を使用してデータを共有するには、次の 3 つの方法があります。

  1. Databricks から Databricks への共有プロトコル。Unity カタログ対応ワークスペースのデータと AI 資産を、Unity カタログ対応 Databricks ワークスペースにもアクセスできるユーザーと共有できます。

    このアプローチでは、Azure Databricks に組み込まれている Delta Sharing サーバーを使用します。 ノートブック共有、Unity カタログ ボリューム共有、Unity カタログ AI モデル共有、Unity カタログ データ ガバナンス、監査、およびプロバイダーと受信者の両方の使用状況追跡など、他のプロトコルでサポートされていない一部の差分共有機能がサポートされています。 Unity Catalog との統合により、プロバイダーと受信者の両方のセットアップとガバナンスが簡素化され、パフォーマンスが向上します。

    「Delta Sharing Databricks-to-Databricks プロトコルを使用してデータを共有する (プロバイダー向け)」を参照してください。

  2. Databricks オープン共有プロトコルを使用すると、Unity カタログ対応 Databricks ワークスペースで管理する表形式データを、任意のコンピューティング プラットフォーム上のユーザーと共有できます。

    この方法では、Azure Databricks に組み込まれている Delta Sharing サーバーを使用します。これは、Unity カタログを使用してデータを管理しており、Databricks を使用していないユーザーや、Unity カタログが有効な Databricks ワークスペースにアクセスできないユーザーとデータを共有する場合に便利です。 プロバイダー側の Unity Catalog との統合により、プロバイダーのセットアップとガバナンスが簡素化されます。

    デルタ共有オープン共有プロトコル (プロバイダー用)を使用してデータを共有する を参照してください。

  3. オープンソースの Delta Sharing サーバーのカスタマー マネージド実装。Databricks かどうかにかかわらず、任意のプラットフォームから任意のプラットフォームに共有できます。

    Azure Databricks のドキュメントでは、独自の Delta Sharing サーバーを設定する手順については説明していません。 github.com/delta-io/delta-sharing を参照してください。

Delta Sharing データ アクセス アーキテクチャ。

共有、プロバイダー、受信者

Azure Databricks の Delta Sharing の基礎となる主な概念は、共有プロバイダー受信者です。

共有とは

デルタシェアリングでは、シェアは、プロバイダーが一人以上の受信者に共有するためのテーブルおよびテーブルパーティションの読み取り専用コレクションです。 受信者が Unity カタログ対応 Databricks ワークスペースを使用している場合は、ノートブック ファイル、ビュー (行および列レベルでのアクセスを制限する動的ビューを含む)、Unity カタログ ボリューム、および Unity カタログ モデルを共有に含めることもできます。

テーブル、ストリーミング テーブル、管理された Iceberg テーブル、ビュー、具体化されたビュー、ボリューム、モデル、ノートブック ファイルは、いつでも共有に対して追加または削除でき、データ受信者のアクセス権はいつでも共有に割り当てたり取り消したりできます。

Unity カタログ対応の Azure Databricks ワークスペースでは、共有は Unity カタログに登録されているセキュリティ保護可能なオブジェクトです。 Unity カタログメタストアから共有を削除すると、その共有のすべての受信者はアクセスできなくなります。

Delta Sharingの共有を作成および管理する方法を参照してください。

プロバイダーとは

プロバイダーは、受信者とデータを共有するエンティティです。 プロバイダーであり、組み込みの Databricks Delta Sharing サーバーを利用し、Unity カタログを使用して共有と受信者を管理する場合は、Unity カタログに対して有効になっている Azure Databricks ワークスペースが少なくとも 1 つ必要です。 既存のすべてのワークスペースを Unity カタログに移行する必要はありません。 Delta Sharing のニーズに合わせて、新しい Unity Catalog 対応のワークスペースを作成するだけで済みます。

受信者が Unity カタログ対応 Databricks ワークスペースに存在する場合、プロバイダーは、プロバイダー組織を表し、その組織を共有のセットに関連付ける Unity カタログセキュリティ保護可能なオブジェクトでもあります。

受信者とは

受信者は、プロバイダーから共有を受け取るエンティティです。 Unity カタログでは、共有は、組織を表し、その組織が 1 つ以上の共有にアクセスできるようにする資格情報またはセキュリティで保護された共有識別子に関連付けるセキュリティ保護可能なオブジェクトです。

データ プロバイダー (sharer) として、特定の Unity カタログ メタストアに対して複数の受信者を定義できますが、複数のメタストアのデータを特定のユーザーまたはユーザー グループと共有する場合は、メタストアごとに受信者を個別に定義する必要があります。 受信者は複数の共有にアクセスできます。

プロバイダーが Unity カタログメタストアから受信者を削除した場合、その受信者は以前にアクセスできたすべての共有へのアクセスを失います。

Delta Sharing (Databricks から Databricks への共有) のデータ受信者の作成および管理についての情報を参照してください。

オープン共有と Databricks 間共有の対比

このセクションでは、Unity カタログで有効になっている Databricks ワークスペースから共有するための 2 つのプロトコルについて説明します。

注釈

このセクションでは、プロバイダーが Unity カタログ対応の Azure Databricks ワークスペース上にあることを前提としています。 Databricks 以外のプラットフォームまたは Unity 以外のカタログ ワークスペースから共有するようにオープンソースの Delta 共有サーバーを設定する方法については、 github.com/delta-io/delta-sharing を参照してください。

プロバイダーによる Azure Databricks での Delta Sharing の使用方法は、データを共有する相手によって異なります。

  • オープン共有 を使用すると、Azure Databricks にアクセスできるかどうかに関係なく、任意のユーザーとデータを共有できます。
  • Databricks から Databricks への共有 を使用すると、ワークスペースが自分とは異なる Unity カタログ メタストアにアタッチされている Azure Databricks ユーザーとデータを共有できます。 Databricks-to-Databricks の場合、ノートブック、ボリューム、モデルの共有もサポートされています。これはオープン共有では利用できません。

オープン Delta Sharing とは

Databricks を使用しているかどうかに関係なく、Azure Databricks ワークスペースの外部のユーザーとデータを共有する場合は、オープン Delta Sharing を使用してデータを安全に共有できます。 データ プロバイダーは、次のいずれかの方法を使用して共有受信者との認証を管理します。

  • 有効期間の長いベアラー トークンを生成し、受信者と安全に共有します。 トークンを使用して認証を行い、あなたがアクセス権を与えた共有に含まれるテーブルに対して読み取りアクセス権を取得します。
  • Open ID Connect (OIDC) フェデレーションを使用し、受信者の IdP が Databricks に渡す JWT トークンと引き換えに、有効期間の短い Databricks OAuth トークンを受信者に付与します。

受信者は、次のような多くのコンピューティング ツールとプラットフォームを使用して共有データにアクセスできます。

  • Azure Databricks
  • Apache Spark
  • Pandas
  • Power BI

Delta Sharing コネクタの完全な一覧と、その使用方法に関する情報については、 Delta Sharing のドキュメントを参照してください。

Delta Sharingオープン共有プロトコルを使用してデータを共有する(プロバイダー向け)も参照してください。

Databricks 間 Delta Sharing とは?

Unity カタログが有効になっている Databricks ワークスペースを持つユーザーとデータを共有する場合は、Databricks-to-Databricks Delta Sharing を使用できます。 Databricks から Databricks への共有を使用すると、他の Databricks アカウントのユーザー (AWS、Azure、GCP) のユーザーとデータを共有できます。 また、独自の Databricks アカウント内の異なる Unity カタログ メタストア間でデータを安全に共有する優れた方法でもあります。 同じ Unity カタログ メタストアにアタッチされているワークスペース間でデータを共有するために差分共有を使用する必要はありません。そのシナリオでは、Unity カタログ自体を使用してワークスペース間のデータへのアクセスを管理できるためです。

Databricks から Databricks への共有の利点の 1 つは、共有受信者が共有にアクセスするためのトークンを必要とせず、プロバイダーが受信者トークンを管理する必要がないという点です。 共有接続のセキュリティ (すべての ID 検証、認証、監査を含む) は、Delta Sharing と Databricks プラットフォームによって完全に管理されます。 もう 1 つの利点は、Databricks ノートブック ファイル、Unity カタログ ボリューム、Unity カタログ モデルを共有できることです。

「Delta Sharing Databricks-to-Databricks プロトコルを使用してデータを共有する (プロバイダー向け)」も参照してください。

プロバイダー管理者はどのようにDelta Sharingを設定しますか?

このセクションでは、Unity カタログ対応の Azure Databricks ワークスペースから Delta Sharing を有効にする方法と、共有を開始する方法の概要を説明します。 オープンソースのDelta Sharingについては、「github.com/delta-io/delta-sharing」を参照してください。

同一アカウント内の Unity Catalog メタストア間における Databricks 同士の共有は、常に有効化されています。 プロバイダーが Delta Sharing で他のアカウントまたは Databricks 以外のクライアントの Databricks ワークスペースとデータを共有できるようにしたい場合、Azure Databricks アカウント管理者またはメタストア管理者が次のセットアップ手順 (概要) を実行します。

  1. Unity Catalog メタストアで管理する共有データに対して Delta Sharing を有効にします。

    注釈

    Delta Sharing を使用してご利用のアカウント内にある他の Unity カタログ メタストアのユーザーとのみデータを共有する場合、メタストアで Delta Sharing を有効にする必要はありません。 1 つの Azure Databricks アカウント内でのメタストア間の共有は、既定では有効になっています。

    メタストアでの Delta Sharing 有効化」を参照してください。

  2. Unity カタログ メタストアに登録されているデータ資産を含む共有を作成します。

    Databricks 以外の受信者 (オープン共有と呼ばれます) と共有する場合は、Delta 形式または Parquet 形式のテーブルを含めることができます。 Databricks から Databricks への共有を使用する場合は、ビュー、Unity カタログ ボリューム、Unity カタログ モデル、ノートブック ファイルを共有に追加することもできます。

    Delta Sharingの共有を作成および管理する方法を参照してください。

  3. 受信者を作成します。

    Delta Sharing (Databricks から Databricks への共有) のデータ受信者の作成および管理についての情報を参照してください。

    受信者が Databricks ユーザーではない場合、または Unity カタログが有効になっている Databricks ワークスペースにアクセスできない場合は、開いている共有使用する必要があります。 その受信者のベアラー トークン ベースの資格情報を生成するか、OIDC フェデレーションを使用できます。

    受信者が Unity カタログで有効になっている Databricks ワークスペースにアクセスできる場合は、 Databricks から Databricks への共有を使用できます。トークンベースの資格情報は必要ありません。 受信者に 共有識別子を要求し、それを使用してセキュリティで保護された接続を確立します。

    ヒント

    自分自身をテスト受信者として使用して、セットアップ プロセスを試します。

  4. 受信者に 1 つ以上の共有へのアクセス権を付与します。

    Delta Sharing データシェアへのアクセスを管理する (プロバイダー向け) を参照してください。

    注釈

    この手順は、USE SHAREUSE RECIPIENTSET SHARE PERMISSION の特権を持つ管理者以外のユーザーが実行することもできます。 Unity カタログの権限とセキュリティ保護可能なオブジェクトを参照してください。

  5. 共有に接続するために必要な情報を受信者に送信します (オープン共有のみ)。

    ベアラー トークンを使用して共有を開くには、セキュリティで保護されたチャネルを使用して、トークンベースの資格情報をダウンロードできるアクティブ化リンクを受信者に送信します。 「 受信者の接続情報を送信する」を参照してください。

    OIDC トークン フェデレーションを使用して共有を開くには、生成されたポータル URL を送信します。 Open ID Connect (OIDC) フェデレーションを使用してDelta Sharing (オープン共有) の認証を有効にするを参照してください。

    Databricks から Databricks への共有の場合、共有に含まれるデータは、共有へのアクセスを許可するとすぐに、受信者の Databricks ワークスペースで使用できるようになります。

受信者が共有データにアクセスできるようになりました。

受信者が共有データにアクセスする方法

受信者は、読み取り専用形式で共有データ資産にアクセスします。 共有ノートブック ファイルは読み取り専用ですが、他のノートブックと同様に、複製してから受信者ワークスペースで変更して実行できます。

セキュリティで保護されたアクセスは、共有モデルによって異なります。

データ プロバイダーが独自の Databricks アカウントのデータ テーブルまたはボリュームを更新するたびに、更新プログラムは受信者のシステムにほぼリアルタイムで表示されます。 差分共有を使用して共有されたデータにアクセスする方法については、「差分共有を 使用して共有されたデータにアクセスする (受信者向け)」を参照してください。

共有データを共有し、アクセスしているユーザーを追跡する方法

Unity カタログ対応の Azure Databricks ワークスペース上のデータ プロバイダーは、Azure Databricks 監査ログとシステム テーブルを使用して、共有と受信者の作成と変更を監視し、共有の受信者アクティビティを監視できます。 データ共有の監査と監視を参照してください。

Databricks ワークスペースで共有データを使用するデータ受信者は、Databricks 監査ログとシステム テーブルを使用して、どのデータにアクセスしているユーザーを把握できます。 データ共有の監査と監視を参照してください。

ボリュームの共有

Databricks 間共有フローを使用して、ボリュームを共有できます。 「 共有にボリュームを追加する (プロバイダーの場合)」と「 Databricks-to-Databricks Delta Sharing (受信者の場合) を使用して共有されたデータを読み取る」 を参照してください (受信者の場合)。

モデルの共有

Databricks 間共有フローを使用して、モデルを共有できます。 「 共有にモデルを追加する (プロバイダーの場合)」および 「Databricks-to-Databricks Delta Sharing (受信者用) を使用して共有されたデータを読み取る(受信者の場合) 」を参照してください。

ノートブックの共有

Delta Sharing を使用すると、Databricks 間の共有フローを使用してノートブック ファイルを共有できます。 「 ノートブック ファイルを共有に追加する (プロバイダーの場合)」と「 共有ノートブックの読み取り (受信者向け)」を参照してください。

行レベルと列レベルでのアクセスの制限

受信者のプロパティに基づいて特定のテーブル データへのアクセスを制限する動的ビューを共有できます。 ダイナミック ビュー共有には、Databricks 間の共有フローが必要です。 「動的ビューを共有に追加して行と列をフィルター処理する」を参照してください。

Delta Sharing とストリーミング

Delta Sharing は Apache Spark 構造化ストリーミングをサポートしています。 プロバイダーは、履歴またはストリーミング テーブルを持つテーブルを共有して、受信者が構造化ストリーミング ソースとして使用し、共有データを低待機時間で増分処理できるようにします。 受信者は、履歴と共有されているテーブルに対して Delta Lake タイム トラベル クエリ を実行することもできます。

履歴とテーブルを共有する方法については、「 共有にテーブルを追加する」を参照してください。 共有テーブルをストリーミング ソースとして使用する方法については、Apache Spark Structured Streaming を使用してテーブルをクエリ (Databricks-to-Databricks 共有の受信者の場合) または Spark Structured Streaming を使用して共有テーブルにアクセス (オープン共有データの受信者の場合) を参照してください。

ストリーミング テーブルを共有する方法については、「ストリーミング テーブルを 共有に追加する」を参照してください。

構造化ストリーミングの概念も参照してください。

Delta Lake 機能のサポート マトリックス

Delta Sharingでは、テーブルを共有する際に、ほとんどのDelta Lake機能がサポートされます。 このサポートマトリックスに含まれるものは次の通りです。

  • 特定のバージョンの Databricks Runtime、オープンソースの Delta Sharing Spark コネクタ、または Delta Sharing Python コネクタを必要とする Delta の機能。
  • 部分的にサポートされている機能。
機能 プロバイダー Databricks の受信者 オープン ソースの受信者
削除ベクトル
  • この機能を使用したテーブルの共有は、パブリック プレビュー段階です。
  • テーブルは履歴と共有する必要があります。
  • バッチ クエリ用の Databricks Runtime 14.1 以降
  • CDF およびストリーミング クエリ用の Databricks Runtime 14.2 以降
  • Delta Sharing Spark コネクタ 3.1 以降
  • Delta Sharing Python コネクタ 1.1.0 以降
  • Power BI v2.132.908.0 以降
列マッピング
  • この機能を使用したテーブルの共有は、パブリック プレビュー段階です。
  • テーブルは履歴と共有する必要があります。
  • バッチ クエリ用の Databricks Runtime 14.1 以降
  • CDF およびストリーミング クエリ用の Databricks Runtime 14.2 以降
  • Delta Sharing Spark コネクタ 3.1 以降
  • Delta Sharing Python コネクタ 1.1.0 以降
  • Power BI v2.132.908.0 以降
統一された形式
  • この機能を使用したテーブルの共有は、パブリック プレビュー段階です。
  • テーブルは履歴と共有する必要があります。
  • バッチ クエリ用の Databricks Runtime 14.1 以降
  • CDF およびストリーミング クエリ用の Databricks Runtime 14.2 以降
  • Delta Sharing Spark コネクタ 3.1 以降
  • Delta Sharing Python コネクタ 1.1.0 以降
  • Power BI v2.132.908.0 以降
V2 チェックポイント 制限付きでサポート 制限付きでサポート 制限付きでサポート
タイムスタンプNTZ サポートされています Databricks Runtime 14.1 以降 Delta Sharing Spark コネクタ 3.3 以降
リキッド クラスタリング 制限付きでサポート 制限付きでサポート 制限付きでサポート

Delta Sharing に関する FAQ

Delta Sharing に関してよく寄せられる質問は、次のとおりです。

Delta Sharing を使用するには Unity Catalog が必要ですか?

いいえ。Unity カタログを (プロバイダーとして) 共有したり、共有データを (受信者として) 使用したりする必要はありません。 ただし、Unity Catalog には、表形式以外の AI 資産共有のサポート、すぐに使用可能なガバナンス、シンプルさがあり、クエリパフォーマンスなどの利点があります。

プロバイダーは、次の 2 つの方法でデータを共有できます。

  • Unity Catalog の管理の下で共有するアセットを配置し、組み込みの Azure Databricks Delta 共有サーバーを使用して共有します。

    すべてのアセットを Unity カタログに移行する必要はありません。 共有する資産を管理するために Unity Catalog に対して有効になっている Azure Databricks ワークスペースは 1 つだけ必要です。 一部のアカウントでは、Unity カタログに対して新しいワークスペースが自動的に有効になります。 Unity カタログの自動有効化を参照してください。

  • Azure Databricks アカウントを必ずしも使用せずに、 開いている Delta Sharing サーバー を実装してデータを共有します。

受信者は、次の 2 つの方法でデータを使用できます。

「ベアラー トークンを使用したオープン共有によってDelta Sharingで共有されたデータを読み取る」(受信者の場合)を参照してください。「Databricks-to-Databricks Delta Sharingで共有されたデータの読み取り」(受信者の場合)を参照してください。

Delta Sharing を使用するには、Databricks の顧客である必要がありますか?

いいえ。Delta Sharing はオープン プロトコルです。 Databricks 以外のデータは、任意のデータ プラットフォーム上の受信者と共有できます。 プロバイダーは、任意のコンピューティング プラットフォームから共有するように、開いている Delta Sharing サーバーを構成できます。 受信者は、Power BI、pandas、オープンソース Spark など、多くのデータ製品に対応するオープンソースの Delta Sharing コネクタを使用して共有データを利用できます。

ただし、Azure Databricks で Delta Sharing を使用すること、特に Unity カタログ対応ワークスペースからの共有には、多くの利点があります。

詳細については、この FAQ の最初の質問を参照してください。

Delta Sharingの費用を発生させて確認するにはどうすればよいですか?

Delta Sharingのコストは、ビュー、具体化ビュー、ストリーミングテーブルを共有してアクセスする際に発生します。 共有には、次の 2 つの潜在的なコストソースがあります。

  • Azure Databricks によって課金されるコンピューティング コスト。
  • ストレージ ベンダーによって課金されるストレージとネットワーク転送 (エグレス) のコスト。

コンピューティングの実行方法とコンピューティング料金の支払い方法は、次のいくつかの要因によって異なります。

  • 受信者のコンピュートの種類
  • 共有が同じ Azure Databricks アカウント内で行われるか、複数のアカウント間で行われるか

次の表では、Delta Sharingを使用してビューを共有およびアクセスする際の請求方法について説明します。

受信者コンピューティング アカウント関係 誰が支払うか 課金に使用される SKU アクセス方法
Databricks Serverless [任意] 受取人 受信者のサーバーレス 受信者が基になるデータへの直接アクセスを受け取る
Databricks クラシック 同じアカウント 受取人 受信者のクラシック 受信者が基になるデータへの直接アクセスを受け取る
Databricks クラシック 別のアカウント 受取人 プロバイダーのインタラクティブ サーバーレス プロバイダーがフィルター処理を実行する
デルタ共有コネクタを開く [任意] プロバイダー プロバイダーのインタラクティブ サーバーレス プロバイダーがフィルター処理を実行する

請求帰属は、Billable usage システムテーブル参照および Delta Sharing materialization history システム テーブル参照を使用してクエリすることもできます。 受信者がコストの帰属先である場合、その関連付けられたレコードは受信者のみがシステム テーブルで参照できます。 クエリの例については、「 サンプル クエリ」を参照してください。

Delta Sharing にはエグレス コストが発生しますか?

リージョン内の Delta Sharing では、エグレス コストは発生しません。 他のデータ共有プラットフォームとは異なり、Delta Sharing にデータ レプリケーションは必要ありません。 このモデルには多くの利点がありますが、クラウドまたはリージョン間でデータを共有する場合、クラウド ベンダーからデータ エグレス料金が請求される可能性があることを意味します。 Azure Databricks では、エグレス料金が発生しない Cloudflare R2 からの共有がサポートされ、エグレス料金の監視と回避のためにその他のツールと推奨事項が提供されます。 Delta Sharing エグレスコストの監視と管理(プロバイダーの場合)に関するページを参照してください。

受信者は、共有ビュー、具体化されたビュー、ストリーミング テーブルの基になるデータに直接アクセスできますか?

データ受信者は、共有ビュー、具体化されたビュー、ストリーミング テーブルが同じ Azure Databricks アカウントにある場合、または別のアカウントのサーバーレス コンピューティングを使用している場合にのみ直接アクセスできます。 それ以外の場合、データは具体化され、プロバイダー側でフィルター処理されます。 データの具体化は、共有データ資産の親ストレージ場所に格納されます。

具体化された資産を共有する場合、コンピューティングは必要なフィルターを適用し、プロバイダーのストレージにキャッシュされた一時的な具体化を作成することによって要求を処理します。 このフィルター処理されたデータは、署名済みの有効期間の短い URL を使用して受信者に配信され、プロバイダー間のアクセス制御を維持しながら安全なアクセスを確保します。

具体化されたデータ アクセス アーキテクチャ。

プロバイダーは受信者のアクセスを取り消すことができますか?

はい。受信者のアクセスは、必要に応じて指定されたレベルの細分性で取り消すことができます。 特定の共有と特定の IP アドレスへの受信者アクセスを拒否したり、受信者の表形式データをフィルター処理したり、受信者トークンを取り消したり、受信者を完全に削除したりすることができます。 「共有への受信者アクセスの取り消し」および「デルタ共有 (Databricks から Databricks への共有) のデータ受信者の作成と管理」を参照してください。

署名付き URL を使用するのは安全ではありませんか?

Delta Sharing では、署名付き URL を使用して、オブジェクト ストレージ内のファイルへの一時的なアクセスを提供します。 共有データに既にアクセスできる受信者にのみ付与されます。 これらは有効期間が短く、受信者が既に許可されているレベルを超えてアクセスレベルを拡大しないため、セキュリティで保護されています。

Delta Sharing オープン共有プロトコルで使用されるトークンは安全ですか?

他の使用可能なデータ共有プラットフォームとは異なり、Delta Sharing ではクロスプラットフォーム共有が可能であるため、共有プロトコルにはオープン トークンが必要です。 プロバイダーは、トークンの有効期間を構成し、ネットワーク制御を設定し、必要に応じてアクセスを取り消すことで、トークンのセキュリティを確保できます。 さらに、トークンによって、受信者が既に付与されているレベルを超えるアクセス レベルは拡張されません。 トークンのセキュリティに関する考慮事項を参照してください。

トークンを使用して受信者共有へのアクセスを管理しない場合は、databricks-to-Databricks 共有 使用するか、Databricks アカウント チームに連絡して代替手段を求める必要があります。

Lakeflow Connect と Delta Sharing の違いは何ですか?

Delta Sharing を使用すると、プラットフォーム、クラウド、リージョン間でライブ データをセキュリティで保護された方法で共有できます。 Databricks では、マネージド コネクタを使用してインジェストすることをお勧めします。これは、高いデータ 量、待機時間の短いクエリ、サードパーティの API の制限に対応するためにスケーリングされるためです。 ただし、データを移動せずにクエリを実行する必要があります。

マネージド コネクタと差分共有のどちらかを選択する場合は、次のシナリオで差分共有を選択します。

  • データの重複の制限。
  • 可能な限り最新のデータのクエリの実行。

制限事項

  • 表形式のデータは Delta テーブル形式である必要があります。 Parquet テーブルを Delta に簡単に変換し、もう一度戻すことができます。 CONVERT TO DELTA をご覧ください。
  • プロバイダーは、パーティション フィルター処理で液体クラスタリングと V2 チェックポイントを使用するテーブルを共有できません。
  • プロバイダーは、液体クラスタリングと V2 チェックポイントを使用して R2 テーブルを共有することはできません。
  • テーブル制約 (主キー制約と外部キー制約) は、共有テーブルでは使用できません。
  • 共有可能なビューは、差分テーブルまたはその他の共有可能なビューで定義する必要があります。 「 共有にビューを追加する (プロバイダーの場合)」と「 共有ビューの読み取り (受信者向け)」を参照してください。
  • ノートブック共有は、Databricks 間の共有でのみサポートされます。 「 ノートブック ファイルを共有に追加する」 および「 Databricks-to-Databricks Delta Sharing (受信者向け)」を使用して共有されたデータを読み取るを参照してください。
  • ボリュームの共有は、Databricks 間共有でのみサポートされます。 「共有 にボリュームを追加する (プロバイダーの場合)」および「Databricks-to-Databricks Delta Sharing (受信者向け)を使用して共有されたデータの読み取りを する」を参照してください。
  • モデル共有は、Databricks 間の共有でのみサポートされます。 「モデルを共有 に追加する (プロバイダーの場合)」および「Databricks-to-Databricks Delta Sharing (受信者向け)を使用して共有されるデータの読み取りを する」を参照してください。
  • 共有テーブルに許可されるメタデータ内のファイルの数には制限があります。 詳細については、「 リソースの制限超過エラー」を参照してください。
  • information_schema という名前のスキーマは Unity カタログメタストアにインポートできません。これは、そのスキーマ名が Unity カタログで予約されているためです。
  • SHALLOW CLONE テーブルの共有は、Delta Sharing ではサポートされていません。 Azure Databricks では、絶対パスを参照する Delta ログの事前署名 URL はサポートされていません。
  • 照合順序が有効なテーブルの共有は、Delta Sharingではサポートされていません。
  • 差分共有では、UniForm テーブルをデルタ テーブルとしてのみ読み取ることができます。
  • Delta Sharingでは、Apache Iceberg リーダー クライアントへの共有はサポートされていません。

Delta Lake 機能のサポート マトリックスも参照してください。

リソース クォータ

Azure Databricks は Delta Sharing のセキュリティ保護可能なすべてのオブジェクトにリソース クォータを実施されます。 これらのクォータは、[ リソースの制限] に一覧表示されます。 これらのリソース制限を超えることが予想される場合は、Azure Databricks アカウント チームにお問い合わせください。

Unity カタログ リソース クォータ API を使用して、クォータの使用状況を監視できます。 Unity カタログ リソース クォータの使用状況の監視を参照してください。

次のステップ