Buffer Pool污染造成的性能问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Buffer Pool污染造成的性能问题相关的知识,希望对你有一定的参考价值。

背景:
一个数据库应用将数据库从阿里云rds迁移到北京aws之后,发现所有的查询都会慢
分析:
挑了几个有问题的查询语句,对比了执行语句,索引、执行计划,发现执行计划,索引,建库语句都是一样的
难道数据库版本,服务器参数,数据库参数有问题?
aws的数据库版本为mysql5.7,阿里云为MySQL5.6,另外aws rds在CPU,内存配置上比阿里云的更高。对比数据库参数也无明显差异。

难道是IO有问题,创建测试RDS,对北京AWS,海外AWS,阿里云的RDS分别做压力测试,发现性能方面:北京aws>海外aws>阿里云aws,排除了IO问题,最终show processlist,定位到该数据库有个定时任务在做大表聚合查询操作,该表大概有100多G,有几个查询,居然查询了2个多小时,还没有查询完毕,该操作严重污染了Buffer Pool,造成其他的查询数据,很快被置换出了内存。

参考:http://www.orczhou.com/index.php/2010/05/innodb-plugin-make-buffer-cache-scan-resistant/

以上是关于Buffer Pool污染造成的性能问题的主要内容,如果未能解决你的问题,请参考以下文章

MySQL · 性能优化· InnoDB buffer pool flush策略漫谈

一文了解MySQL的Buffer Pool

MySQL: 19 生产经验:如何通过多个Buffer Pool来优化数据库的并发性能

innodb buffer pool相关特性

mysql之innodb_buffer_pool

Mysql InnDB 缓存池(Buffer Pool)