database - MongoDB - 将聚合/查询结果存储在单独的集合中
问题描述
我面临的困境需要我在聚合查询中筛选大量数据,这将在未来随着我的数据库继续增长而导致性能问题。我不得不避免这个问题,但它已经到了不再可能的地步。
考虑到这一点,我想将涉及这些数组的较低级别聚合查询的结果存储在单独的集合中。我认为这将有助于解决性能问题,因为它在更高级别的聚合查询中需要更少的阶段,并且在 COLLSCAN 中需要更少的工作。一旦客户端进行写入/更新/删除,我希望在后台运行一些东西,它会再次运行查询,然后更新结果。
我想从您的经验中知道您将如何管理这样的解决方案。写入完成后,您是否让客户端在后台运行查询?服务器上是否有程序检查更改然后运行适当的代码?
当然,我理解这取决于具体情况,并且我也理解建议进行适当的索引或更好的数据设计。然而,索引只能走这么远,我不能每次遇到这样的问题时都重新设计我的数据。我对大数据没有太多经验,所以我很感激可以提供的任何智慧。
非常感谢你!
解决方案
推荐阅读
- ios - macCatalyst 共享扩展偶尔会阻止输入?
- php - 如何将函数值(字节)转换为十进制值(每个 0-255)
- python - Python:反向迭代时包含最后一个元素(其中i = 0)
- arrays - Gulp - 管道内的循环
- javascript - 在 React JS 中动态加载图像
- javascript - 我们如何在不复制的情况下对 ArrayBuffer 进行切片?
- android - 升级到 WorkManager 2.7.0:如何为 RxWorker 实现 getForegroundInfoAsync?
- javascript - 在nodejs中从本地导入范围包
- azure - 排除通过 github 操作发送的文件
- javascript - 尝试根据 JSON 数据值绘制圆圈评分