MongoDB Advanced Schema Design Pattern - Archive Pattern
用一句簡單的話說
將不常用的舊資料移出主要 collection,以保留主要資料集的查詢效能。
場景
- write operation 會影響 collection 中的所有 index,而過大的 index 佔用記憶體
- 常用的 collection 裡放了一堆不常用的 document 會是效能瓶頸
簡單的做法
- 複製不常用的 document 到 archive 裏
- 如果引用的 document 也 reference 其他 document 就會有點複雜
- 可以使用 extended reference pattern 在 archive document 加上 reference 去強化 archive 的依賴關係
- 選擇正確的 online storage ,可以是外部的其他空間,去儲存 archive,或是 mongodb 自己的服務例如
mongodb online archive service
,並刪除舊的文檔,這裡不演示,但記得常常去 archive 並且 delete 不要的資訊