MongoDB (四) MongoDB 資料模型

來源:互聯網
上載者:User

標籤:

在 MongoDB 中的資料有靈活的模式。在相同集合中文檔並不需要有相同的一組欄位或結構的公用欄位的集合,文檔可容納不同類型的資料。

MongoDB設計模式的一些考慮
  • 可根據使用者要求設計架構。

  • 合并對象為一個檔案,如果要將它們放在一起。否則分開它們(但確保不需要串連)。

  • 重複資料(有限),因為磁碟空間便宜(相比計算時間)。

  • 不需要串連寫入,而是讀。

  • 最佳化架構是最常見的用例。

  • 在模式上做複雜的聚集。

例子

假設一個用戶端需要一個資料庫設計,設計一個部落格網站,來看看 RDBMS 和 MongoDB 架構設計之間的差異。網站有以下要求。

  • 每一個文章內容都有獨特的標題,描述和網址。

  • 每一個文章內容可以有一個或多個標籤。

  • 每一個文章內容都有其出版商總數喜歡的名稱。

  • 每一個文章內容有評論以及名字,訊息,時間和喜歡的使用者。

  • 對於每個文章,可以是零個或多個評論。

上述要求在RDBMS模式設計,將有至少三個表。

在MongoDB 模式設計就文章一個集合,並具有以下結構:

{   _id: POST_ID   title: TITLE_OF_POST,    description: POST_DESCRIPTION,   by: POST_BY,   url: URL_OF_POST,   tags: [TAG1, TAG2, TAG3],   likes: TOTAL_LIKES,    comments: [          {         user:‘COMMENT_BY‘,         message: TEXT,         dateCreated: DATE_TIME,         like: LIKES       },      {         user:‘COMMENT_BY‘,         message: TEXT,         dateCreated: DATE_TIME,         like: LIKES      }   ]}

因此,儘管RDBMS要顯示資料,需要加入三個表,而在MongoDB資料只是從一個集合。

MongoDB (四) MongoDB 資料模型

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.