05.30 MongoDB 即將支持跨文檔事務

背景

事務很重要,任何數據庫都要通過事務來保障數據的強一致性,不同數據庫會使用不同的方法

  • 關係型數據庫中實體數據會跨多行、多表,所以事務也需要跨表、行。
  • 文檔型數據庫中,文檔內可以有子文檔、數組,在一個文檔中就可以搞定關聯數據,單文檔的更新是原子操作,可以實現類似關係數據庫中的多表事務。

根據 MongoDB 的調查,80% - 90%的應用是根本不需要多文檔事務的,但關係型數據庫的思維在開發人員和DBA的腦子裡很深刻,大家習慣這種用法,再加上還是存在一部分場景是真實需要多文檔事務的,所以,MongoDB 便計劃添加此功能。

早在3年前,MongoDB 就開始行動了,但實際工作非常複雜,涉及到很多方面,例如,存儲層、協議、分片架構、一致性與高可用等等。

MongoDB 4.0

終於,MongoDB 4.0將支持多文檔事務,會在2018年夏天發佈。

這個意義非常重大,使 MongoDB 達到了關係型數據庫級別的

ACID保障,同時兼備 高速、靈活、高度可擴展等優秀特質。

多文檔事務將使開發人員能夠比以往更輕鬆地處理 MongoDB 的各種應用場景,而對於許多人來說,只需知道 MongoDB 能很好的支持事務了,就會感覺很踏實。

MongoDB 事務的用法與關係型數據庫相似,示例代碼:

MongoDB 即將支持跨文檔事務

小結

MongoDB 4.0 的事務可以在單複製集中很好的工作,MongoDB 4.2將支持分片部署結構。


分享到:


相關文章: