[英]Mongo Java-driver: recreation indexes after collection dropping
我有必要从mongo集合中删除所有数据。 删除collection的速度比collection.remove(new BasicDBObject())
更快。 但是它也删除了索引定义。 因此,我想在删除集合后恢复索引定义。
总的来说,我有以下计划:
对我来说,问题是应检索/传递索引重新创建的确切值。 例如,将对所有类型的索引执行以下正确工作:
List<DBObject> storedDefinitions = coll.getIndexInfo();
coll.drop();
for (DBObject storedDefinition : storedDefinitions) {
coll.createIndex(storedDefinition.get("key"));
}
如果没有-实现目标的最佳方法是什么?
谢谢你的帮助!
你近了 您将需要读取检索到的索引的索引选项,然后使用该方法的createIndex(DBObject key,DBObject options)版本将其应用于新创建的索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.