索引的含义及特点
Posted BaoZi969
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了索引的含义及特点相关的知识,希望对你有一定的参考价值。
什么是索引
索引的本质一种数据结构,由数据库中一列或者多列组合起来的,目的是快速进行查询,提高数据库的性能。
mysql的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引、空间索引等(了解,附链接https://www.cnblogs.com/uphold/p/11221331.html)
索引的含义和特点
通过索引,查询数据的时候可以不用读完所有的信息,而是只是查询索引列,否则的话就会将数据库中的所有数据进行匹配。
索引有两种存储类型,B-tree索引 和 hash索引
https://www.cnblogs.com/zhouguowei/p/9753828.html(B-tree索引 和 hash索引的区别)
innoDB 和 MyISAM 存储引擎支持 B-tree索引,Memory存储引擎默认支持Hash索引
索引的优点:
1、可以提高检索数据的速度,对有依赖关系的子表和父表之间的多表联查时,可以提高查询速度;
2、使用分组和排序字句进行数据查询,同样可以节省查询中分组和排序的时间
索引的缺点:
1、创建和维护索引比较消耗时间
2、增删改数据时,需要动态维护索引,造成速度的降低
技巧:
索引可以提高查询速度,但是会影响插入速度,因为在向有索引的表中插入数据的时候,数据库会按索引进行排序,降低了插入的速度,尤其是插入大批量数据的时候速度影响更明显。
可以先删除索引,然后插入数据,插入完成后,再创建索引
以上是关于索引的含义及特点的主要内容,如果未能解决你的问题,请参考以下文章