共用方式為


什麼是 tables 和 views?

Tables 和 views 是 Databricks 中組織和存取數據的基本概念。

table 是儲存在特定位置的結構化數據集,通常是 Delta Lake 格式。 Tables 將實際資料儲存在記憶體上,而且可以使用 SQL 命令或 DataFrame API 來查詢和操作,支援 insert、update、刪除和合併等作業。 請參閱 什麼是 table?

檢視 是一個由 SQL 查詢定義的虛擬table。 檢視本身不會儲存數據。 相反地,檢視提供了一種從一個或多個 tables 中,以特定格式或抽象的方式來呈現資料的方法。 Views 有助於簡化複雜的查詢、封裝商業規則,以及為基礎數據提供一致的介面,而不需要複製記憶體。 請參閱 什麼是檢視?

Unity Catalog 中的 Tables 和 views

Tables 和 views 會使用 Unity Catalog來管理。 在 Unity Catalog中,tables 和 views 位於三層命名空間的第三層(catalog.schema.table),如下圖所示。

Unity Catalog 物件模型圖表,著重於 table

Delta 之間的差異 tables、串流 tables和物化 views

下列 table 回答有關 Delta tables、串流 tables和實體化 views之間差異的常見問題。

問題 Delta table ST MV
這是什麼? 標準 tables 儲存在 Delta Lake 格式、支援 ACID 交易、schema 強制執行及其他 Delta Lake 功能。 已被擴充用於串流和增量處理案例的常規 Delta table。 其結果一律預先計算且正確之查詢的結果。
建議使用哪些使用案例? 執行下列動作的程式代碼:

-攝入
-轉型
執行下列動作的宣告式程式代碼:

- 從僅附加來源擷取
- 低延遲轉換
執行下列動作的宣告式程式代碼:

- 累加轉換
- 批次轉換
如何填入? 程式代碼(INSERTUPDATEMERGE、partition 使用 replaceWhere覆寫) 宣告式程式代碼,包括:

- 附加數據流
- 套用變更數據流
- 一次流程
宣告式查詢
Unity Catalog中的物件類型為何? Table Table 檢視
誰能做到update? 任何可以 update Delta table的作者。 只有定義串流 table 的管線才能 update 它。 只有定義物化視圖的管線才能 update 它。
它與哪些 Delta Lake 功能相容? 支援所有 Delta Lake 功能。 不支援:

- 液體分割
- 預測性優化
不支援:

- 液體分割
- 預測性優化