本文概述如何使用 Databricks-to-Databricks Delta Sharing 安全地與任何 Databricks 使用者共用數據,不論帳戶或雲端主機為何,只要該用戶能夠存取為 Unity 目錄啟用的工作區,。
注意
如果您是資料接收者(即 Databricks 資料分享的使用者或使用者群組),請參閱 使用 Delta Sharing 存取與您分享的資料。
誰應該使用 Databricks 到 Databricks Delta Sharing?
使用 Delta Sharing 共用數據的方式有三種。
本文所涵蓋的 Databricks 到 Databricks 共享協議,允許您與同樣擁有啟用 Unity Catalog 功能的 Databricks 工作區的使用者共享數據。
此方法使用 Azure Databricks 內建的 Delta Sharing 伺服器,並針對提供者和收件者提供筆記本共用、Unity 目錄數據控管、稽核和使用量追蹤的支援。 與 Unity 目錄的整合可簡化提供者和收件者的設定和控管,並改善效能。
Databricks 開放共用協定 可讓您與任何運算平臺上的用戶共用在啟用了 Unity Catalog 的 Databricks 工作區中管理的資料。
請參閱如何使用 Delta Sharing 開放共享協議(適用於提供者)共享數據。
開放原始碼 Delta Sharing 伺服器的 客戶管理實作可讓您從任何平台共用至任何平臺,不論 Databricks 是否共用。
如需差異共用的簡介,以及這三種方法的詳細資訊,請參閱 什麼是差異共用?。
Databricks 對 Databricks Delta 共用工作流程
本節提供 Databricks 到 Databricks 共用工作流程的高階概觀,其中包含每個步驟的詳細文件連結。
在 Databricks 對 Databricks Delta 共用模型中:
數據
收件者 提供數據提供者, 數據提供者, 附加至收件者(代表使用者或使用者群組)附加至 Databricks 工作區之 Databricks 工作區的唯一共用標識符。 如需詳細資訊,請參閱 步驟 1:要求收件者的共享標識碼。
數據提供者會在提供者的 Unity 目錄中繼存放區中建立 共用 。 這個具名物件包含在中繼存放區中註冊的數據表、視圖、卷和筆記本集合。
如需詳細資訊,請參閱 建立和管理 Delta Sharing。
數據提供者會在提供者的 Unity 目錄中繼存放區中建立收件者物件。 這個具名物件代表將存取共用內含數據的使用者或使用者群組,以及附加至使用者或使用者群組將用來存取共用之工作區的 Unity 目錄中繼存放區的共享識別符。 共用識別碼是啟用安全連線的金鑰標識碼。
如需詳細資訊,請參閱 步驟 2:建立收件者。
數據提供者會將共用的存取權授與收件者。
如需詳細資訊,請參閱 管理對 Delta Sharing 數據共用的存取權(適用於提供者)。
共用會在收件者的 Databricks 工作區中變成可用,使用者可以使用目錄總管、Databricks CLI 或 Azure Databricks 筆記本或 Databricks SQL 查詢編輯器中的 SQL 命令來存取它。
若要存取共用中的數據表、檢視、磁碟區和筆記本,中繼存放區系統管理員或 特殊許可權使用者 必須從共用建立目錄。 然後,授與適當許可權的使用者或其他使用者,即可讓其他使用者存取目錄中的目錄和物件。 授與共享目錄和資料資源的權限,其運作方式如同在 Unity Catalog 中註冊的任何其他資源。重要的區別在於,使用者對從 Delta Sharing 分享創建的目錄內的物件只能被授權為讀取權限。
共用筆記本位於目錄層級,且具有目錄
USE CATALOG許可權的任何使用者都可以存取它們。如需詳細資訊,請參閱 使用 Databricks-to-Databricks Delta Sharing 分享給接收者的數據。
使用歷程記錄共用改善數據表讀取效能
Databricks 對 Databricks 表格共用可以藉由啟用歷史記錄共用來改善效能。 共用歷程記錄可透過利用雲端儲存的臨時安全憑證來改善效能,範圍限定到供應商的共用 Delta 資料表的根目錄,進而產生與直接存取源數據表相媲美的效能。
- 針對新的表格共享,請在建立表格共享時指定
WITH HISTORY。 請參閱 將數據表新增到分享。 當您在 Databricks Runtime 16.2 和更新版本上使用計算共用數據表時,WITH HISTORY是預設值。 - 對於現有的數據表共用,您必須修改共用設定以分享數據表的歷史記錄。 查閱 更新分享。 當您在 Databricks Runtime 16.2 和更新版本上使用計算共用數據表時,
WITH HISTORY是預設值。
當您共用整個架構時,架構中的所有數據表預設都會與歷程記錄共用。
注意
已啟用數據分割的數據表不會收到歷程記錄共用的效能優點。 請參閱 指定要共用的資料表分區
歷史共享數據隱私
提供者應該注意,Databricks 到 Databricks 的歷程記錄共用會授與 Delta 共用收件者暫時讀取數據檔和 Delta 記錄的存取權。 Delta 記錄包含每個表格版本的提交歷程記錄、提交者的相關信息(類似於 GitHub 提交歷程記錄),以及尚未清理的已刪除數據。
雲端環境的 Databricks 至 Databricks Delta 分享支援矩陣
只有相同環境類型才支援 Databricks 對 Databricks Delta Sharing:commercial-to-commercial、GovCloud-to-GovCloud、DoD-to-DoD 或 Azure China-to-Azure China。 不支援跨環境共用,例如從商業雲端到 AWS GovCloud,或從 AWS GovCloud 到 Azure 中國。 商業雲端包含已啟用合規性控制的工作區,例如 FedRAMP Moderate。
Azure Government 環境不支援 Databricks 對 Databricks Delta 共用。
在此矩陣中,每個數據列都代表提供者環境(中繼存放區共用數據),而每個數據行則代表收件者環境(接收共用數據的中繼存放區)。 表格指出每個組合之間是否支援共用。
| 提供者 | 收件者:商業雲端服務 | 收件者:AWS GovCloud | 收件者:AWS GovCloud DoD | 收件者:Azure 中國 |
|---|---|---|---|---|
| 商業雲端 | ✓ | |||
| AWS GovCloud | ✓ | |||
| AWS GovCloud DoD | ✓ | |||
| Azure 中國 | ✓ |