AWS Aurora缓存指标含义

qui*_*ver 5 mysql amazon-aurora

Aurora有两个与查询缓存相关的指标:

  • 缓冲区缓存命中率:缓冲区缓存提供的请求百分比.
  • 结果集缓存命中率:Resultset缓存提供的请求的百分比.

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Monitoring.html

但我找不到解释"缓冲区缓存"和"结果集缓存"之间差异的文档.

这些是什么?

小智 7

"结果集缓存命中率"与查询缓存相关,查询缓存是一种能够缓存读取查询结果的功能(这就是调用结果集缓存命中的原因).因此,如果引擎开始执行新的读取查询,它将在执行查询本身之前检查缓存的结果,如果它发现之前已执行过相同的查询并且其结果尚未失效,那么它将服务来自缓存的新查询的结果.当工作负载包含许多具有相似值和条件的类似选择查询时,这通常很有用并且显示数量很多.

另一方面,"缓冲区高速缓存命中率"与innodb页面高速缓存命中率(而不是查询结果高速缓存)更相关,并且这应该随着所有类型的读取查询的增加而增加,因为此过程由缓冲池温暖调用up会导致引擎将所有需要的页面从存储器加载到内存中,以便更快地访问数据.但是,随着写入器写入量的增加,这将使读取器在内存页面中无效,然后在需要时从存储器再次加载这些页面.这里的"比率"取决于击中内存页面的百分比,这应该是非常高的ex:超过99%.

查询缓存通常被认为具有低连接,类似的查询类型一遍又一遍(基于对mysql/aurora的少量观察,如果你有很多连接和大量的adhoc风格,查询缓存可能实际上对性能不利,改变查询).