Lakebase 架構解析:Image Generation Pushdown 讓 Postgres 寫入量降低 94%、吞吐量提升 4.5 倍
Databricks Blog · 2026-05-09
Databricks 的 Lakebase 是一套計算與儲存分離的託管 Postgres,其核心創新在於將 Postgres Full Page Write(FPW)的職責從計算層下推到分散式儲存層,在生產環境達到 WAL 流量降低 94%、32-vCPU 情境下寫入吞吐量提升 4.5 倍的量測結果。
架構設計
Lakebase 將傳統單體式 Postgres 拆解為兩個獨立層:
- 無狀態計算層:Postgres 實例不持有本地資料目錄,只負責執行查詢與產生 WAL。
- 分散式儲存層:由 Paxos quorum 的 safekeeper 接收 WAL 串流,以及 Pageserver 負責重建頁面——找到最近一次的物化(materialized)頁面快照,疊加後續的 WAL delta 即可重建任意歷史時刻的頁面。
核心改動:Image Generation Pushdown
標準 Postgres 使用 Full Page Write(FPW)防止「撕裂頁面」(torn page):每次 checkpoint 後第一次修改某頁,Postgres 在 WAL 中寫入完整的 8 KB 頁面快照,WAL 體積可因此膨脹 最多 15 倍。
Lakebase 將這個決策下移到 Pageserver:當某頁累積的 delta record 超過閾值,Pageserver 主動生成物化快照(image)。決策依據是實際修改次數,而非 Postgres checkpoint 週期——checkpoint 是計算層事件,與儲存層的 delta 累積無關。計算層只需傳送緊湊的 delta,Pageserver 負責決定何時物化,工作也分散在多個 Pageserver 實例上。
量測結果
| 指標 | 改善幅度 |
|---|---|
| 32-vCPU 寫入吞吐量 | +4.5x |
| WAL 流量 | 降低 94%(30 MB/s → 1 MB/s) |
| 讀取尾延遲 p99 | 降低 30–50% |
| 同步資料表攝取吞吐量 | +3x |
WAL 流量的降低同時改善了計算層的網路效率,以及 Pageserver 叢集的可擴展性——這兩點是傳統 Postgres Replica 串流複製的主要瓶頸。
原始來源:How Lakebase Architecture Delivers 5x Faster Postgres Writes (Databricks Blog)
Delta Lake 4.2 發布:Delta Kernel 驅動未來,Flink connector 進入實驗階段
Delta Lake Blog · 2026-04-17
Apache Delta Lake 4.2.0 於 2026 年 4 月 17 日發布,以 Delta Kernel 為架構核心,並新增實驗性 Apache Flink connector,同時 DuckDB 的 Delta extension 也在同期退出實驗狀態,支援完整寫入與 Unity Catalog 整合。
Delta Kernel 架構
Delta Kernel 是 Delta Lake 4.x 系列的底層引擎抽象,設計目標是讓各種計算引擎(Spark、Flink、DuckDB、自訂引擎)透過統一的 Kernel API 存取 Delta table,而不需要各自重新實作 Delta 協議的讀寫邏輯。Kernel 的 changelog 管理、schema 演化、transaction log 處理均集中在此層,減少跨引擎實作分叉的維護成本。
Flink Connector(實驗性)
Delta Lake 4.2 加入了基於 Delta Kernel 的 Apache Flink connector,目前標記為實驗性(experimental),支援 Flink DataStream API 與 Table API 的基本讀寫操作。這是 Delta Lake 持續擴展流批一體(streaming + batch)場景的一步,Flink 是目前主流流處理引擎中少數尚未有成熟 Delta 整合的選項。
DuckDB Delta extension:寫入、Unity Catalog、Time Travel
與 Delta Lake 4.2 同期,DuckDB 的 Delta extension 退出實驗狀態,三項主要功能正式穩定:
- 寫入支援:DuckDB 現在可直接寫入 Delta table,不再是唯讀存取。
- Unity Catalog 整合:透過 Databricks Unity Catalog 管理的 Delta table 可直接在 DuckDB 中查詢。
- Time Travel:支援
AS OF VERSION和AS OF TIMESTAMP語法查詢歷史快照。
原始來源:Delta 4.2.0 Released (Delta Lake Blog)、Delta Grows Up: DuckDB Delta extension (DuckDB Blog)