Delta Sharing:類型與取捨

Databricks Lakehouse 入門

Gang Wang

Senior Data Scientist

兩種共享方式

$$

comparison: 原生共享 vs 開放協定共享

$$

  • 原生共享-Databricks 對 Databricks
    • 與 Unity Catalog 無縫整合
    • 兩端皆有完整治理
  • 開放協定-任何平台皆可
    • 支援 Spark、pandas、Power BI、Snowflake
    • 設定較多,但觸及更廣
Databricks Lakehouse 入門

Databricks 原生共享

$$

  • 雙方都是 Databricks 客戶
  • 共享資料會出現在接收方的 Unity Catalog
  • 兩端皆有完整治理
  • 設定極少-建立 share 並授權即可

$$

recraft: half: 兩棟現代建築以發光橋樑相連,象徵兩個 Databricks 工作區之間的無縫直連

Databricks Lakehouse 入門

開放協定共享

$$

# Recipient's code (using pandas)
import delta_sharing

profile = "config.share"
client = delta_sharing.SharingClient(
    profile
)
tables = client.list_all_tables()
df = delta_sharing.load_as_pandas(
    f"{profile}#share.schema.table"
)

$$

  • 接收方可用任何平台
  • 接收方需安裝 Delta Sharing client
  • 支援 Spark、pandas、Power BI、Snowflake、Tableau
Databricks Lakehouse 入門

成本考量

$$

  • 同區域-通常無外送費
  • 跨區域-雲端供應商會收取傳輸費
  • 跨雲(如 Azure 到 AWS)-外送費最高
  • 盡量將共享資料放在主要接收方附近

$$

layers: 同區域-免費或便宜,跨區域-外送費,跨雲-費用最高

Databricks Lakehouse 入門

選擇合適的方式

$$

decision tree: 接收方是否在 Databricks?Yes-用原生共享(完整治理、低設定、稽核記錄)。No-用開放協定(任一平台、僅供應商層治理、中等設定)。兩者皆可-依區域評估外送費。

Databricks Lakehouse 入門

重點整理

$$

  • 原生共享-Databricks 對 Databricks、無縫、完整治理
  • 開放協定-任一平台、觸及更廣、設定較多
  • 外送費隨跨區域與跨雲共享而增加
  • 依接收方平台與資料位置來選擇
Databricks Lakehouse 入門

一起來練習吧!

Databricks Lakehouse 入門

Preparing Video For Download...