2023-03-23
原文作者:一直不懂 原文地址:https://blog.csdn.net/shenchaohao12321/article/details/82798275

InnoDB存储引擎还提供了 Flush Neighbor Page(刷新邻接页)的特性。其工作原理为:当刷新一个脏页时, InnoDB存储引擎会检测该页所在区( extent)的所有页,如果是脏页,那么一起进行刷新。这样做的好处显而易见,通过AIO可以将多个IO写入操作合并为一个IO操作,故该工作机制在传统机械磁盘下有着显著的优势。但是需要考虑到下面两个问题:

  • 是不是可能将不怎么脏的页进行了写人,而该页之后又会很快变成脏页?
  • 固态硬盘有着较高的IOPS,是否还需要这个特性?

为此, InnoDB存储引擎从1.2.x版本开始提供了参数 innodb_flush_neighbors,用来控制是否启用该特性。对于传统机械硬盘建议启用该特性,而对于固态硬盘有着超高IOPS性能的磁盘,则建议将该参数设置为0,即关闭此特性。

阅读全文