MongoDB非常擅長查詢大量的數據並經常更新這些資訊, 在多數的情況之下, 我們只要查詢資訊最新的狀態, 那假設我們需要查詢資料的上一個狀態呢? 如果我們需要一些文檔版本控管功能時怎麼辦呢? 這就是我們可以使用版本控管設計模式的地方了。
概念
這個模式之下會保存文檔的歷史版本, 我們就不用導入另外一個版控系統, 怎麼做呢?
- 首先我們要在需要版控的document加上一個欄位version, 用以追蹤這個document是哪一個版本。
- 會有兩個Collection, 一個是最新的資料, 也是最常用來查詢的地方, 另一個則會存放資料的修訂版。
什麼情況下適合使用這種模式?
- 每個Document不會有太多的修訂版。
- 不會有太多的Document要做修訂版的功能。