InnoDB引擎(架构,事务原理,MVCC详细解读)

目录

架构分析

逻辑存储结构​

内存结构​

[Buffer Pool​](#Buffer Pool)

ChaneBuffer

自适应哈希​

LogBuffer​

磁盘结构​

后台线程​

事务原理​

redolog日志

undolog日志​

MVCC​

三个隐藏字段​

undolog版本链

readview​

RC(读已提交原理分析)​

RR(可重复读原理分析)​

总结


架构分析

逻辑存储结构

内存结构

Buffer Pool

ChaneBuffer

主要针对非唯一的二级索引

自适应哈希

LogBuffer

磁盘结构

后台线程

事务原理


redolog日志

流程:读取要修改的数据页,放在缓冲区中,修改缓冲区数据,每隔一段时间同步到磁盘中,未同步的缓冲区数据页,也叫脏页。如果出现突发情况,导致未能同步成功,破坏了持久性。redolog主要作用是,在脏页数据刷新到磁盘发生错误时,进行数据恢复。

如果不通过redolog,直接刷新脏页到磁盘中,存在严重的性能问题, 会存在大量的随机磁盘IO,日志文件是追加的,顺序磁盘io,可大大优化性能。

undolog日志

MVCC

三个隐藏字段

undolog版本链

readview

RC(读已提交原理分析)


RR(可重复读原理分析)

总结

整体总结

相关推荐
踏浪无痕3 小时前
JobFlow已开源:面向业务中台的轻量级分布式调度引擎 — 支持动态分片与延时队列
后端·架构·开源
SAP小崔说事儿4 小时前
在数据库中将字符串拆分成表单(SQL和HANA版本)
java·数据库·sql·sap·hana·字符串拆分·无锡sap
踏浪无痕4 小时前
JobFlow 实战:无锁调度是怎么做到的
后端·面试·架构
MatrixOrigin5 小时前
在数据库里玩“平行宇宙”:MatrixOne Data Branch 让数据也拥有Git 的分支/合并/对比/回滚(含跨集群同步)
git·sql·数据分析
再睡一夏就好5 小时前
深入Linux线程:从轻量级进程到双TCB架构
linux·运维·服务器·c++·学习·架构·线程
墨香幽梦客5 小时前
HA高可用架构选型:确保企业系统稳定运行的基石
架构
SmartBrain5 小时前
洞察:阿里通义DeepResearch 技术
大数据·人工智能·语言模型·架构
surtr15 小时前
关系代数与关系型数据库
数据库·sql·数据库系统
玖日大大6 小时前
LangGraph 深度解析:构建强大智能体的新一代框架
人工智能·语言模型·架构·langchain
studytosky6 小时前
Linux系统编程:深度解析 Linux 进程,从底层架构到内存模型
linux·运维·服务器·开发语言·架构·vim