【发布时间】:2020-01-24 20:48:11
【问题描述】:
我有一个巨大的 MongoDB 集合,其中包含数亿个文档(例如 300m、400m 并且还在增长)。确保查询和聚合快速运行的最佳解决方案是什么?我有一些想法,哪一个是正确的?
- 将数据拆分为几个较小的集合。
- 将最初聚合的数据存储在单独的集合中,以便对于最常见的查询/聚合可以快速返回结果。
- 添加适当的索引 - 向如此大的集合添加索引是否有意义?
- 保留一个集合并将此数据分布到多台机器(分片)? MongoDB 是否可以处理分布在少数或更多机器上的此类集合?
有没有我错过的更好的解决方案?
【问题讨论】: