MySQL之InnoDB关键特性,爱她就要了解她

前言

本文主要是偏MySQL本身的底层设计较多,较为枯燥,但是又比较重要,还是静心看吧,哈哈

InnoDB作为MySQL使用最广泛的存储引擎,其重要程度和江湖地位无需再多说什么,那么今天就聊一聊InnoDB的一些关键特性。

另外一说到数据库的特性,肯定就是他的优点,他为啥牛X,为啥速度会快,为啥性能会稳定等等,知道了为什么就能更好的解决问题。

一、插入缓存

听名字就知道是在插入的时候起作用的,既然说到缓存那肯定就涉及到异步,所以最直观的感受就是,插入数据时不直接刷新到磁盘,而是先缓存起来,等到一定阈值时再一起刷盘,实际情况也就是这样的。但是需要注意的是 这里的缓存并不是内存,而是和数据页一样,即物理页的组成部分

另外对于聚集索引(说到聚集索引一般都说的主键),如果主键是自增的,那么就是顺序插入,性能非常高,一般是没有啥问题的,像分布式系统中雪花算法就是利用这一特性的,所以插入缓存肯定不是为了顺序插入做的优化。

插入缓存主要还是为了解决非聚簇索引的插入速度问题,非聚簇索引的值由于不是递增的,所以在插入的时候就肯定不是顺序的,而是随机的,涉及到随机就涉及到寻址,在大量插入的情况下速度就非常糟糕,那么怎么去解决这个问题呢?相信大家已经知道。

插入缓存使用有两个限制条件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿每日分享

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值