索引是什么意思
关注:23 发布时间:2022-02-08 19:25:01
相信很多程序员朋友都很熟悉数据索引。比较常见的索引是b树索引,可以加快数据库的检索速度,但是会降低添加、修改、删除操作的速度,一些写错会导致索引失效。
但是如果问,为什么使用索引后查询更快?b树指数的原理是什么?这个时候很多人可能还不知道。我就以mysql innodb引擎为例,谈谈b树索引的原理。
索引基础知识
mysql的基本存储结构是page,大概是这样的:
在这里,我们需要了解以下几点(非常重要):
当我们使用mysql innodb引擎创建一个表时,主键只能有一个;如果我们不明确指定介于,mysql会自动生成一个隐式字段作为主键。
聚集索引:用主键创建的索引;聚集索引的叶节点将数据存储在表中;
非聚集索引:由非主键创建的索引;非聚集索引在叶节点存储主键和索引列。使用非聚集索引查询数据会查询叶子上的主键,然后根据主键查找数据(这个过程称为返回表)。
页面与页面之间以及页面与数据之间的关系
我们用聚集索引来解释,页面和页面之间,以及页面和数据之间的关系如下:
数据页之间形成双向链表。
每个数据页中的记录都是单向链表;
每个数据页根据内部记录生成一个页面目录。如果是主键,可以通过二分法在页面目录中快速定位;
如果我们按照一个非主键、非索引的列进行查询,需要遍历双向链表才能找到页面;遍历页面中的单向链表;如果表中的数据很大,这样的查询会很慢。
二叉树索引的原理
我们先来看看b树索引是什么样子的(以集群/主键索引为例):
如果我们此时要查询id=16的数据:
查询page -1,发现page -2存储的数据小于30;
查询第2页,发现第5页存储了10~20个数据;
查询第5页,找到id=16的数据。
显然,在不使用索引的情况下,需要遍历双向链表来定位对应的页面,而有了索引,就可以通过层层“目录”来定位对应的页面。
为什么b树索引降低了添加、修改和删除的速度
b树是一棵平衡的树。如果您添加、修改或删除此树,它将破坏其原始结构。
当我们添加、修改和删除数据时,我们需要花费额外的时间来维护索引;
由于这些额外的开销,索引会降低添加、修改和删除的速度。
思考考试问题,欢迎留言讨论
现在你明白b树指数的原理了吗?
比较后,留下一个深思熟虑的问题:为什么建议使用自增长主键作为索引?,你可以在你的信息中写下你的答案。
上一篇:淘宝搭配宝怎么使用?
下一篇:拿去花额度已到期怎么重新申请?
猜你喜欢
-
4g网速最快的apn接入点72人支持
目前5g手机逐渐普及,但是我们发现问题了吗?我们的4g手机网络已经变慢,变得不稳定。原因是网上众说纷纭。这里就不深究了。今天我就教你怎么解决这个问题。事实上,我们只需要简单…
-
天猫sku最多能放多少?删除和修改的方法34人支持
要说哪个logo平台最能代表电子商务的发展,那就是淘宝。淘宝上经营店铺的商家很多,淘宝上购物的用户也很多。今天要回答的问题是,天猫如何删除sku?如果要删除sku库存数量,可以直接…
-
最挣钱没人干的行业57人支持
平时见面的普通人比朝九晚五的上班族收入高。1.年前回家,给城里空荡荡的房子贴对联。我忘记带钥匙了。开锁的哥哥,开锁50,收了50块。他每天开30把左右的锁,还不算他安装修理锁的…
-
怎么推广网上商城73人支持
线下商家成立线上商城,不知道后期运营推广怎么办。此时商家应该怎么做才能正确经营,吸引客户,增加销量?今天我就用自己认识的开店制度分享一下我的经验!1.利用好营销工具,扩大客户…
-
最火的卖东西直播平台3人支持
如果2019年是直播爆发的第一年,那么2020年将是直播将商品全面普及的一年。在疫情的催化下,很多2019年还在观望犹豫的企业和商家,被迫在2020年尝试带货直播。淘宝数据显示,2月份…
-
淘宝积分有什么用93人支持
淘宝积分怎么兑换?在淘宝商城购物,不仅可以通过参与各种救济活动来减少资金支出,还可以通过完成每一笔订单来获得一定的淘宝积分。这类积分不仅可以在购物时套现,还可以参与加币…
-
淘宝和京东哪个靠谱7人支持
淘宝或者天猫个人用的比较多,因为淘宝天猫产品种类比较多。虽然有些东西是盗版或者高度仿制的,但是质量也不错,衣服鞋子都不错。小编主要利用京东购买电子产品,他对京东的产品质…
-
送给想找工作的人!2019最后两个月98人支持
年底了,还是会有人想找工作。有的人干脆放弃。其实我觉得不是。就算年底找工作,也要考虑抓紧时间努力。孟晓今年8月辞职,现在是11月,所以仍然很难找到工作。心里除了迷茫,就是深…
-
抖音上热门的诀窍44人支持
我也想知道如何在tik tok受欢迎。所以在这里,我想和大家简单分享一下我这几天研究的一些资料,仅供参考。写好所有账号信息(点进去让大家知道你是做什么的,你的职位是什么,你主…
-
男生个性签名冷淡霸气54人支持
1.夜局长可能不是梦多,但他一定想吃很多。2.别看了,是时候了。还好我是个小胖子,难过的时候能感觉到肚子。4.你夸的朋友圈叫甜甜圈。5.爱情不是我的一生,而是工作。6.喜欢一个人…
-
分享的本质是一个东西被很多人或者群体使用,目标是提高一个东西的使用价值,但是这个东西的价值不会因为分享而改变。所以这个东西必须是通用的,有些东西如果是独占的就不能共享…
-
京东金融安全可靠吗?36人支持
我认为这不是一个好主意。无论你有多少资产,投资理财产品的资产配置多元化尤为重要。所有资产都配置在第三方金融平台上,不符合“鸡蛋不能放在一个篮子里”的投资原则。京东金…
热门十大品牌
- 2021年我国十大黄金品牌排行榜31000人
- 眼镜品牌十大排行榜前10名26363人
- 十大证券公司排行榜前10名23243人
- 2021年我国杂志排行榜前10名20056人
- 我国十大杂志排行榜前10名16359人
- 2021我国十个宜居城市排行榜前11489人
- 男士裤子品牌十大排行榜前10名11187人
- 2021十大火热电脑游戏排行榜前11059人
- 十大卫生巾品牌排行榜前十名8849人
- 我国十大袜子品牌排行榜前十名8373人