MongoDB 2.2索引
Posted LiuYanYGZ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 2.2索引相关的知识,希望对你有一定的参考价值。
- 在mysql中已经学习了索引,并知道索引对于查询速度的提升
- mongodb也支持索引,以提升查询速度
步骤一:创建大量数据
- 执行如下代码,向集合中插入10万条文档
for(i=0;i<100000;i++) {
db.t1.insert({name:\'test\'+i, age:i})
}
步骤二:数据查找性能分析
- 查找姓名为\'test10000\'的文档
db.t1.find({name:\'test10000\'})
- 使用explain()命令进行查询性能分析
db.t1.find({name:\'test10000\'}).explain(\'executionStats\')
- 其中executionStats下的executionTimeMillis表示整体查询时间,单位是毫秒
- 性能分析结果如下图:
步骤三:建立索引
- 创建索引
- 1表示升序,-1表示降序
db.集合.ensureIndex({属性:1})
db.t1.ensureIndex({name:1})
步骤四:对索引属性查询
- 执行上面的同样的查询,并进行查询性能分析
db.t1.find({name:\'test10000\'}).explain(\'executionStats\')
- 性能分析结果如下图:
索引的命令
- 建立唯一索引,实现唯一约束的功能
db.t1.ensureIndex({\'name\':1}, {\'unique\':true})
- 联合索引,对多个属性建立一个索引,按照find()出现的顺序
db.t1.ensureIndex({name:1, age:1})
- 查看文档所有索引
db.t1.getIndexes()
- 删除索引
db.t1.dropIndexes(\'索引名称\')
以上是关于MongoDB 2.2索引的主要内容,如果未能解决你的问题,请参考以下文章
MongoDB——索引类型之复合索引(Compound Index)
MongoDB——索引类型之复合索引(Compound Index)