mysql(三)拓展-索引的归纳总结(有点mysql基础的阅)

本文详细介绍了MySQL的索引,包括索引的引入、B+Tree和Hash索引结构、索引的分类及其优缺点。重点讨论了B+Tree索引的优化,如InnoDB引擎为何选择B+Tree,以及索引的使用,如explain执行计划分析,帮助理解索引对SQL查询性能的影响。
摘要由CSDN通过智能技术生成

索引介绍、索引结构、索引分类、索引存储形式、索引使用。

一、索引概述
1.索引的引出

未建立索引时,查询数据需要逐个筛选,全表扫描查询。
构建索引时,通过特定的算法查询索引,再通过索引指向的数据查找数据。
提高查询效率。
举个例子:一本字典,查询某个字时,若没有目录,需要一页一页逐字对比,有了目录,通过查询目录,再通过目录找到页数,查询到指定字。目录相当于索引


2.什么是索引
索引是实现快速查找数据的一种有序数据结构。

3.索引的优缺点
索引能够大大提升查询效率。
但是构建索引需要空间,同时在插入、更新、删除数据时,需要重新更新索引,效率降低。

二、索引结构
1.介绍
mysql索引结构是在存储引擎层实现的。常用的有B+Tree索引hash索引
hash索引只支持精确匹配,不支持范围查询。空间索引和全文索引(了解)。


2.B+tree索引结构介绍(重点)
A 基础准备-二叉树与红黑树
对于一个链式数据逐行检索,可以构造二叉树变成层级检索,提高查询效率。
二叉排序树:左<根<右。但是如果数据顺序插入,二叉排序树会形成一个链表,查询意义不大。
平衡二叉树:左右子树高度差不超过1,在数据插入构造时,会自适应高度差。大数据量时,也会产生较深的层级。

B 多路平衡查找树(B-Tree)
优化:每个结点指向多个结点,降低层级深度,引入多路平衡查找树,即B树。
度:一个节点最大子节点的个数。

定义度为5一个节点最多存储4个值,再插入数据时,左<中<右,到达4个值时,节点分裂,中间元素向上分裂ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值