InnoDB体系结构

InnoDB存储引擎分为内存组件和磁盘存储。内存包括缓冲池、额外内存池和redo log buffer,用于缓存数据、索引、undo页等。磁盘存储涉及系统共享表空间和用户表空间。后台线程如master thread、IO thread等负责数据同步和维护。此外,介绍到insert buffer提高写性能,double write确保数据完整性,自适应哈希索引提升查询效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

请阐述一下InnoDB的结构

InnoDB结构图
InnoDB姜成尧图
InnoDB整体可分做:内存组件(Memory)和磁盘存储(Disk),InnoDB通过一系列的后台线程将内存中的更改刷新到磁盘。
1.内存组件
InnoDB内存组件有三大块:缓冲池,额外内存池和redo log buffer。缓存池中缓存数据页、索引页、undo页、插入缓冲页,自适应哈希索引,数据字典和锁信息。
2磁盘存储
磁盘存储分为系统共享表空间、用户表空间和重做日志组。
用户表空间:在innodb_file_per_table参数设置为1的情况下,表的.ibd文件单独存放。每个InnoDB表都有其对应的.ibd文件来存储表数据。
系统共享表空间ibdata1:包含insert buffer segment, double write segment,数据字典segment,Rollback segment, undo space。
3.后台线程
InnoDB的后台线程包括master thread,IO thread,lock monitor thread, error monitor thread,purge thread,page cleaner thread。IO thread通常又包含4个read thread,4个write thread,1个insert buffer thread,1个log IO thread。
用户查询数据时,InnoDB通过read

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值