Delta Sharing とは
このページでは、Databricks を使用しているかどうかに関係なく、Databricks のデータや AI アセットを組織外のユーザーと共有できる安全なデータ共有プラットフォームである Databricks の Delta Sharing について紹介します。Delta Sharing は、データ製品を交換するためのオープンフォーラムである Databricks Marketplaceや、複数の関係者が機密性の高いエンタープライズデータに対して協力して作業できる安全でプライバシー保護の環境である クリーンルームの基盤でもあります。
Delta Sharingは、他のプラットフォームからDeltaテーブルを共有するために使用できる、オープンソースプロジェクトとしても利用できます。
Delta Sharing はどのように機能しますか?
Delta Sharingは、使用するコンピューティングプラットフォームに関係なく、他の組織との安全なデータ共有を行うために、Databricksによって開発されたオープンプロトコルです。
Delta Sharing を使用してデータを共有するには、いくつかの方法があります。
-
Databricks-to-Databricks 共有プロトコル を使用すると、Unity Catalog 対応ワークスペースのデータやAIアセットを、Unity Catalog 対応の Databricks ワークスペースにもアクセスできるユーザーと共有できます。
このアプローチでは、Databricks に組み込まれている Delta Sharing サーバーを使用します。他のプロトコルではサポートされていないいくつかのDelta Sharing機能(データベース共有、 Unity Catalogボリューム共有、 Unity Catalog AIモデル共有、 Unity Catalogデータガバナンス、監査、プロバイダーと受信者の両方に対する使用状況追跡など)をサポートしています。 Unity Catalog との統合により、プロバイダーと受信者の両方にとってセットアップとガバナンスが簡素化され、パフォーマンスが向上します。
「Delta Sharing Databricks-to-Databricks プロトコルを使用したデータの共有 (プロバイダー向け)」を参照してください。
-
Databricks オープン共有プロトコル を使用すると、Unity Catalog 対応の Databricks ワークスペースで管理する表形式データを、任意のコンピューティング プラットフォームのユーザーと共有できます。
このアプローチでは、Databricks に組み込まれている Delta Sharing サーバーを使用し、Unity Catalog を使用してデータを管理し、Databricks を使用していないユーザーや Unity Catalog 対応の Databricks ワークスペースにアクセスできないユーザーとデータを共有する場合に便利です。プロバイダー側での Unity Catalog との統合により、プロバイダーのセットアップとガバナンスが簡素化されます。
「Delta Sharing オープン共有プロトコルを使用してデータを共有する (プロバイダー向け)」を参照してください。
-
Databricksの有無に関わらず、あらゆるプラットフォームからあらゆるプラットフォームへの共有を可能にする、 オープンソースのDelta Sharingサーバーの顧客管理実装です 。
Databricksドキュメントには独自のDelta Sharingサーバーを設定する手順は記載されていません。github.com/delta-io/delta-shareingを参照してください。
-
SAP Business Data クラウド (BDC) コネクタ for Databricks を使用すると、Unity Catalog 対応ワークスペースと SAP BDC アカウントの間でデータを共有できます。
このアプローチでは、SAP BDC データ製品へのライブのゼロコピー アクセスに Delta Sharing を利用する SAP BDC コネクタを使用します。
「 SAP BDC Connector for Databricks とは」を参照してください。

