查看长时间运行的mongodb聚合作业的进度

Jef*_*sui 15 mongodb aggregation-framework

我使用Mongodb(2.6.0-rc2)聚合框架进行了长时间的工作:http://docs.mongodb.org/manual/core/aggregation-introduction/

我已经在javascript中编写了聚合并将作业作为脚本运行
(即mongo localhost:27017/test myjsfile.js).
启动脚本后,有什么方法可以查看作业的进度吗?

例如,使用示例聚合作业:

db.zipcodes.aggregate([
    {$group: {
        _id: "$state",
        totalPop: {$sum: "$pop"}
    }},
    {$match: {totalPop: {$gte: 10*1000*1000 }}}
])
Run Code Online (Sandbox Code Playgroud)

我希望看到这份工作目前正在执行一个小组,并且完成了70%.

对于mongo的map reduce作业,您可以查看progress via db.currentOp(),其中有一个progress字段,显示完成的作业的百分比,如本文所述:

是否有可能在mongo中获取地图减少进度通知?

聚合有什么相似之处吗?

Roh*_*ain 3

尝试 db.currentOp() 将返回数据库实例正在进行的操作

有关详细信息http://docs.mongodb.org/v3.0/reference/method/db.currentOp/

  • 不幸的是,这并不能回答问题。`currentOp` 不显示 `aggregate` 操作的进度。 (5认同)