我有这样的集合:
{
"_id" : ObjectId("51f4ad560364f5490ccebe26"),
"fiTpcs" : [
"uuid1",
"uuid2",
"uuid3",
"uuid4",
"uuid5"
],
"fiTpcsCnt" : 5
}
Run Code Online (Sandbox Code Playgroud)
fiTpcs列表很长,之后可能会有数百个.当我检索我的收藏时,我希望得到一个有限的fiTpcs列表,一次说20个并发出单独的请求以从fiTpcs获取后续数据.我只想确保稍后当我有更多数据时查询不会变慢.有没有办法在mongodb中做到这一点?直到现在,我一直在做
db.userext.find({"_id" : ObjectId("51f4ad560364f5490ccebe26")}).pretty();
Run Code Online (Sandbox Code Playgroud)
它总能让我获得完整的fiTpcs数组.我在Spring中使用java驱动程序,使用Spring/java的解决方案也没问题.请注意 - 如果解决方案需要mongo扫描整个fiTpcs数组然后切片它的一部分,它并没有真正增加任何性能优势,这不是我想要的.
mongodb ×1