首頁  >  問答  >  主體

mongodb - 資料結構設計上遇到點難題

需求不太好描述,我就抽像一下,用小說資料結構來舉例說明吧,
這樣一下子容易理解多了,理想中的數據看起來應該是這樣的:

db.book.collection 裡的文檔:

{
  name: 小说名
  chapter: [
    {id: 1, name:章节名, text:小说内容},
    {id: 2, name:章节名, text:小说内容},
    {id: 5, name:章节名, text:小说内容},
    {id: 9, name:章节名, text:小说内容}
  ]

}

需求:
1 資料需要分片,因為小說會不斷增加
2 chapter 裡面的章節會不斷增加
3 chapter 裡的DOC能夠按ID範圍讀取,例如取5-9章節
4 chapter 能夠按列表位置讀取,例如讀第0位,就是取出ID為1的文檔
5 可以回傳chapter成員的所有ID,如1,2,5,9

身為一個mongodb新手,我現在還不確定能不能實現以上所有需求,
但有一點,
mongodb好像有:每個文檔最大16M的限制,這樣chapter不斷增加會超出其這個限制,
所以按上面的結構去設計,不知道最終會是一個什麼後果,

能不能把chapter提出來當一個collection?
就是說chapter庫下有很多很多 db.chapter.12345 這樣的東西,
mongodb是否允許有很多很多collection?

如果允許,是否又能以整個collection分片?

PHPzPHPz2704 天前573

全部回覆(1)我來回復

  • 小小卫

    小小卫2017-09-19 21:06:31

    大神 我也不會 沒豆豆了 不影響你了採納下我 謝謝 看視屏沒豆豆是真的煩

    回覆
    0
  • 取消回覆