NoSQL数据重复和性能?



假设用户 A 向用户 B 发送了联系请求,因此在用户 A 的文档中如下所示:

send_request=
{
contact:[{
id:A,
to:B,
status:'pending',
seen:0
}]
}

在用户 B 的文档中如下所示:

recieved_request=
{
contact:[{
id:B,
from:A,
status:'pending',
seen:0
}]
}

每当用户 B 响应(接受或拒绝(或看到一次时,它都会更新两个文档。

我的问题是在两个文档上插入/更新相同数据是否是好方法?我发现好处是阅读会更快,即每当用户 B 登录时,系统只需要查询用户 B 的文档即可获取所有详细信息,而无需引用其他文档。

如果这是一个糟糕的方法,请告诉我。

对一个场景有利的东西对另一个场景不利。即使在同一个程序中。

例如,索引。非常非常适合查询,但会减慢更新速度。

同样在这里,您可以简化/加速查询,但使写入复杂化并引入数据不同步的可能性。如果您可以忍受这些(以及其他缺点,例如增加的存储需求(,那么这是一个"好"的方法。

最新更新