共有、プロバイダー、および受信者
DatabricksのDelta Sharingの基礎となる主な概念は、 共有 、 プロバイダー 、 受信者 です。
共有とは?
Delta Sharing では、 共有 は、プロバイダーが 1 人以上の受信者と共有するテーブルとテーブル パーティションの読み取り専用コレクションです。 受信者が Unity Catalog 対応の Databricks ワークスペースを使用している場合は、ノートブック ファイル、ビュー (行レベルと列レベルでアクセスを制限する動的ビューを含む)、Unity Catalog ボリューム、Unity Catalog モデルを共有に含めることもできます。
テーブル、ストリーミングテーブル、管理された Iceberg テーブル、ビュー、マテリアライズドビュー、ボリューム、モデル、ノートブックファイルをいつでも共有に追加したり削除したり、データ受信者のアクセスを共有に割り当てたり取り消したりすることができます。
Unity Catalogが有効なDatabricks ワークスペースでは、共有はUnity Catalogに登録されているセキュリティ保護可能なオブジェクトです。Unity Catalog Metasotreから共有を削除すると、その共有のすべての受信者がその共有オブジェクトにアクセスできなくなります。
「Delta Sharing の共有を作成および管理する」を参照してください。
プロバイダーとは?
プロバイダー は、受信者とデータを共有する事業体です。あなたがプロバイダーであり、組み込みのDatabricks Delta Sharingサーバーを利用し、Unity Catalogを使用して共有と受信者を管理する場合は、Unity Catalogが有効になっているDatabricksワークスペースが少なくとも1つ必要です。すべての既存ワークスペースをUnity Catalogに移行する必要はありません。Delta Sharingのニーズに合わせて、新しいUnity Catalog対応ワークスペースを作成するだけです。
受信者がUnity Catalog対応のDatabricksワークスペース上にいる場合、プロバイダーも、プロバイダー組織を表し、その組織を共有セットに関連付けるUnity Catalogのセキュリティ保護可能なオブジェクトになります。
受信者とは?
受信者 とは、プロバイダーから共有を受け取る事業体のことです。Unity Catalogでは、共有とは組織を表すセキュリティ保護可能なオブジェクトであり、その組織が1つ以上の共有にアクセスできるようにする資格情報または安全な共有識別子に関連付けられます。
データプロバイダー(共有者)は、特定のUnity Catalogメタストアに対して複数の受信者を定義できますが、複数のメタストアのデータを特定のユーザーまたはユーザーグループと共有する場合は、メタストアごとに受信者を個別に定義する必要があります。受信者は複数の共有にアクセスできます。
プロバイダーがUnity Catalogメタストアから受信者を削除すると、その受信者は以前にアクセスできたすべての共有にアクセスできなくなります。
「Delta Sharing (Databricks-to-Databricks共有) のデータ受信者の作成と管理」を参照してください。
オープン共有と Databricks-to-Databricks 共有
このセクションでは、Unity Catalogが有効になっているDatabricksワークスペースから共有するための2つのプロトコルについて説明します。
このセクションでは、プロバイダーがUnity Catalog対応のDatabricksワークスペース上にあることを前提としています。Databricks 以外のプラットフォームまたはUnity Catalog以外のカタログワークスペースから共有するようにオープンソースのDelta Sharingサーバーを設定する方法については、「github.com/delta-io/delta-sharing」を参照してください。
プロバイダーがDatabricksでDelta Sharingを使用する方法は、データを共有している相手によって異なります:
- オープン共有 を使用すると、Databricksにアクセスできるかどうかに関係なく、任意のユーザーとデータを共有できます。
- Databricks-to-Databricks共有 Databricksを使用すると、ワークスペースが自分とは異なる メタストアにアタッチされているUnity Catalog ユーザーとデータを共有できます。Databricks-to-Databricks は、ノートブック、ボリューム、およびモデル共有もサポートしていますが、これはオープン共有では使用できません。
オープン Delta Sharing とは何ですか?
Databricks ワークスペースの外部のユーザーとデータを共有する場合は、Databricks を使用しているかどうかに関係なく、オープン Delta Sharing を使用してデータを安全に共有できます。データプロバイダは、次のいずれかの方法を使用して、共有受信者との認証を管理します。
- 長寿命のベアラートークンを生成し、それを受信者と安全に共有します。彼らはトークンを使用して認証を行い、あなたがアクセス権を付与した共有に含めたテーブルへの読み取りアクセス権を取得します。
- Open ID Connect (OIDC) フェデレーションを使用して、受信者の IdP が Databricks に渡す JWT トークンと引き換えに、有効期間の短い Databricks OAuth トークンを受信者に付与します。
受信者は、以下のような多くのコンピューティングツールやプラットフォームを使用して共有データにアクセスすることができます。
- Databricks
- Apache Spark
- Pandas
- Power BI
Delta Sharingコネクタの完全な一覧とその使用方法については、Delta Sharingのドキュメントを参照してください。
「Delta Sharing オープン共有プロトコルを使用してデータを共有する (プロバイダー向け)」も参照してください。
Databricks-to-Databricks Delta Sharingとは?
が有効になっているDatabricks ワークスペースを持つユーザーとデータを共有する場合は、Unity CatalogDatabricks-to-DatabricksDelta Sharingを使用できます。Databricks-to-Databricks共有を使用すると、他のユーザーがDatabricks 、AWS 、 を使用しているかどうかにかかわらず、他の アカウントのユーザーとデータを共有できます。AzureGCPまた、自分の Databricks アカウント内のさまざまな Unity Catalog メタストア間でデータを安全に共有するための優れた方法でもあります。同じ Unity Catalog メタストアにアタッチされたワークスペース間でデータを共有するために Delta Sharing を使用する必要はありません。このシナリオでは、Unity Catalog 自体を使用してワークスペース間のデータへのアクセスを管理できるためです。
Databricks-to-Databricks共有の利点の 1 つは、共有の受信者が共有にアクセスするためにトークンを必要とせず、プロバイダーが受信者トークンを管理する必要がないことです。すべての ID 検証、認証、監査を含む共有接続のセキュリティは、Delta Sharing と Databricks プラットフォームを通じて完全に管理されます。もう 1 つの利点は、Databricks ノートブック ファイル、Unity Catalog ボリューム、Unity Catalog モデルを共有できることです。
「Delta Sharing Databricks-to-Databricks プロトコルを使用してデータを共有する (プロバイダー向け)」も参照してください。
プロバイダー管理者はDelta Sharingをどのように設定しますか?
このセクションでは、プロバイダーがUnity Catalog対応のDatabricksワークスペースからDelta Sharingを有効にして共有を開始する方法の概要について説明します。オープンソースDelta Sharingについては、「github.com/delta-io/delta-sharing」を参照してください。
同じアカウント内のUnity Catalogメタストア間でDatabricks-to-Databricks共有は常に有効になっています。プロバイダーがDelta Sharingで他のアカウントまたはDatabricks以外のクライアントのDatabricksワークスペースとデータを共有できるようにするには、Databricksアカウント管理者またはメタストア管理者が次のセットアップ手順を(高レベルで)実行します。
- 共有したいデータを管理する、Unity CatalogメタストアのDelta Sharingを有効にします。
Delta Sharingを使用して、アカウント内の他のUnity Catalogメタストアのユーザーとのみデータを共有する場合は、メタストアでDelta Sharingを有効にする必要はありません。1つのDatabricksアカウント内でのメタストア間の共有は、デフォルトで有効になっています。
「メタストアでDelta Sharingを有効にする」を参照してください。 2. Unity Catalog メタストアに登録されているデータ資産を含む共有を作成します。
Databricks 以外の受信者と共有する場合 (オープン共有と呼ばれます)、Delta 形式のテーブルを含めることができます。Databricks-to-Databricks共有を使用する場合は、ビュー、Unity Catalogボリューム、Unity Catalog モデル、ノートブック ファイルを共有に追加することもできます。
「Delta Sharing の共有を作成および管理する」を参照してください。 3. 受信者を作成します。
「Delta Sharing (Databricks-to-Databricks共有) のデータ受信者の作成と管理」を参照してください。
受信者が Databricks ユーザーでない場合、または Unity Catalog が有効になっている Databricks ワークスペースにアクセスできない場合は、 オープン共有を使用する必要があります。その受信者のベアラー トークン ベースの資格情報を生成するか、OIDC フェデレーションを使用できます。
受信者が が有効になっているDatabricks ワークスペースにアクセスできる場合は、Unity Catalog Databricks-to-Databricks共有 を使用でき、トークンベースの資格情報は必要ありません。受信者に 共有識別子 を要求し、それを使用して安全な接続を確立します。
自分自身をテスト受信者として使用し、セットアッププロセスを試してください。
-
受信者に1つ以上の共有へのアクセス権を付与します。
この手順は、 USE SHARE、 USE RECIPIENT 、および SET SHARE PERMISSION 権限を持つ管理者以外のユーザーも実行できます。 「Unity Catalog の特権とセキュリティ保護可能なオブジェクト」を参照してください。
-
共有に接続するために必要な情報を受信者に送信します(オープン共有のみ)。
ベアラートークンを使用したオープン共有の場合は、安全なチャンネルを使用して、トークンベースの資格情報をダウンロードできるアクティベーションリンクを受信者に送信します。 「受信者に接続情報を送信する」を参照してください。
OIDC トークン フェデレーションを使用したオープン共有の場合は、生成されたポータル URL を送信します。「Open ID Connect (OIDC) フェデレーションを使用して Delta Sharing 共有 (オープン共有) への認証を有効にする」を参照してください。
Databricks-to-Databricks共有の場合、共有へのアクセス権を付与するとすぐに、共有に含まれるデータは受信者のDatabricksワークスペースで利用できるようになります。
受信者は共有データにアクセスできるようになりました。
受信者は共有データにどのようにアクセスしますか?
受信者は、共有データアセットに読み取り専用形式でアクセスします。 共有ノートブック ファイルは読み取り専用ですが、他のノートブックと同様に、クローンを作成して変更し、受信者ワークスペースで実行できます。
以下のように、安全なアクセスは共有モデルによって異なります。
-
オープン共有 (受信者が Unity Catalog に対して Databricks ワークスペースを有効にしていない) には、次の 2 つのオプションがあります。
- ベアラー トークン フローでは、受信者は、選択したツール ( Apache Spark、 Pandas、 Power BI、 Databricksなど) のデータにアクセスするたびに資格情報を提供します。 「Delta Sharing を使用して共有されたデータの読み取りとベアラー トークンとのオープン共有 (受信者用)」を参照してください。
- OIDC トークンフェデレーションフローでは、受信者または受信者のクライアントアプリは、独自の IdP を使用してデータにアクセスします。「ユーザーとマシン間のフローで Open ID Connect (OIDC) フェデレーションを使用して Delta Sharing 共有を受け取る (オープン共有)」および「Python クライアントを使用して Delta Sharing 共有を受け取る」および「マシン間フローで Open ID Connect (OIDC) フェデレーションを受け取る (オープン共有)」を参照してください。
-
Databricks-to-Databricks (recipient ワークスペースは for a に対して有効になっています Unity Catalog): 受信者は Databricksを使用してデータにアクセスします。 Unity Catalog を使用して、Databricks アカウント内の他のユーザーにアクセスを許可および拒否できます。 「Databricks-to-Databricks Delta Sharingを使用して共有されたデータの読み取り (受信者向け)」を参照してください。
データプロバイダーが自分の Databricks アカウントのデータテーブルまたはボリュームを更新するたびに、更新は受信者のシステムにほぼリアルタイムで表示されます。Delta Sharing を使用して共有されたデータにアクセスする方法については、「 Delta Sharing を使用して共有されたデータにアクセスする (受信者向け)」を参照してください。
誰が共有データを共有し、アクセスしているかをどのように追跡しますか?
Unity Catalog が有効な Databricks ワークスペースのデータプロバイダーは、Databricks 監査ログとシステムテーブルを使用して、共有と受信者の作成と変更を監視し、共有に対する受信者のアクティビティを監視できます。 データ共有の監査と監視を参照してください。
Databricksワークスペースで共有データを使用するデータ受信者は、監査ログDatabricksシステムとテーブルを使用して、誰がどのデータにアクセスしているかを把握できます。データ共有の監査と監視を参照してください。
ボリュームの共有
Databricks-to-Databricks共有フローを使用してボリュームを共有できます。「共有へのボリュームの追加」 (プロバイダー向け) と 「Databricks-to-Databricks Delta Sharingを使用して共有されたデータの読み取り (受信者向け) (受信者向け)」を参照してください。
モデルの共有
Databricks-to-Databricks共有フローを使用してモデルを共有できます。「共有にモデルを追加する」 (プロバイダーの場合) および「Databricks-to-Databricks Delta Sharingを使用して共有されたデータを読み取る (受信者の場合) (受信者の場合)」を参照してください。
ノートブックの共有
Delta Sharing を使用して、Databricks-to-Databricks 共有フローを使用してノートブック ファイルを共有できます。「 共有へのノートブック ファイルの追加 」 (プロバイダーの場合) と 「共有ノートブックの読み取り (受信者の場合)」を参照してください。
ビューを共有する際の行レベルと列レベルでのアクセスの制限
受信者のプロパティに基づいて特定のテーブル データへのアクセスを制限する動的ビューを共有できます。「共有に動的ビューを追加して行と列をフィルターする」を参照してください。
Delta Sharing とストリーミング
Delta Sharing は Apache Spark 構造化ストリーミングをサポートしています。 プロバイダーは、テーブルを履歴またはストリーミングテーブルと共有して、受信者が構造化ストリーミングソースとして使用できるようにし、共有データを低レイテンシーで段階的に処理できます。受信者は、履歴と共有されているテーブルに対して Delta Lake タイムトラベルクエリ を実行することもできます。
履歴のあるテーブルを共有する方法については、「 共有にテーブルを追加する」を参照してください。 共有テーブルをストリーミング ソースとして使用する方法については、「Apache Spark 構造化ストリーミングを使用してテーブルをクエリする (Databricks-to-Databricks 共有の受信者向け)」または「Spark 構造化ストリーミングを使用して共有テーブルにアクセスする (オープン共有データの受信者向け)」を参照してください。
ストリーミングテーブルを共有する方法については、「 共有にストリーミングテーブルを追加する」を参照してください。
構造化ストリーミングの概念も参照してください。
Delta Lake 機能のサポート マトリックス
Delta Sharing は、テーブルを共有するときに Delta Lake のほとんどの機能をサポートします。 このサポート マトリックスには、次のものが一覧表示されます。
- 特定のバージョンの Databricks Runtime、オープンソースの Delta Sharing Spark コネクタ、またはオープンソースの Delta Sharing Python コネクタを必要とする Delta 機能。
- 一部サポートされている機能。
機能 | PROVIDER | Databricks の受信者 | オープンソースの受信者 |
|---|---|---|---|
削除ベクトル |
|
|
|
列マッピング |
|
|
|
ユニフォームフォーマット |
|
|
|
V2 チェックポイント | |||
タイムスタンプNTZ | サポートされています | Databricks Runtime 14.1+ | Delta Sharing Spark コネクタ 3.3+ |
リキッドクラスタリング |
Delta Sharing に関する FAQ
以下は、Delta Sharingに関するよくある質問です。
Delta Sharing を使用するには Unity Catalog が必要ですか?
いいえ、(プロバイダーとして) 共有データを共有したり (受信者として) 共有したりするために Unity Catalog は必要ありません。 ただし、Unity Catalog には、非表形式や AI アセット共有のサポート、すぐに使用できるガバナンス、シンプルさ、クエリ パフォーマンスなどの利点があります。
プロバイダーは2つの方法でデータを共有することができます:
-
共有するアセットをUnity Catalogの管理下に置き、組み込みのDatabricks Delta Sharingサーバーを使用して共有します。
すべてのアセットを Unity Catalog に移行する必要はありません。 共有するアセットを管理するために必要なのは、Unity Catalog が有効になっている Databricks ワークスペースを 1 つだけです。 一部のアカウントでは、新しいワークスペースが Unity Catalog に対して自動的に有効になります。 「Unity Catalog の自動有効化」を参照してください。
-
Databricksアカウントを使用することなく、オープンなDelta Sharingサーバーを実装してデータを共有します。
受信者は、次の2つの方法でデータを消費できます:
-
Databricks ワークスペースがない場合。、 、 オープンソース など、多くのデータDelta SharingPower BI Pandasプラットフォームで使用できるオープンソースApache Spark コネクタを使用します。Delta Sharingベアラー トークン (受信者向け) とDelta Sharing オープンソース プロジェクト を使用して共有されたデータの読み取り を参照してください。
-
Databricks ワークスペース内。受信者のワークスペースを Unity Catalog で有効にする必要はありませんが、有効にすれば、ガバナンス、シンプルさ、パフォーマンスという利点があります。
これらの利点を求める受信者組織は、すべてのアセットを Unity Catalog に移行する必要はありません。共有されているアセットを管理するには、Unity Catalog が有効になっている Databricks ワークスペースが 1 つだけ必要です。一部のアカウントでは、新しいワークスペースが Unity Catalog に対して自動的に有効になります。「Unity Catalog の自動有効化」を参照してください。
ベアラー トークンを使用した Delta Sharing オープン共有を使用して共有されたデータの読み取り (受信者向け) と Databricks-to-Databricks Delta Sharing を使用して共有されたデータの読み取り (受信者向け) を参照してください。
Delta Sharing を使用するには、Databricks の顧客である必要がありますか?
いいえ、Delta Sharingはオープンプロトコルです。Databricks以外のデータは、任意のデータプラットフォーム上の受信者と共有できます。プロバイダーは、任意のコンピューティングプラットフォームから共有するようにオープンDelta Sharingサーバーを構成できます。受信者は、Power BI、pandas、オープンソースSparkなど、多くのデータ製品のオープンソースDelta Sharingコネクタを使用して共有データを使用できます。
ただし、DatabricksでDelta Sharingを使用すること、特にUnity Catalog対応ワークスペースからの共有には多くの利点があります。
詳細については、このFAQの最初の質問を参照してください。
Delta Sharingの費用はどのように発生し、確認するのですか?
Delta Sharingのコストは、ビュー、マテリアライズドビュー、ストリーミングテーブルの共有とアクセス時に発生します。これらは、共有コストの潜在的なソースです。
- コンピュートの費用は、 Databricksによって請求されます。
- ストレージおよびネットワーク転送 (エグレス) のコスト (ストレージ ベンダーによって請求されます)。
- 外部コンピュート ソース コスト、外部スキーマとテーブルを共有する場合。
コンピュートの実行方法と誰がそれを支払うかは、いくつかの要因によって異なります。
- 受信者の種類コンピュート
- 共有が同じ Databricks アカウント内で行われるか、アカウント間で行われるか
次の表では、Delta Sharing を使用して ビュー を共有およびアクセスするための課金方法について説明します。
受信者のコンピュート | アカウントリレーション | 誰が支払うのか | 請求に使用される SKU | アクセス方法 |
|---|---|---|---|---|
Databricks のサーバーレス | すべて | 受信者* | Recipient's サーバレス | 受信者は、基になるデータに直接アクセスできます |
Databricks クラシック | 同じアカウント | 受信者* | 受信者のクラシック | 受信者は、基になるデータに直接アクセスできます |
Databricks クラシック | 別のアカウント | 受信者 | Provider's interactive サーバレス | プロバイダーはフィルタリングを実行します |
オープン Delta Sharing コネクタ | すべて | PROVIDER | Provider's interactive サーバレス | プロバイダーはフィルタリングを実行します |
※別のアカウントのサーバレス コンピュートを使用している受取人と Delta Sharing を利用する場合、または同じアカウントの受取人とを利用する場合、追加料金はかかりません。 これは、データ資産を具体化するための追加コストがないことを意味します。
フォーリンテーブル (ベータ版)を共有する場合、フィルタリングは常にプロバイダー側で実行され、保存されます。 プロバイダーには、データの具体化に使用される デフォルト ストレージに起因する追加料金が表示される場合があります。 ベータ期間中は、コンピュートのフィルタリングコストはありません。
課 金利用システムテーブル リファレンス と Delta Sharing マテリアライゼーション履歴システムテーブル リファレンスを使用して、請求属性を照会することもできます。 受信者が帰属の料金を支払う場合、受信者のみがシステムテーブルに関連付けられたレコードを表示できます。クエリの例については、「 サンプルクエリ」を参照してください。
Delta Sharing ではエグレス コストが発生しますか?
リージョン内の Delta Sharing では、エグレス コストは発生しません。 他のデータ共有プラットフォームとは異なり、Delta Sharing ではデータのレプリケーションは必要ありません。 このモデルには多くの利点がありますが、クラウドやリージョン間でデータを共有する場合、クラウドベンダーがデータエグレス料金を請求する可能性があることを意味します。 Databricksは、エグレス料金が発生しないCloudflare R2からの共有をサポートしており、エグレス料金を監視および回避するための他のツールと推奨事項を提供します。 「Delta Sharing のエグレス コストの監視と管理 (プロバイダー向け)」を参照してください。
受信者は、共有ビュー、マテリアライズドビュー、ストリーミングテーブルの基になるデータに直接アクセスできますか?
共有ビュー、ストリーミングテーブル、およびマテリアライズドビューの場合、次のいずれかに該当する場合、データ受信者は直接アクセスできます。
- 受信者は、同じDatabricksアカウントでサーバレス コンピュートまたは非専用のクラシック コンピュートを使用します。
- 受信者は、別のDatabricksアカウントでサーバレス コンピュートを使用します。
それ以外の場合、データはプロバイダー側で具体化され、フィルター処理されます。
データの具体化は、共有データ資産の親ストレージの場所に格納されます。
マテリアライズドアセットを共有する場合、コンピュートは必要なフィルターを適用し、プロバイダーのストレージにキャッシュされた一時的なマテリアライゼーションを作成することでリクエストを処理します。 このフィルタリングされたデータは、事前に署名された有効期間の短いURLを使用して受信者に配信されるため、プロバイダー間のアクセス制御を維持しながら安全なアクセスが保証されます。

