mongodb - 数据结构设计上遇到点难题

 mobiledu2502852923 发布于 2022-10-25 06:25

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

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

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有