【发布时间】:2015-09-13 03:18:49
【问题描述】:
我在 StackOverflow 上遇到过很多同样的问题。没有提供有效的可靠解决方案,所以我们开始:
我需要从我的 MongoDB 数据库中大约 500 万个文档中以一种有效的方式随机选择一个文档。
我尝试获取.count 并使用.skip 来获取随机文档,但这需要将近三秒钟,而且效率非常非常低。
我无法对文档进行更改(例如添加“随机”)条目到每个文档或更改它们的 _id。
我尝试了添加带有增量 _id 的文档的解决方案(使用 .skip 选择一个随机的 _id 绕过),但这比我尝试在短时间内添加许多文档时带来的麻烦更多时间。
以增量方式添加数据或选择随机文档不应该这么难。我要么遗漏了一些常识,要么做错了什么,或者这就是事实......
想提出这个话题并得到你的回应。
【问题讨论】:
-
Random record from MongoDB 的可能重复项
-
您提供的链接中没有解决方案,还有一些线程已过时。
-
发布示例文档
-
@Zettam 该问题与您所问的问题完全相同,并且有十 (10) 个赞成的答案。当它没有适用于您的情况的解决方案时,stackoverflow 没有。当你认为它已经过时时,就给它一个赏金。
-
{"name":"John","content":"someLongStringHere","json":"someHueJsonObcHere"}