当前位置: 首页 > news >正文

InnoDB 存储引擎的 架构

首先 InnoDB 存储引擎可以分为 内存结构磁盘结构

1. 内存结构

缓冲池(Buffer Pool) 内存中的主要工作区域, 优化查询的性能

变更缓冲池(Change Buffer) 优化修改操作的性能

日志缓冲池(Log Buffer)

自适应哈希(Adaptive Hash Index) 进一步提升查询效率

2. 磁盘结构

系统表空间(System Tablspace)

独立表空间(File-Per_Table Tablespaces)

通用表空间(GeneralTablespaces)

临时表空间(TemporaryTablespaces))

撤销表空间(Undo Tablespaces)

// *************************** 上面保存的是真实的数据

// *************************** 下面保证数据安全

重做日志(Undo log)

双写缓冲区 (Doublewrite Buffer)

从MySQL实现的角度来思考这个问题,数据库的作用就是保存数据,用户的真实数据最终都会保存在磁盘上,在查询数据的过程中,如果每次都从磁盘上读取会严重影响效率,为了提高数据的访问效率,InnoDB会把查询到的数据缓存到内存中,当再次查询时,如果目标数据已经存在于内存中,就可以从内存中直接读取,从而大幅提升效率。

也就是说磁盘结构中的文件是用来保存数据实现数据持久化的,内存结构是用来缓存数据提升效率的。

http://www.lryc.cn/news/585762.html

相关文章:

  • 渗透测试之木马后门实验
  • 世界现存燃油汽车品牌起源国别梳理
  • k8s新增jupyter服务
  • 中国国际会议会展中心模块化解决方案的技术经济分析报告
  • 【机器学习应用】基于集成学习的电力负荷预测系统实战案例
  • Linux设备树(dts/dtsi/dtb、设备树概念,设备树解析,驱动匹配)
  • kubernetes单机部署踩坑笔记
  • 【linux网络】深入理解 TCP/UDP:从基础端口号到可靠传输机制全解析
  • 【理念●体系】Windows AI 开发环境搭建实录:六层架构的逐步实现与路径治理指南
  • ATAM与效用树:架构评估的核心方法论
  • 鸿蒙 Secure Boot 全流程解析:从 BootROM 到内核签名验证的实战指南
  • 使用 lstrip() 和 rstrip() 方法
  • OpenAI 将推 AI Agent 浏览器:挑战 Chrome,重塑上网方式
  • C语言文件读写操作详解:fgetc与feof函数的应用
  • 上位机知识篇---Git符号链接
  • vue3 el-input 通过数组 获取显示
  • 【构建Tomcat版本检查工具:自动检测并提醒版本更新】
  • [面试] 手写题-插入排序
  • Redis命令参考手册
  • (C++)set集合相关知识(STL标准库)(C++教程)(set集合基础教程)
  • 供应链管理-计划:产能策略
  • 匿名函数作递归函数引用
  • 声明式 vs 编程式:Spring事务管理全对比
  • Prometheus+Grafana部署及企业微信邮件/群消息告警通知配置
  • linux系统-----Redis数据库基础
  • 迭代器(c++)、智能指针
  • LDO选型
  • Rust基础-part2-变量和可变类型
  • LVS-NAT模式配置
  • 期望和方差的计算