我是靠谱客的博主 合适小兔子,最近开发中收集的这篇文章主要介绍mysql索引怎么设计_mysql索引设计,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

mysql索引设计

1.B树与B+树的区别?

B-Tree:一个节点可以拥有大于2个子节点的平衡多叉树,所有关键字在整颗树中出现,包括在非叶子节点也能命中,

叶子节点之间没有链表

B+Tree:每个叶子节点包含指向一个叶子节点的指针,方便范围遍历,所有记录在同一层的叶子节点中。

2.MySQL中HASH索引和B+树索引的区别?

hash索引,基于哈希表实现,不是顺序存储,只正对于精确匹配的查询有效,对每一行数据,存储引擎都会

对所有的索引列计算一个哈希码,哈希索引将哈希码存储在索引中,同时在哈希表中存储指向每个数据行的指针。

B+Tree:按照索引键顺序存储,适合范围查找。

3.聚簇索引与辅助索引的区别?

聚餐索引:主键的B+Tree,叶子节点包含记录行的所有数据,按照主键顺序存放,

辅助索引:叶子节点除了包含键值以外,每个叶子节点的索引行还包含一个书签(bookmark),告诉innodb存储引擎

在哪里可以找到与索引行对应的数据,辅助索引的存在并不影响数据在聚集索引中的组织。

当通过辅助索引来寻找数据时,innodb会遍历辅助索引并通过叶级别的指针获得指向主键索引的键值,然后在通过

主键索引来找到一个完整的记录行。

最后

以上就是合适小兔子为你收集整理的mysql索引怎么设计_mysql索引设计的全部内容,希望文章能够帮你解决mysql索引怎么设计_mysql索引设计所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部