14.4.3.4 Configuring InnoDB Buffer Pool Prefetching (Read-Ahead) 配置InnoDB Buffer pool 预读
2016-06-24 15:47
337 查看
14.4.3.4 Configuring InnoDB Buffer Pool Prefetching (Read-Ahead) 配置InnoDB Buffer pool 预读 一个预读请求 是一个I/O请求来预取多个页 在buffer poo里 一般的, 预计 那些页面很快会被需要。 请求把所有的pages 到一个extent. InnoDB 使用2种预读算法来改善性能。 线性预读 是一种技术预测什么页面可能被马上需要基于在buffer 中的pages 被顺序访问。 你控制 当InnoDB 执行一个预读操作通过调整顺序page 访问的数目来触发异步请求, 使用配置参数 innodb_read_ahead_threshold。 在这个参数增加前,InnoDB 只会计算是否执行一个异步预取请求对于整个next extent innodb_read_ahead_threshold 配置参数 控制InnoDB的敏感程度是检测顺序page 访问的模式。 如果按顺序读取的page的数量从一个extent 是大于或者等于innodb_read_ahead_threshold, InnoDB 初始一个异步的预读操作 读取整个接下来的extent. mysql> show variables like '%innodb_read_ahead_threshold%'; +-----------------------------+-------+ | Variable_name | Value | +-----------------------------+-------+ | innodb_read_ahead_threshold | 56 | +-----------------------------+-------+ 1 row in set (0.00 sec) innodb_read_ahead_threshold 可以设置为0-64 默认值是56. 值越高,访问模式检查越严格。 比如,你设置值为48,InnoDB 触发一个线性的预读请求只有当48个页 在当前的extent 已经被顺序访问。 如果值为8,InnoDB 触发一个异步预读甚至只要8个pages 在extent被顺序访问。 你可以设置这个参数的值在MySQL的配置文件,或者动态的改变它使用SET GLOBAL,需要SUPER权限 随机预读 是一个技术预测 当pages 马上需要基于已经在buffer pool的pages, 无论那些页面被顺序读取。 如果13连续的页从相同的extent 被找到,InnoDB 异步执行一个请求来 获取extent里剩下的pages. 启用这个功能,设置配置变量 mysql> show variables like '%innodb_random_read_ahead%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | innodb_random_read_ahead | OFF | +--------------------------+-------+ 1 row in set (0.00 sec) SHOW ENGINE INNODB STATUS 命令显示信息来帮助你预估 预读算法的有效性
相关文章推荐
- 14.4.3.4 Configuring InnoDB Buffer Pool Prefetching (Read-Ahead) 配置InnoDB Buffer pool 预读
- Caffe代码阅读笔记(1)
- jsp中添加表达式
- JavaWeb前端分页显示方法
- NewPanderKing 抬头是山,路在脚下! 一些技术大牛的博客集锦(转)
- 【总结】HDFS源码之INode相关类
- ReactJS学习系列课程1(ReactJS简介)
- jsp中通添加java代码
- JavaScript DOM
- 源码安装protocol Buffer
- javascript 中setTimeout()和clearTimeout()及setInterval()和clearInterval()的用法
- angular 1与angular2区别
- 获取非行间样式
- angularjs 菜鸟教程 版本1.4.6
- 移动web开发,12个触摸及多点触摸事件常用Js插件
- 数组中的逆序对(剑指offer)
- Nodejs reactjs服务端渲染优化SEO
- js中substr,substring,indexOf,lastIndexOf,split的用法
- 模块化前端编程 seajs使用
- [置顶] Web前端 之 CommonJS 模块化规范与Node实现