如何在MongoDB中从游标拆分/采样?

如何在MongoDB中从游标拆分/采样?,mongodb,batch-processing,sample,Mongodb,Batch Processing,Sample,我有一个包含数百万文档的数据库。我想对每个文档执行一个相对耗时的操作,然后更新它。我有两个相关的问题: 如果我想从给定的游标中随机抽取1000个文档,我该怎么做 我想计算并更新一百万个文档。我在集群上,我想为每批(比如1000个文档)分派一个单独的作业。做这样的事情最简单的方法是什么 谢谢 Uri为了做到这一点,你必须把事情推给员工经理。我建议gearman来做这个。在这种情况下,脚本应该是:1。查询所有要更新的文档,并返回它们的_id。将所有对象ID推入gearman服务器3。让gearman

我有一个包含数百万文档的数据库。我想对每个文档执行一个相对耗时的操作,然后更新它。我有两个相关的问题:

如果我想从给定的游标中随机抽取1000个文档,我该怎么做

我想计算并更新一百万个文档。我在集群上,我想为每批(比如1000个文档)分派一个单独的作业。做这样的事情最简单的方法是什么

谢谢


Uri

为了做到这一点,你必须把事情推给员工经理。我建议gearman来做这个。在这种情况下,脚本应该是:1。查询所有要更新的文档,并返回它们的_id。将所有对象ID推入gearman服务器3。让gearman worker进程在集群4中的每台机器上运行。让每个gearman工作人员从队列中提取一个新的对象ID并处理文档,将其保存回MonogDB。

1。不幸的是,标准游标api不提供随机采样,因此您必须在应用程序端执行此操作。2.你能告诉我们你想做什么的更多细节吗?根据需要,您可能需要检查FindModify、mapreduce或聚合框架。