Dolt 2.0讓資料庫版本控制更實用

2026/07/18(六) 15:28・精選・原始出處

Dolt 2.0 要解決的是「資料庫也想像 Git 一樣管理版本」時,歷史資料越留越肥、效能跟不上正式環境的問題。它維持 MySQL 相容介面,底層以 content-addressed Prolly Trees 儲存資料,可對資料列進行 branch、merge、clone 與 diff。這次加入預設啟用的自動 garbage collection、archive dictionary compression、adaptive storage,也提供 beta 版 vector index,讓向量資料同樣能跟著版本走。

現實應用

最直接的場景是資料工程、測試資料管理與 AI 資料集實驗。團隊可以從正式資料切 branch,在隔離環境測 schema 或內容變更,確認後再合併;出錯時也比較容易追差異與回復。需要稽核資料修改、多人維護規則表,或反覆調整 embedding 與向量索引的團隊,也會比傳統備份加人工命名更好管理。

DoltHub 表示,copy-on-write 在匯入期間會留下未進入 commit graph 的中間狀態,新版 GC 會自動回收這些垃圾。新的 archives 格式則透過字典壓縮與去重,官方估計可減少 30% 至 50% 儲存空間。

期望評估

我認為低標期望很務實:既有 Dolt 使用者至少能少做磁碟清理,長期保存版本的成本也會下降。即使不用 vector 功能,GC 與壓縮就有升級價值。

高標部分,我猜 Dolt 有機會成為需要 Git-like data workflow 團隊的正式資料庫,而不只是特殊工具。官方以 sysbench 宣稱讀取比 MySQL 快 5%、寫入快 13%,但這是特定基準與官方測試,實際結果仍要用自己的資料量、查詢型態和版本歷史驗證。vector index 目前也還是 beta,不宜直接當成熟的向量資料庫替代品。

商業策略分析

Dolt 影響的不只 MySQL 周邊,也會碰到 lakeFS、Project Nessie 這類資料版本管理方案。不過產品層級不同:Dolt 是可直接查詢的 SQL database,後兩者更偏 data lake 與 catalog 工作流。

我認為它真正的商業意義,是把資料分支、審查、合併與回復變成資料庫原生能力。對金融、資料治理、AI 評測與多人協作平台值得做 PoC;一般 CRUD 系統若沒有資料版本需求,換資料庫的成本可能高過收益。Postgres 團隊則可觀察共用同一儲存引擎、目前仍為 beta 的 DoltgreSQL。

延伸連結