继续mongoDB的学习

--索引具体解释

--索引管理

--空间索引

1.创建简单索引

(1)先准备20万条数据

for(var i = 0;i< 200000;i++){

db.books.insert("number":i,"name":i+"book")

}

(2)检查一下查询性能

var start = new Date()

db.books.find({"number":123456})

var end = new Date();

end - start

(3)为number创建索引

db.books.ensureIndex({"number":}) 此处1代表正序,-1代表倒序

2.须要注意的地方

-索引的创建在提升查询性能的同一时候会影响插入的性能

-对于常常查询少插入的文档能够考虑使用索引

-每一个键都建立索引不一定能够提高性能

-在做排序工作时,假设是大数据量也能够考虑索引

3.创建索引时能够同一时候指定索引的名字

db.books.ensureIndex({"name":1},{name:"bookname"})

4.唯一索引

怎样解决集合books不能插入反复的文档

建立唯一索引:db.books.ensureIndex({"name":1},{unique:true})

5.剔除反复值

假设建立唯一索引之前,已经有反复文档,怎么办?

db.books.ensureIndex({"name":1},{unique:true,dropDups:true})

6.hint

怎样强制查询使用指定的索引

db.books.find({"name":"obook"}).hint({"name":1})

指定索引必须是已经创建好了的索引

7.explain

怎样具体的查看本次查询使用哪个索引和查询数据的状态信息

db.books.find({"name":"0book"}).explain()

8.索引的创建过程在后台运行

db.books.ensureIndex({"name":"0book"},{bookground:true})

9.删除索引

db.runCommand({dropIndexes:"books",index:"name_1"})精确删除

db.runCommand({dropIndexes:"books",index:"*"})全部都删除

最新文章

  1. jvm内存区域
  2. Azure ARM (11) ARM模式下,创建虚拟机并配置负载均衡器
  3. 浅谈JSON数据解析方法
  4. nodeJS Express 删除 x-powered-by
  5. [转帖]DAS、NAS、SAN、iSCSI 存储方案概述
  6. Android广播BroadcastReceiver 一
  7. when compile /home/wangxiao/NVIDIA-CUDA-7.5 SAMPLES, it warning: gcc version larger than 4.9 not supported, so: old verson of gcc and g++ are needed
  8. JavaScript高级程序设计之函数
  9. 【狼】unity3d iTween插件的学习
  10. 如何写一个网页标题title的闪动提示
  11. mysql数据库中列转行
  12. svn在linux下的使用(svn命令行)ubuntu 删除 新增 添加 提交 状态查询 恢复
  13. python的re正则表达
  14. dubbo本地服务化实现(dubbo三)
  15. C++设计模式——备忘录模式
  16. 信号基础知识--FFT DFT
  17. c++优先队列(堆)
  18. WordPress后台的文章、分类,媒体,页面,评论,链接等所有信息中显示ID并将ID设置为第一列
  19. go_封装
  20. 分布式系统漫谈一 —— Google三驾马车: GFS,mapreduce,Bigtable

热门文章

  1. Java反射获取类对象的三种方式
  2. 更新到xcode10以后出现几个无奈的问题,谨已此篇告诫广大ioser升级请慎重
  3. Codeforces Gym 101471D Money for Nothing(2017 ACM-ICPC World Finals D题,决策单调性)
  4. POJ 2505 A multiplication game [博弈]
  5. ZFS -世界上最高级的文件系统之一
  6. html中常用的标签小结
  7. 查看linux 系统 当前使用的网卡
  8. phpexcel设置所有单元格的默认对齐方式
  9. 利用js实现table增加一行
  10. JDK8 下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html