我对 MongoDB 中的索引有疑问。(我使用 mongo-java-driver)
如果数据库包含许多对象,所有这些对象都具有完全相同的结构,唯一的区别就是某个 ID 字段的值和名称。在 ID 字段上的某些对象之后,索引集合中的 ID 字段会加快查询速度吗?
我使用 MongoHQ “Cloud” MongoDB,也许我做错了什么,但在这种情况下索引不会获得更好的性能。
谢谢你的时间。
/* just for testing */
DBCollection table = db.getCollection("user");
table.createIndex(new BasicDBObject("uuid", 1));
....
/* write */
for (int i = 0; i < numberOfInserts; i++) {
BasicDBObject document = new BasicDBObject();
document.put("name", "hello");
document.put("uuid", randomUUID.toString() + i);
table.insert(document);
}
....
/* read */
for (int i = 0; i < numberOfInserts; i++) {
whereQuery.put("uuid", randomUUID.toString() + i);
DBObject findOne = table.findOne(whereQuery);
}