在mongodb中存储大型列表的最佳方法

ZEC*_*nmo 5 database mongodb node.js

在不牺牲查询性能的情况下在mongodb中存储大型数组/列表的最佳方法是什么?

我有一个由列表组成的大集合(> 1M条记录)。每个列表的随机长度在0到> 40k个记录之间。

我从不修改/重新排列列表索引-我只在最后添加新项目

访问数据时,我需要能够按给定列表中的索引/字段进行搜索。例如,我可能想像这样运行搜索:

myCollection.find({list: 'awesomeList', index: {$gt: 500}})
myCollection.find({list: 'otherList', name: 'Karl'})
Run Code Online (Sandbox Code Playgroud)

到目前为止,我对前进的方向有一些想法:

  1. 将每个列表项存储为带有“索引”成员的文档
  2. 将每个列表项存储为带有自定义ObjectId的文档以反映索引
  3. 以二叉树结构将列表项存储在父项上(???)