MongoDB中的數據具有靈活的模式,文檔在同一集合,但他們不需要具有相同的字段或結構集合,集合文檔中的公共字段可以包含不同類型的數據
MongoDB中的數據具有靈活的模式,與sql數據庫不同,sql數據庫必須在插入數據之前確定和聲明表的模式,MongoDB的集合不會強制執行文檔結構,這種靈活性有助于將文檔映射到實體或對象,每個文檔可以匹配表示實體的數據字段,即使數據具有實質性的變化。然而集合中的文檔具有類似的結構
數據建模中的關鍵挑戰是平衡應用程序的需求,數據庫引擎的行能特征和數據檢索模式,在設計數據模型時,請始終考慮數據的應用程序使用情況(即數據的查詢,更新和處理)以及數據本身的固有結構
在MongoDB中設計架構時有一些考慮:
1,根據用戶要求設計架構
2,將對象合并到一個文檔中,否則分開它們(但確保不需要連接)
3,復制數據(但有限制),因為與計算時間相比,磁盤空間比較空閑
4,在寫入時加入,而不是讀取時加入
5,在最常用的用例優化架構
6,在模式中執行復雜聚合