博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mongodb索引
阅读量:6909 次
发布时间:2019-06-27

本文共 872 字,大约阅读时间需要 2 分钟。

第三章 索引操作及性能测试


索引在大数据下的重要性就不多说了 

下面测试中用到了mongodb的一个客户端工具Robomongo,大家可以在网上选择下载。官网下载地址:

插入 测试数据

首先插入100万条测试数据

for(var i=1;i<1000000;i++){ var person={Name:"jack"+i,Age:i,Address:["henan","wuhan"],Course:[{Name:"shuxue",Score:i},{Name:"wuli",Score:i}]}db.DemoTest.Person.insert(person) }

 

性能分析函数(explain)

mongodb中给我们提供了一个关键字叫做“explain"做性能分析。

执行查询分析如下:

db.DemoTest.Person.find({Name:"jack5784124"}).explain()

从上图我们可以看出在没有建立索引的情况下,查询的时间大约是是615毫秒。

创建索引

db.TestCollection.Person.ensureIndex({Name:1}) -----1代表索引按照字母升序排列

查询如图:

从图上我们可以看出,查询时间变成了大约2毫秒,性能提高了几百倍。

 

唯一索引

和sqlserver一样都可以建立唯一索引,重复的键值自然就不能插入,在mongodb中的使用方法是:

db.TestCollection.Person.ensureIndex({Name:1},{"unique":true})

 

组合索引

有时候我们的查询不是单条件的,可能是多条件,那么我们可以建立组合索引来加速查询。

db.TestCollection.Person.ensureIndex({Name:1,Age:1})

 

删除索引

 

db.TestCollection.Person.dropIndex("索引名称")

转载于:https://www.cnblogs.com/wangjing666/p/6837115.html

你可能感兴趣的文章
docker下载镜像报net/http: TLS handshake timeout
查看>>
DOM-Node类型
查看>>
HttpClient是什么
查看>>
2018.3.27 二周第二次课
查看>>
文件迁移:将/home迁移到一个独立分区中
查看>>
网站seo如何利用指令查询网站收录
查看>>
Python语音识别终极指北,没错,就是指北!
查看>>
WPS文档转PDF格式的方法是什么
查看>>
大数据技术人员工具包最全集合
查看>>
Visual Paradigm 教程[UML]:从问题描述到模型
查看>>
BaseDB MongoDb dao数据库操作类
查看>>
一键快速添加烟雾效果的方法(180个烟雾视频特效)
查看>>
linux系统的/proc下文件详解
查看>>
一次tomcat服务器被挂马的解决经历
查看>>
linux 内核 hash table 的使用
查看>>
我的友情链接
查看>>
深入讲解Android中Activity launchMode
查看>>
范围管理(如有侵权请联系作者删除)
查看>>
BuildTools_Index
查看>>
python脚本按表备份MySQL数据库
查看>>