开发者社区 > 数据库 > 正文

为什么需要缓冲池功能?

已解决

为什么需要缓冲池功能?

展开
收起
云上静思 2022-09-13 16:12:24 286 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    在 InnoDB 中读数据可以通过B+树索引快速定位到要查找的页,再将数据读入内存获取所要找的数据行。对于写操作,MySQL 中的写入采用WAL 机制。简单说来就是先写日志,再写磁盘,是通过缓冲池(Buffer Pool),并基于顺序写的性能远高于随机写来实现的。无论是读数据还是写数据,直接对磁盘进行读写的代价是高昂的,频繁地随机I/O 会显著降低CPU 的利用率,为了减少对磁盘的访问次数,并基于局部性原理,页面被缓存在内存中。

    以上内容摘自《云原生数据库原理与实践》,这本书可以在电子工业出版社天猫店购买。

    2022-09-13 18:48:33
    赞同 展开评论 打赏
问答地址:

数据库领域前沿技术分享与交流

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载