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(可重复读原理分析)

总结

整体总结

相关推荐
JosieBook35 分钟前
【架构】主流企业架构Zachman、ToGAF、FEA、DoDAF介绍
架构
安迁岚1 小时前
【SQL Server】华中农业大学空间数据库实验报告 实验六 视图
数据库·sql·mysql·oracle·实验报告
.生产的驴1 小时前
SpringCloud OpenFeign用户转发在请求头中添加用户信息 微服务内部调用
spring boot·后端·spring·spring cloud·微服务·架构
乌啼霜满天2492 小时前
JDBC编程---Java
java·开发语言·sql
丁总学Java2 小时前
ARM 架构(Advanced RISC Machine)精简指令集计算机(Reduced Instruction Set Computer)
arm开发·架构
hummhumm3 小时前
第 28 章 - Go语言 Web 开发入门
java·开发语言·前端·python·sql·golang·前端框架
武子康3 小时前
Java-07 深入浅出 MyBatis - 一对多模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据库·sql·mybatis·springboot
ZOMI酱4 小时前
【AI系统】GPU 架构与 CUDA 关系
人工智能·架构
努力算法的小明5 小时前
SQL 复杂查询
数据库·sql