MongoDB在嵌入式文档中使用索引
问题描述:
的最佳优化在MondoDB中,如果您需要查询嵌入式文档,如何使用索引在嵌入式文档中更好地优化集合?MongoDB在嵌入式文档中使用索引
例如,在以下格式的集合:
{
name: “Andy”,
address: {
city: “London”,
street: “Sunny St.”
}
}
如果我们需要通过查询:
db.collection.find({$and: [ {"address.city ": “London”}, {"address”: “Sunny St."} ] })
哪个索引的类型会更好:
1. db.collection.createIndex({"address":1})
2. db.collection.createIndex({"address.city ":1})
db.collection.createIndex({"address.street":1})
3. db.collection.createIndex({"address.city ":1, "address.street":1})
谢谢
答
对于给定的查询建议数3
db.collection.createIndex({ “address.city”:1, “address.street”:1})由于有逻辑
将做的工作关系城市=>街道
如果您需要更精确地输出mongo如何使用索引并执行您自己的测试,请使用query.explain(“executionStats”)查看索引使用情况。
谢谢profesor。我原以为第一种选择也会达到同样的效果。我会用“executionStats”做一些测试。感谢您的链接 – Selrac