我有一个MongoDB架构设计,它在同一个集合的不同文档中嵌入了一个重复的子文档(同样的ObjectId):
文档看起来像:
{"inbox":
{ "_id": ...,
"conversations": [
{"_id": ...,
"messages": [{"_id": ...,
"body": ...}]
]
}
}
在收件箱集合中,每当有两个人进行对话时,我会将对话的副本推送到两个收件箱。
我的计划是简单地保持对收件箱的读取,并允许多文档更新将消息写入具有相同会话ID的所有会话。它似乎按预期工作,但我错过了允许在集合中的不同文档中重复子文档ObjectId的缺点吗?