跟踪更新多个mongodb集合的有效方法

时间:2015-09-13 02:18:15

标签: mongodb collections

我正在构建一个事件注册应用程序并将数据存储在MongoDB中。我有3个通过“外键”相互关联的集合,每当其中一个集合更新时,其余的集合也需要更新。因此,我想知道是否有一种模式或方法可以轻松跟踪所有必须更新的集合,或者是否有一种方式让集合在依赖集合更新时“监听”并自动更新。

这是一个简单的例子:

我有表,用户和组的集合。

表:

{
  table_id
  table_count
}

用户:

{
    userId,
    table_id,
    group_id
    table_count
}

组:

{
    group_count
    table_id
}

每当用户注册时,我都需要更新table_countgroup_count字段。同样,如果用户更改表或组,则还需要更新上述字段。即使只有3个集合,我需要编写6个更新语句来考虑所有可能的用户操作(连接表,离开表等)。因此,假设一个应用程序有10个,50个或100个集合,只要其中一个更新,都需要更新,是否有一种有效的方法来跟踪/进行所有更新?

谢谢!

1 个答案:

答案 0 :(得分:2)

听起来像触发器,但MongoDB不支持这些。还有另一种方式。查看this answer in another thread