【数据库】什么是数据库索引?数据库索引的作用

作为一名开发人员,肯定会接触各种各样的数据库 面对各种各样的数据库的时候 肯定也会接触到数据库索引

我们在每天的技术交流 性能优化中,数据库索引也是很关键的一环,大家都会谈及

也就是说你可以用非常短的时间内,查到任何一个你想要的数据

而数据库索引在作为动词时,就是构建这种数据结构的过程

我们给任何一个字段创建索引的时候,就是将写入数据库中的数据 根据这种数据结构进行组织和排序

保证让你写入到其中的数据维持在一种有序的状态

因此当你通过条件来查找他们时,就可以根据这种数据结构特有的算法,快速的找到你的目标结果

这个也就是数据库索引的本质,既然数据库索引如此高效,那数据库中的索引是不是就可以随便建呢?

其实是不能的啊,数据库索引的存在虽然加速了查询效率,但是因为写入的数据要根据数据结构进行排序,所以是牺牲了一部分写入效率的

此外当你根据一个具体的字段,来构建这种特定的数据结构时,每一个这样的数据结构就会包含这个字段的全量数据

也就是说,对于一张数据库表而言,你建设多少个索引,就意味着相关的数据会被复制多少次

数据库索引建设的越多,数据库所占用的磁盘空间也就越大

 这又是一个效率与空间的权衡问题数据库索引是什么-为什么要使用数据库索引-什么是数据库索引

数据库索引是什么,为什么要使用数据库索引,什么是数据库索引

数据库索引是对数据库表中一列或者多列的数值 进行排序的一种结构

使用索引可快速访问数据库表中的特定信息

如果想按照,比如说特定产品的名字查找 相比在表中搜索所有的行 索引有助于更快的获取信息

简而言之 数据库索引是排好序的数据结构

打个比方 如果说合理的设计使用索引的My SQL是一辆高速跑车

那么没有使用索引的My SQL 就是一辆脚力自行车

索引的一个主要目的就是加快检索表数据 减少数据库IO的成本 降低CPU的消耗

除此之外 通过创建唯一性索引 可以保证数据库表中的每一行数据的唯一性

索引可以加速表和表之间的连接 特别是在实现数据的参考完整性方面 嗯

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享