zoukankan      html  css  js  c++  java
  • mongodb 索引1

    本博客在听完慕课-入门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})

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

    没更完。。有空在更!

  • 相关阅读:
    Android AlertDialog警告对话框实现
    Android状态栏通知Status Bar Notification
    Android spinner控件的实现
    Winform之UI后台线程
    Winform之自定义控件
    WebForm原理,aspx服务器端与客户端源码比较
    IHttpModule之闲扯
    [算法]方正面试题:N×N矩阵螺旋打印输出
    DOTA版设计模式——工厂方法
    Window服务
  • 原文地址:https://www.cnblogs.com/lilight/p/7488865.html
Copyright © 2011-2022 走看看