14.6.3.4 Configuring InnoDB Buffer Pool Prefetching (Read-Ahead) 配置InnoDB Buffer pool 预取

本文介绍InnoDB如何通过配置预读参数改善I/O性能。详细解释了线性预读和随机预读两种算法的工作原理,并提供了innodb_read_ahead_threshold参数的具体作用说明。

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

14.6.3.4 Configuring InnoDB Buffer Pool Prefetching (Read-Ahead) 配置InnoDB Buffer pool 预取

一个预读请求是一个I/O 请求异步预取多个pages到buffer pool.


预估那些Pages 马上会被需要。 请求把所有的Pages 到一个extent.

InnoDB  使用2种预读算法来改善I/O性能


线性的预读是一种技术是预测哪个page 可能马上被需要在buffer pool中被顺序访问的pages.

你控制什么时候InnoDB 执行一个预读操作通过调整 顺序page访问的数量 需要出发一个异步读请求,

使用配置参数innodb_read_ahead_threshold。

mysql> show variables like '%innodb_read_ahead_threshold%';
+-----------------------------+-------+
| Variable_name               | Value |
+-----------------------------+-------+
| innodb_read_ahead_threshold | 56    |
+-----------------------------+-------+
1 row in set (0.00 sec)


在这个参数被增加前,InnoDB 只会计算是否执行一个异步预取请求对于整个接下来的extent 当他读取当前extent的最后的page


配置参数 innodb_read_ahead_threshold 控制 InnoDB 探测的灵敏度是检测顺序page访问的模式。


如果pages的读取数量是频繁的从一个extent 是大于或者等于  innodb_read_ahead_threshold

InnoDB 发起一个异步的预读操作来读取整个接下来的extent.


innodb_read_ahead_threshold 可以设置为任何值从0-64. 默认值是56


值越大,访问模式检查越严格。

比如,如果你设置值为48,InnoDB 触发一个线性预读请求只有当48个pages 在当前的extent 已经被顺序访问。


如果值是8,InnoDB 触发一个异步预读 即使 只有8个pages 在extent被顺序访问。


随机预读是一种技术预测页面可能被马上需要机遇已经在buffer pool里存在的pages,


不管 那些pages被读取的顺序。

转载于:https://www.cnblogs.com/zhaoyangjian724/p/6199024.html

[root@localhost yum.repos.d]# cpanm -f Net::HTTP GSSAPI Params::Validate Test::Mock::LWP LWP::Authen::Negotiate --> Working on Net::HTTP Fetching https://www.cpan.org/authors/id/O/OA/OALDERS/Net-HTTP-6.23.tar.gz ... OK Configuring Net-HTTP-6.23 ... OK Building and testing Net-HTTP-6.23 ... OK Successfully installed Net-HTTP-6.23 --> Working on GSSAPI Fetching https://www.cpan.org/authors/id/A/AG/AGROLMS/GSSAPI-0.28.tar.gz ... OK Configuring GSSAPI-0.28 ... N/A ! Configure failed for GSSAPI-0.28. See /root/.cpanm/work/1752032584.51560/build.log for details. --> Working on Params::Validate Fetching https://www.cpan.org/authors/id/D/DR/DROLSKY/Params-Validate-1.31.tar.gz ... OK Configuring Params-Validate-1.31 ... OK Building and testing Params-Validate-1.31 ... OK Successfully reinstalled Params-Validate-1.31 --> Working on Test::Mock::LWP Fetching https://www.cpan.org/authors/id/L/LU/LUKEC/Test-Mock-LWP-0.08.tar.gz ... OK Configuring Test-Mock-LWP-0.08 ... OK Building and testing Test-Mock-LWP-0.08 ... OK Successfully reinstalled Test-Mock-LWP-0.08 --> Working on LWP::Authen::Negotiate Fetching https://www.cpan.org/authors/id/A/AG/AGROLMS/LWP-Authen-Negotiate-0.08.tar.gz ... OK Configuring LWP-Authen-Negotiate-0.08 ... OK ==> Found dependencies: GSSAPI, LWP::Debug --> Working on LWP::Debug Fetching https://www.cpan.org/authors/id/O/OA/OALDERS/libwww-perl-6.79.tar.gz ... OK Configuring libwww-perl-6.79 ... OK Building and testing libwww-perl-6.79 ... OK Successfully installed libwww-perl-6.79 ! Installing the dependencies failed: Module 'GSSAPI' is not installed ! Bailing out the installation for LWP-Authen-Negotiate-0.08. 4 distributions installed [root@localhost yum.repos.d]#
最新发布
07-10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值