0
点赞
收藏
分享

微信扫一扫

InnoDB存储引擎体系结构中的各个组件如何协同工作

内存结构

Buffer Pool

缓存区 利用页面链表的方式+LRU 最近最少使用进行管理

Change Buffer

用于处理数据操作修改了索引结构的语句
在下次需要用到索引的操作执行时 就将该缓存的内容与原缓存合并

Adaptive Hash Index

用户优化缓冲区内存

Log Buffer(Redo Log Buffer)

保存写入磁盘的数据

从一个Update 语句入手

  1. 解析语法 查询什么表 什么字段 生成查找树 选择最优的查找路径
  2. 判断操作记录是否在缓存池如果在 就直接操作 如果不在就将该记录放入缓存 并加锁
  3. 将之前修改之间的记录写入回滚字段 可以理解为放入回收站 要是搞错了 还可以拿出来那种
  4. 更新缓存中的数据 记录日志
  5. 提交事务
  6. 后台IO 选择合适的时机 把脏页的数据刷新到各个数据文件中

参考内容

​​https://weread.qq.com/web/reader/4aa3250071a74c1d4aacadek8e232ec02198e296a067180​​


举报

相关推荐

0 条评论