Mongodb中索引
2015-08-12 19:02
387 查看
索引支持的解析度的查询效率。如果没有索引,MongoDB 必须扫描每一个文档的集合,要选择那些文档相匹配的查询语句。这种扫描的效率非常低,会要求 mongod 做大数据量的处理。
索引是一种特殊的数据结构,存储设置在一个易于遍历形式的数据的一小部分。索引存储一个特定的字段或一组字段的值,在索引中指定的值的字段排列的。
索引:
测试:
1.500w记录 没有建立索引情况下,从500w数据库中查询某一条几率需要花多久时间
2.位集合建立索引,在建立索引之后查找,需要多久时间
use mydb
for(var i = 0; i < 5000000; i++) {
db.person.insert({"name":"feng"+i}, "age":i);
}
创建普通索引:db.person.ensureIndex({"age":1})
查看关于索引的相关信息,使用命令 db.collection.stats()
删除索引,使用命令 db.collection.dropIndex({key:1})
创建唯一索引:db.person.ensureIndex({"age":1},{"unique":true}) 则age中的值是唯一的,不能重复
发现:创建索引后,查询数据的时间明显减少了很多。
推荐一个很好的学校mongodb的网站:http://www.yiibai.com/mongodb/mongodb_indexing.html
索引是一种特殊的数据结构,存储设置在一个易于遍历形式的数据的一小部分。索引存储一个特定的字段或一组字段的值,在索引中指定的值的字段排列的。
索引:
测试:
1.500w记录 没有建立索引情况下,从500w数据库中查询某一条几率需要花多久时间
2.位集合建立索引,在建立索引之后查找,需要多久时间
use mydb
for(var i = 0; i < 5000000; i++) {
db.person.insert({"name":"feng"+i}, "age":i);
}
创建普通索引:db.person.ensureIndex({"age":1})
查看关于索引的相关信息,使用命令 db.collection.stats()
删除索引,使用命令 db.collection.dropIndex({key:1})
创建唯一索引:db.person.ensureIndex({"age":1},{"unique":true}) 则age中的值是唯一的,不能重复
发现:创建索引后,查询数据的时间明显减少了很多。
推荐一个很好的学校mongodb的网站:http://www.yiibai.com/mongodb/mongodb_indexing.html
相关文章推荐
- MongoDB查询操作限制返回字段的方法
- 安装mongdb
- mongodba安装及配置windows
- CentOS7 下安装 Nginx + MongoDB + Wildfly
- MongoDB之增删改查(一)
- 学习MongoDB的好地方
- MongoDB索引、聚合
- Mongodb 复制集Replica Set搭建与测试
- Flume 1.5日志收集和存款mongodb安装结构
- MongoDB
- MongoDB 的基本命令
- Java MongoDB 3.X 3.04 Crud 增删查改 deleteMany updateMany updateOne
- MongoDB图形化管理工具
- 为什么pyspider+mongodb只存了一部分数据到数据库,而其他大量数据并没有写入数据库!
- Java中使用MongoDB进行增删改查
- 浅谈MongoDB
- 学习记录之mongodb
- mongodb 命令零散记录
- MongoDB源码概述——内存管理和存储引擎
- MongoDB save or update