浅谈mysql索引

本文介绍了mysql索引的目的、何时需要及不需要索引、常见的索引模型(如哈希、有序数据、平衡二叉树、B树和B+树)、索引分类以及创建和使用索引的规则。强调了索引在提高查询效率的同时,也可能带来存储和更新性能的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介

1、目的

目的: 索引目的说白了就是为了提高查询效率,就像书的目录一样,根据目录可以很快查询到对应的知识。不过索引也有一些不足,比如占用存储空间,降低数据库写操作性能

2、什么时候需要索引,什么时候不需要索引

有些情况下创建索引反而或降低效率
a.在数据库中数据行数比较少时候,就不需要创建索引。比如,当表中数据不到1000行,是不需要创建索引的
b.当表中数据重复度比较高时,这个字段就不需要创建索引。
c.频繁更新的字段不一定要建立索引,更新字段需要更新索引,索引太多更新会造成负担,从而影响效率

二、常见索引模型

数据库服务器有两种存储介质,一种是内存一种是磁盘,内存用于临时存储,容量有限,发生意外比如断电、发生故障重启容易造成数据丢失;磁盘相当于永久存储介质,所以需要我们把索引放到磁盘上。
当我们在磁盘查询时需要io操作,磁盘io操作越多,所消耗时间也就越大,会造成一定的性能影响,所以需要合适的索引数据结构

1、哈希

2、有序数据

3、平衡二叉树

树状结构,左子节点小于父节点,右子节点大于父节点,但是树高影响io操作,因此就有了B树
常见平衡二叉树有很多种,包括二叉搜索树、红黑树、数堆、伸展树。
提到平衡二叉树一般

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值