mongodb - 数据结构设计上遇到点难题
PHPz
PHPz 2017-04-27 09:02:39
0
1
624

需求不太好描述,我就抽象一下,用小说数据结构来举例说明吧,
这样一下子容易理解多了,理想中的数据看起来应该是这样的:

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分片?

PHPz
PHPz

学习是最好的投资!

모든 응답(1)
小小卫

스승님, Doudou가 없으면 어떻게 될지 모르겠습니다. Doudou 없이 시청하는 것이 정말 짜증납니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