我正在通过我的Java代码创建一个mongodb集合,我想在这个集合上创建索引,但是根据在线教程,我意识到创建后台索引更好,因为它不会锁定集合来创建索引。 其代码如下:
DBCollection ActivityLogCollection = this.db.createCollection(this.mrCollName, new BasicDBObject().append("capped", false));
ActivityLogCollection.ensureIndex("act");
我如何确保将其创建为后台集合。我尝试使用
DBObject indexOptions = new BasicDBObject();
indexOptions.put("background", true);
然后将其传递为
ActivityLogCollection.ensureIndex(indexOptions,"act");
但是,这所做的是创建一个以键为“背景”的索引。
任何有关同一问题的帮助将不胜感激。
谢谢
瓦伊巴夫
最佳答案
将索引选项作为第二参数传递给ensureIndex
:
DBObject indexFields = new BasicDBObject("act", 1);
DBObject indexOptions = new BasicDBObject("background", true);
ActivityLogCollection.ensureIndex(indexFields, indexOptions);
关于java com.mongodb.DBCollection 创建后台索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20784181/