mongo索引

索引
目录
1、步骤一:创建大量数据
2、步骤二:数据查找性能分析
3、步骤三:建立索引
4、步骤四:对索引属性查询
5、索引的命令
==================================================
正文:
在mysql中已经学习了索引,并知道索引对于查询速度的提升
mongodb也支持索引,以提升查询速度

1、步骤一:创建大量数据
在命令行中执行如下代码,向集合中插入10万条文档
注意:不要在图形界面中执行,因为软件原因无法插入10万条数据就会中断执行
for(i=0;i<100000;i++){
    db.t1.insert({name:'test'+i,age:i})
}

2、步骤二:数据查找性能分析
(1)查找姓名为'test10000'的文档
db.t1.find({name:'test10000'})

(2)使用explain()命令进行查询性能分析
db.t1.find({name:'test10000'}).explain('executionStats')

其中的executionStats下的executionTimeMillis表示整体查询时间,单位是毫秒
性能分析结果如下图,由于机器的配置原因这个时间也会不同

 

 

3、步骤三:建立索引
创建索引
1表示升序,-1表示降序
db.集合.ensureIndex({属性:1})

db.t1.ensureIndex({name:1})

4、步骤四:对索引属性查询
执行上面的同样的查询,并进行查询性能分析
db.t1.find({name:'test10000'}).explain('executionStats')

性能分析结果如下图

 

 

5、索引的命令
(1)建立唯一索引,实现唯一约束的功能
db.t1.ensureIndex({"name":1},{"unique":true})

(2)联合索引,对多个属性建立一个索引,按照find()出现的顺序
db.t1.ensureIndex({name:1,age:1})

(3)查看文档所有索引
db.t1.getIndexes()

(4)删除索引
db.t1.dropIndex('索引名称')

 

posted @ 2020-04-01 16:36  安迪9468  阅读(216)  评论(0编辑  收藏  举报