如何在NoSQL(MongoDB)中存储注释?

1路

评论嵌入在Post文档中:

{
  "_id": ObjectId(12345),"title": "Cat ate elephant!","body": "Lorem ipsum dolor sit amet,consectetur adipiscing elit. Aenean convallis pretium vulputate.","comments": [
    {"name": "Cat","body": "MEOW!"},{"name": "Elephant","body": "I was eaten by cat,lol!"},{"name": "Human","body": "I am hungry!"}
  ]
}

2种方法

帖子和评论之间的关系(在单独的文件中).帖子有很多评论:

// POST //
{
  "_id": ObjectId(12345),"title": "Cat ate elephant!"
  "body": "Lorem ipsum dolor sit amet,consectetur adipiscing elit. Aenean convallis pretium vulputate."
}


// Comments //

{
  "_id": ObjectId(...),"post_id": ObjectId(12345),"name": "Cat","body": "MEOW!"
}

{
  "_id": ObjectId(...),"name": "Elephant",lol!"
}

{
  "_id": ObjectId(...),"name": "Human","body": "I am hungry!"
}

哪种方式更好?

解决方法

方法1

>无需加入=>快速访问数据
> NoSQL的做法
>每个评论只与该帖子有关,所以为什么不将它们存储在一起(将标题和正文存储在一起;)

如果您有大型文档,> 15.5兆字节,并且您收到了一些评论,那么您可能需要将它们存储在其他地方.这是因为最大文档大小为16兆字节.

方法2是RDMBS的方式,Mongo没有内置的连接,所以你需要在你的应用程序中执行它们.

相关文章

文章浏览阅读752次。关系型数据库关系型数据库是一个结构化的...
文章浏览阅读687次,点赞2次,收藏5次。商城系统中,抢购和秒...
文章浏览阅读1.4k次。MongoTemplate开发spring-data-mongodb...
文章浏览阅读887次,点赞10次,收藏19次。1.背景介绍1. 背景...
文章浏览阅读819次。MongoDB连接失败记录_edentialmechanisn...
文章浏览阅读470次。mongodb抽取数据到ES,使用ELK内部插件无...