使用 java 驱动程序检查 mongo 数据库中的索引创建进度

Check the index creation progress in mongo DB using java driver

我在 MongoDB 中有大约 1000 万条数据。需要添加新的复合索引。我使用以下代码创建索引。在后台使用 ensureIndex 和选项创建。

MongoStore.ads().ensureIndexes("MyCollection", MyCollection.class, true);

我的问题是如何跟踪索引创建进度。确认索引已创建 100% 后,我还需要执行其他几组操作。

请帮助我检查 java 中的进度。

我正在使用 mongo-java-驱动程序 3.5 版本。

您无法使用 mongo-java 驱动程序监视它们。但是,您可以在 Mongo shell:

中监控创建的索引
db.currentOp({"command.createIndexes": { $exists : true } }).inprog.forEach(function(op){ print(op.msg) })

这将 return 输出如下:

Index Build (background) Index Build (background): 83727/271147 30%

有关 currentOp() 的更多信息,请参阅 here

希望这会有所帮助:)