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

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

本博客在听完慕课-入门mongodb这门课后所写

在数据量较小时,不使用索引也可以查询的很快,但是在数据量很大时,就要使用索引提高效率了。

1.db.demo.getIndexes()      可以表中所包含的索引

 

可以看到  key的集合中包含_id ,就是说表中默认的索引就是_id

2.db.demo.ensureIndex({x:1})    

     x是1 正向排序 

      x是-1逆向排序

 注意:在创建索引的时候,使用数据库之前就要创建,不可以使用的时候创建,会严重影响数据库性能,一般索引再插入数据后在创建,可能会对数据库写入有影响,但是可以忽略。

           使用索引查询数据时,性能会大幅度提升。

           索引可以重复创建,如果重复创建,会直接返回成功。

3,_id 索引的使用

他是很多集合默认建立的唯一索引

4.单键索引

db.demo1.ensureIndex({x:1})

值为单一的值

5.多键索引

与单键不同点就是:值具有多个记录,例如数组,集合等

当叉入这条数据后,mongo就会认为x是多键索引。

6.复合索引

个人感觉,就是为查询多个属性值建立的索引。没什么不同。

7.过期索引

一段时间后会过期的索引,过期后会被删除,适合存储登录信息,日志等

db.demo1.ensureIndex({qqq:1},{expireAfterSeconds:10})

第二个参数是该索引的过期时间,就是说插入的数据会在这段时间后被删除。

没更完。。有空在更!

 

转载于:https://www.cnblogs.com/lilight/p/7488865.html

你可能感兴趣的文章
ubuntu的home目录下,Desktop等目录消失不见
查看>>
建立,查询二叉树 hdu 5444
查看>>
[Spring框架]Spring 事务管理基础入门总结.
查看>>
2017.3.24上午
查看>>
Python-常用模块及简单的案列
查看>>
LeetCode 159. Longest Substring with At Most Two Distinct Characters
查看>>
基本算法概论
查看>>
jquery动态移除/增加onclick属性详解
查看>>
JavaScript---Promise
查看>>
Django基于admin的stark组件创建(一)
查看>>
C. Tanya and Toys_模拟
查看>>
springboot jar包运行中获取资源文件
查看>>
基于FPGA实现的高速串行交换模块实现方法研究
查看>>
Java Scala获取所有注解的类信息
查看>>
delphi ,安装插件
查看>>
case when then的用法-leetcode交换工资
查看>>
11.28.cookie
查看>>
BeanShell简介
查看>>
python字符串操作
查看>>
不同程序语言的注释和变量要求
查看>>