美文网首页
mysql索引

mysql索引

作者: 小超_8b2f | 来源:发表于2019-06-21 22:12 被阅读0次
image.png 二叉树单边增长不适用

二叉需要的深度太深了,在数据量大的时候

红黑树,二叉平衡树

树的高度太高了, 磁盘访问太频繁
500W行数据。

红黑树的深度

为了减少树的高度,一个节点就多存点key

BTree

B树每个节点的大小有限制,每个节点对应一个大的磁盘块,每次load一个节点的数据全部从磁盘中到内存中(一次IO),然后再内存中查找,所以非常快。

B-Tree 多叉平衡树

B-tree左侧数据都小于右侧数据,每个节点的数据中左面的也小于右面的。

image.png image.png image.png 叶子节点里面能放大约2000多万个key

树的高度一般控制在2-4层

image.png image.png image.png ibd:索引文件和数据文件放在一起 innoDB的主键索引,主键和数据聚集在一起,所以叫聚(簇)集索引

所以InnoDB必须要有主键,你若是没有显示创建索引,那么MySQL也会隐式的创建一个隐藏列作为主键索引。

如果存储的都是UUID,在B+tree中 没法比大小(字符串比大小性能很低,转码。。。),而且占用更多的空间。为什么用自增呢?

避免原有的叶子节点分裂,

Myisam是非聚集索引,即主键和数据是分离的 image.png image.png image.png

相关文章

  • MySQL索引及查询优化书目录

    MySQL索引的原理之索引目的 MySQL索引的原理之索引原理 MySQL索引的原理之索引的类型 MySQL索引的...

  • 高性能的索引策略

    MySQL查询基础-查询执行过程 MySQL聚簇索引 MySQL覆盖索引 MySQL索引扫描排序 MySQL冗余和...

  • MySQL索引的使用

    MySQL索引 MySQL索引可以快速提高MySQL的检索速度。索引分单列索引和组合索引单列索引:即一个索引只包含...

  • Mysql索引与锁

    本文以Mysql5.7为例测试。 1:mysql索引方法 Mysql的索引方法分为btree索引和hash索引。 ...

  • 索引(二)

    mysql索引的新手入门详解mysql索引之三:索引使用注意规则 索引(Index)是帮助 MySQL 高效获取数...

  • MySQL 索引分类

    MySQL索引的分类(根据数据结构) 索引的本质 MySQL官方对索引的定义为:索引(Index)是帮助MySQL...

  • MySQL--索引

    MySQL索引 查看索引 创建索引 创建唯一索引 创建主键索引 删除索引 删除主键 MySQL视图 创建视图 删除...

  • mysql索引

    索引 mysql索引的建立对于mysql的高效运行是很重要的,索引可以大大提高mysql的检索速度。索引分单列索引...

  • 5.2MySQL创建高性能索引考察点

    MySQL索引的基础和类型延伸:MySQL索引的创建原则延伸:MySQL索引的注意事项 索引的基础索引类似于书籍的...

  • MySql 数据查询优化

    1. MySQL索引类型: mysql的索引有5种:主键索引、普通索引、唯一索引、全文索引、聚合索引(多列索引)。...

网友评论

      本文标题:mysql索引

      本文链接:https://www.haomeiwen.com/subject/jxauqctx.html