【发布时间】:2019-07-11 17:50:40
【问题描述】:
我有一个包含近 8kk 条记录的集合,此时某些操作(如写入)需要很长时间才能完成,为了解决这个问题,我认为可以将文档拆分到多个集合中,例如;
具有从 a 和 e 开始的特定键的所有文档将在 a_to_e 集合中,从 f 和 j 开始的文档将在 f_to_j 集合中,依此类推...
这个实现在代码(python)中不需要太多负担,但我在想这样的资源是否在 mongodb 上以某种方式“默认”可用,如果是,我怎么能实现它,如果不是,这个是这种情况下可接受的解决方案吗?
【问题讨论】:
-
您使用的是哪个特定版本的 MongoDB 服务器?将单个集合拆分为多个集合并不会真正改变工作集要求:您仍在读取和写入相同的数据(可能有更多打开的文件供
mongod管理)。除非您不需要处理可能最终位于不同集合中的文档范围,否则使用多个集合也会使查询更具挑战性。我会考虑调整您的性能:调查缓慢的查询/命令并可能增加资源。
标签: mongodb