美文网首页我爱编程
索引学习笔记

索引学习笔记

作者: 扎哈_ | 来源:发表于2018-03-08 20:34 被阅读0次

    两个关键词

    • ASC是升序排序
    • DESC是降序排序

    单键索引

    • 为单个字段创建索引,如果这个字段不是在大多数场景下能过滤90%的数据,或者数据量非常大的情况下,尽量建立组合索引,毕竟数据库通过单键索引查询后剩下的内容没有索引它就会逐个查找,消耗大量IO。

    组合索引

    • 为多个字段创建索引,一个经常用来过滤数据的字段应该放在索引首位,然后其他的字段次之。不要用过多的字段作为组合索引,评估这几个字段能过滤掉的数据量,差不多就行了。
    • 需要注意下列情况
      建立ABC组合索引相当于建立了A,AB,ABC索引,如果执行A或者AB或者ABC查询都会使用索引查询,
      如果执行AC则不会使用索引。
      mongodb 是个特例,如果执行AC也是会使用索引的。但是执行BC不会使用索引
      mongodb 查询时可以不按照索引字段顺序时使用索引查询

    稠密索引

    • 所谓稠密索引就是数据表中每条记录的字段值都成为索引的一部分,索引的这个字段后面跟一个存储地址。这样就可以先通过排好序的索引字段找到这个值,再根据索引里面存储的存储地址找到存储记录了。

    稀疏索引

    • 稀疏索引是为了避免数据量过大而导致索引过大设计的,它只根据一个存储块建立一条索引记录,比如可能一个存储块中有100条记录,但它只存储这个存储块的第一条记录,然后给一个存储地址指向存储块,数据库查找的时候先找到索引指向的存储块,再进入存储块查找准确的值。

    相关文章

      网友评论

        本文标题:索引学习笔记

        本文链接:https://www.haomeiwen.com/subject/axxufftx.html