プロバイダーは受信者のアクセスを取り消すことができますか?
はい、受信者のアクセスは、オンデマンドで、指定された粒度で取り消すことができます。特定の共有や特定の IP アドレスへの受信者のアクセスを拒否したり、受信者の表形式データをフィルタリングしたり、受信者トークンを取り消したり、受信者を完全に削除したりできます。「共有への受信者のアクセスを取り消す」および「Delta Sharingのデータ受信者を作成および管理する (Databricks-to-Databricks共有)」を参照してください。
事前に署名されたURLを使用するのは安全ではありませんか?
Delta Sharing では、署名済み URL を使用して、オブジェクト ストレージ内のファイルへの一時的なアクセスを提供します。これらは、共有データに既にアクセスできる受信者にのみ与えられます。これらは有効期間が短く、受信者に既に付与されているレベルを超えてアクセスレベルを拡大しないため、安全です。
Delta Sharing のオープン共有プロトコルで使用されるトークンは安全ですか?
Delta Sharing では、他の使用可能なデータ共有プラットフォームとは異なり、クロスプラットフォーム共有が可能になるため、共有プロトコルにはオープン トークンが必要です。 プロバイダーは、トークンの有効期間を構成し、ネットワーク制御を設定し、オンデマンドでアクセスを取り消すことで、トークンのセキュリティを確保できます。 さらに、トークンは、受信者に既に付与されているアクセスレベルを超えてアクセスレベルを拡大しません。 トークンのセキュリティに関する考慮事項を参照してください。
トークンを使用して受信者共有へのアクセスを管理したくない場合は、 Databricks-to-Databricks 共有 を使用するか、 Databricks アカウント チームに代替手段について問い合わせてください。
LakeflowコネクトとDelta Sharingの違いは何ですか?
Delta Sharing を使用すると、プラットフォーム、クラウド、リージョン間でライブ データを安全に共有できます。Databricks では、大量のデータ、低遅延のクエリ、サードパーティの API 制限に対応するようにスケーリングするため、マネージド コネクタを使用したインジェストをお勧めします。ただし、データを移動せずにクエリを実行することもできます。
マネージド コネクタと Delta Sharing のどちらかを選択できる場合は、次のシナリオで Delta Sharing を選択します。
- データの重複を制限する。
- 可能な限り最新のデータをクエリします。
制限
表形式と機能のサポート
フォーマット要件:
- 表形式のデータは、 Deltaまたは管理された Icebergテーブル形式である必要があります。Parquet テーブルを Delta に簡単に変換でき、またその逆も可能です。「CONVERT TO DELTA」を参照してください。
- Delta Sharing は、UniForm テーブルを Delta テーブルとしてのみ読み取ることができます。
サポートされていないテーブル:
- プロバイダーは、パーティション フィルターでリキッドクラスタリングを使用するテーブルを共有できません。
- プロバイダーは、R2 テーブルを V2 チェックポイントと共有できません。
- プロバイダーは照合が有効になっているテーブルを共有できません。
- プロバイダーは、行フィルターまたは列マスクを含むテーブルを共有できません。
- プロバイダーは
SHALLOW CLONEテーブルを共有できません。Databricks は、絶対パスを参照する Delta ログの事前署名 URL をサポートしていません。 - 外部キー制約は共有テーブルでは使用できません。
Databricks-to-Databricks共有のみ
次の資産は、 Databricks-to-Databricks共有フローを使用してのみ共有できます。
- ノートブックの共有。「ノートブック ファイルを共有に追加する」およびDatabricks-to-Databricks Delta Sharingを使用して共有されたデータを読み取る (受信者用)」を参照してください。
- ボリュームの共有。「共有にボリュームを追加する(プロバイダー向け)」およびDatabricks-to-Databricks Delta Sharingを使用して共有されたデータを読み取る (受信者向け)」を参照してください。
- モデルの共有。「共有にモデルを追加する(プロバイダー向け)」およびDatabricks-to-Databricks Delta Sharingを使用して共有されたデータを読み取る (受信者向け)」を参照してください。
ビュー
- 共有可能なビューは、Delta テーブルまたはその他の共有可能なビューで定義する必要があります。 「共有へのビューの追加 (プロバイダー向け)」および「共有ビューの読み取り (受信者向け)」を参照してください。
ストリーミング
- Delta Sharingストリーミング ソースの実行中またはストリーミングの再起動中の
responseFormat変更はサポートされていません。
リソースと技術の限界
- 共有テーブルで許可されるメタデータ内のファイル数には制限があります。 詳細については、「 リソース制限超過エラー」を参照してください。
information_schemaという名前のスキーマはUnity Catalogで予約されているため、Unity Catalogメタストアにインポートできません。
Delta Lake 機能のサポート マトリックスも参照してください。
リソースクォータ
Databricks では、セキュリティ保護可能なすべての Delta Sharing オブジェクトにリソース クォータが適用されます。 これらのクォータは、「 リソース制限」に記載されています。 これらのリソース制限を超えることが予想される場合は、Databricks アカウント チームにお問い合わせください。
クォータの使用状況は、 Unity Catalog リソース クォータ APIを使用して監視できます。 「Unity Catalog のリソース クォータの使用状況を監視する」を参照してください。