数据库索引

作者: Fjbct | 来源:发表于2016-07-30 00:10 被阅读0次

毫无疑问,索引的存在是为了提高查询效率而存在的。但有时索引的不正确使用反而会降低数据库的查询效率。

使用索引时,首先要考虑的是创建索引的这张表是用来做什么的。如果这张表需要经常性的更新,那我们就应该谨慎一些了,了解索引机制的都明白,索引是要针对原表来创建一张对应的地址表的,对于经常更新的表创建大量的索引无疑会增加更新工作的代价。

然后,我们需要考虑的便是数据的可选择性,即给这个属性加上索引所能代来的价值,通常唯一性索引的可选择性就很高,特别是当我们要读取少量数据时,像主键这样的唯一性索引是非常好用的。而且我们还可以多使用一些复合属性的索引,这样可以提高索引的重用率,例如:给A、B属性加上索引,那么这个索引对A、B和AB都可使用。而且创建索引时,把可选择性较高的属性放在前面也可增加效率。

当可选择性非常差时,索引就变成了一场灾难。使用索引时,我们可以将数据的读取理解为一条一条的定向读取,而如果可选择性非常差,我们将会读取到大量的数据,那么索引无疑会是一件很痛苦的事。尤其是我们还无法保证我们的数据在磁盘存储的无序性有多大,那么此时索引无疑是一场灾难。

我们还应当考虑数据的均匀性,在同一个属性中,不同的值是否都具有数量差别并不大的元组个数,这是个非常值得思考的问题。因为它非常有可能造成查询性能的不稳定。也许我们可以通过数据库统计数据来提供一些决策方式,但无疑数据的均匀性也是设置索引时的一个重要考虑条件。

相关文章

  • 数据库索引记录

    本文用来记录数据库索引相关内容; 1】数据库索引分为单列索引,组合索引,全文索引,空间索引 2】单列索引:只有一个...

  • 索引,序列,视图

    1、数据库索引索引是数据库对象之一,用于加快数据的检索,类似于书籍的索引。在数据库中索引可以减少数据库程序查询结果...

  • Sql索引优化—转载

    数据库索引使用方式 使用索引是提高数据库查询效率的主要方式,下面从索引结构,索引类型,索引操作,命中索引几个方面来...

  • 数据库 - 索引

    索引 索引 索引的建立对于数据库的高效运行是很重要的。索引可以大大提高数据库的检索速度。 索引分单列索引,组合索引...

  • [Mysql]Mysql索引实现原理及相关优化策略

    数据库索引 数据库索引是什么? A database index is a data structure that...

  • 数据库索引定义和类型

    数据库索引类型及实现方式 1、索引定义 数据库索引好比是一本书前面的目录,能加快数据库的查询速度。索引是对数据库表...

  • 数据库索引结构总结

    [TOC] 参考 数据库索引数据结构总结 本文摘抄自数据库索引数据结构总结 1. 摘要 数据库索引是数据库中最重要...

  • MySQL 索引

    MySQL 索引 数据库索引的原理:数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表...

  • 『数据库』索引的工作原理

    数据库索引能够提高数据库的查询效率,那么索引到底是什么。 什么是索引 索引本身这个名字已经能回答这个问题了,索引就...

  • PostgreSQL基础知识--索引

    索引是增强数据库性能的常用方法。索引使得数据库在查找和检索数据库的特定行的时候比没有索引快得多。但索引页增加了整个...

网友评论

    本文标题:数据库索引

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