mongodb - MongoDB 扩展参考模式 - 管理数据重复
问题描述
我是 MongoDB 的新手,并试图集中精力管理重复数据。扩展参考模式(链接)就是一个很好的例子。当您有两个相关的集合(例如,Customers 和 Orders)时,出于性能原因,复制一些原本只存在于引用集合中的信息是有意义的。例如,Order 集合可能会重复客户的姓名,以避免与某些查询进行不必要的连接。
我完全明白。而且我完全明白你应该小心你复制的数据(“如果[重复的字段]不经常更改它效果最好”),因为更新这些记录可能会很昂贵。我不明白的是你应该如何跟踪所有数据的存放位置。假设您确实需要更新客户的姓名。如果该信息在 Order Collection 中的多个订单中重复,并且可能还有一两个其他集合,那么追踪所有客户名称的位置(以及更改它的机制)听起来就像一场后勤噩梦!
是否有某种 Mongo 巫术魔法可以帮助进行此类更新,或者这只是一个必然混乱的过程?
解决方案
您必须管理应用程序上的所有更改,因此在选择一种或另一种模式时必须小心,它们不是灵丹妙药。
请记住,并非所有数据都需要更新,具体取决于应用程序的情况、数据和上下文。
推荐阅读
- javascript - 在角度中获取元素的像素位置
- android - 如果从 Android 设备打开电子表格,则不会调用 GoogleScript > 可安装触发器 > onOpen(),为什么?
- c++ - 不清楚 ANSI CUB/CUF 行为
- ios - Youtube dl 不是用 python 2 执行的
- java - 如何为我的 RecyclerView 保存InstanceState?
- php - 抽象类中的抽象 __construct。声明必须兼容... PHP 的错误?
- batch-file - 从命令提示符打印目录到文本文件时缺少特殊字符
- sql - BigQuery concat 返回 null 连接空字符串
- c - 如何让子进程等待孙子进程?
- c# - 哪种方式更适合 MySQL 连接字符串?