簡單描述:
直接進入了解屬性模式。它特別適合以下的情況:
實例:
一個訂單資料文檔,其實是有很多需要記錄的時間,例如創建時間,支付時間,發貨時間等等。在設計資料結構的時候當然第一時間就會想到如圖:
實際上這種設計在時間類型比較少的情況下是沒有太大問題,但是結合了實際業務場景,一張訂單的時間當然不會太少,有時候為了優化排序,不得不建立相應的所以,現在問題就來的,根據這麼多字段逐個建立索引那可能建立很多,這樣反而會降低整體查詢的效能。那麼這時候使用屬性模式就很適合了。如下圖:
如果訂單資料結構考慮使用了這種模式後,就不需要重複為相似的欄位子集建立索引,大大提高查詢效率。
結論:
屬性模式針對每個文件中許多類似欄位提供了更簡單的文件索引。透過將這個資料子集移到一個鍵值子文件中,我們可以使用不確定的欄位名,為資訊添加額外的限定符,並更清楚地說明原始欄位和值的關係。當我們使用屬性模式時,由於需要的索引更少,查詢變得更簡單更快。
更多SQL相關技術文章,請造訪SQL教學欄位進行學習!
以上是MongoDB – 使用模式建構之屬性模式的詳細內容。更多資訊請關注PHP中文網其他相關文章!