InnoDB存储引擎的Buffer Pool 缓冲池底层结构
2021-01-10 本文已影响0人
迦叶_金色的人生_荣耀而又辉煌
上一篇 <<<MySQL存储引擎汇总
下一篇 >>>
为什么需要设计缓存池
我们真实的数据是存放在硬盘中的,由于IO操作比缓存读取速度较慢,设立缓存池可减少磁盘IO操作,加速查询效率。
为什么磁盘IO比内存IO慢?
缓存池底层结构
InnoDB读取的时候,会以页(page)的形式访问,一页默认为16kb数据。每页数据以链表形式存放。
链表存放好处:增加删除效率较高,buffer pool满的情况下使用LRU内存淘汰策略清理内存(参照通过LinkedHashMap手写淘汰策略)
缓存池的配置建议
查询命令:show status like '%innodb_buffer_pool%'
buffer pool建议配置50-60%左右即可