0
点赞
收藏
分享

微信扫一扫

Mysql 索引原理/(图文)

天行五煞 2022-02-24 阅读 90

没有一堆似是而非的类比,直白明了,一看就懂。

原文地址:        http://gk.link/a/11bZx

图1. 主键索引(也叫聚簇索引)

值得说明的是,如果知道要查的数据的主键,总是可以优先使用主键索引,根本不需要使用非聚簇索引。然而细细想来,这是很难做到的。因为对于主键的要求是唯一性,不能有重复,对于海量的数据,不可能做到每个主键有实际意义而且又唯一。在必须满足唯一性的前提下,主键只能设计的很抽象,抽象的东西很难直观反映出我们要查的数据的特点,所以在查询之前我们是很难知道主键的。所以只使用主键索引,虽理论可行,但是实践完全没法实现。

        uuid虽然可以做到唯一性,但是占用空间太大,影响存储效率,因为在索引页中也要存储主键(并且uuid对人不友好,肉眼看上去难区分大小)。所以主键一般选用自增id。

        非聚簇索引,不要求键值的唯一性,因为数据在插入时,已经将主键与其绑定,所以它能唯一确定一条数据。

举报

相关推荐

0 条评论