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

总结

整体总结

相关推荐
啊森要自信8 小时前
CANN ops-cv:面向计算机视觉的 AI 硬件端高效算子库核心架构与开发逻辑
人工智能·计算机视觉·架构·cann
2的n次方_9 小时前
CANN ascend-transformer-boost 架构解析:融合注意力算子管线、长序列分块策略与图引擎协同机制
深度学习·架构·transformer
数据知道10 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
枷锁—sha10 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Fushize10 小时前
多模块架构下的依赖治理:如何避免 Gradle 依赖地狱
android·架构·kotlin
大雨淅淅10 小时前
Eureka从入门到精通:开启微服务架构的钥匙
微服务·云原生·eureka·架构
狗哥哥12 小时前
微前端路由设计方案 & 子应用管理保活
前端·架构
Max_uuc12 小时前
【架构心法】对抗熵增:嵌入式系统中的“数据完整性”保卫战
架构
likangbinlxa13 小时前
【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用
数据库·sql
野生技术架构师15 小时前
SQL语句性能优化分析及解决方案
android·sql·性能优化