索引是一种可选的结构,用户可以根据自身业务的需求来决定在某些字段创建索引,从而加快在这些字段的查询速度。本文主要介绍使用索引的优点和缺点以及索引的可用性和可见性。
索引的优缺点
索引的优点如下:
用户可以在不修改 SQL 语句的情况下,可以加速查询,只需要扫描用户所需要的部分数据。
索引存储的列数通常较少,可以节省查询 IO。
索引的缺点如下:
选择在什么字段上创建索引需要对业务和数据模型有较深地理解。
当业务发生变化时,需要重新评估以前创建的索引是否满足需求。
写入数据时,需要维护索引表中的数据,消耗一定的性能代价。
索引表会占用内存、磁盘等资源。
索引的可用性和可见性
索引可用性
在 Drop Partition 场景,如果没有指定 rebuild index 字段,会将索引标记为 UNUSABLE,即索引不可用,此时,在 DML 操作中,索引是无须维护的,并且在该索引也会被优化器忽略。
索引可见性
索引的可见性是指优化器是否忽略该索引,如果索引是不可见的,则优化器会忽略该索引,但在 DML 操作中索引是需要维护的。一般在删除索引前,可以先将索引设置成不可见,来观察对业务的影响,如果确认无影响后,再将索引删除。
索引和键的关系
键是指一组列或者表达式,用户可以在键上创建索引。但索引和键是不同的,索引是存储在数据库中的对象,而键是逻辑上的概念。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




