一、索引的优点
1)创建索引可以大幅提高系统性能,帮助用户提高查询的速度;
2)通过索引的唯一性,可以保证数据库表中的每一行数据的唯一性;
3)可以加速表与表之间的链接;
4)降低查询中分组和排序的时间。
当然了,没有任何事情是完美的,索引也是如此,尽管索引好处非常多,但是其也有局限性合理性以及片面性。
二、索引的缺点
1)索引的存储需要占用磁盘空间;
2)当数据的量非常巨大时,索引的创建和维护所耗费的时间也是相当大的;
3)当每次执行CRU操作时,索引也需要动态维护,降低了数据的维护速度。
三、总结
一般来说,创建索引的情况需要排除以下几种特点:
1)在查询中很少使用的列不应该创建索引。
因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。
2)数据值很少的表格也不应该创建索引。
因为,当数据太少的时候,全盘搜索可能都比索引查找还快,就没有必要创建索引了,反而还会降低磁盘空间和性能。
3)定义为text、image和bit数据类型的列不应该创建索引。
因为,这种列要么是数据相当大要么是数据相当少。
4)当修改性能远大于检索性能时不应该创建索引。
因为,修改性能和检索性能是相矛盾的,两者只会一增一减。