假设我们在MongoDB数据库中有很多集合,那么说:
鉴于我们有大量的数据库条目以及互连关系(我们称它们为“外键”),那么最好的做法是确保 例如,当必须删除作者时数据库的数据一致性?蛮力方法将是恕我直言,以遍历所有集合,并删除该作者ID的所有外观和关联。详细而言,这意味着:
我想您现在已经知道了,我来自哪里;) 我可以想象这样的动作可能需要一段时间。或者,您可能更喜欢采用事件驱动的方法,这意味着一旦用户打开“喜欢页面”,系统就会即时检查所有喜欢的作者是否仍然存在,并将所有不存在的作者从用户个人资料中删除,同时有可能在页面上出现错误的赞数量 (根据“喜欢”页面,用户喜欢10位作者,其间同时删除了2位作者,但该值尚未更新)。希望大家都知道我问题的本质是什么。我正在寻求有关如何解决此问题的最佳实践建议。预先感谢。
编辑:我知道一个事实,即MongoDB中没有外键这样的字符串,因此我必须自己确保数据一致性。我的问题集中在以下决定上:我是否应该选择蛮力方法(例如一次删除所有受影响的数据)还是由事件驱动,每当要在某处显示受影响的文档时(即,用户打开喜欢的文件)页)。