|
vage 发表于 2014-7-9 12:15 ![]()
CKPT-Q不会空的。因为从LRU向LRUW移脏块时,是要看TCH值的,大于等于2的脏块,不会被移到LRUW,只会被移到 ...
Hi vage
谢谢你的回复,我刚看了你的文章有一处不太理解
physical writes - DBWR checkpoint buffers written = 从LRUW写的脏块。从“LRUW写的脏块数”和“检查点写的脏块数”的比值,也是一个性能指标。是衡量检查点的一个重要指标,这个指标差,dirty buffers inspected会很高,进而产生Free Buffer Waits,影响物理读和构造CR块的性能。
阿里的数据库,大部分库检查点的比例,都在80%以上。
检查点的比例这个80%是 LRUW写的脏块数/检查点写的脏块数 还是 检查点写的脏块数/physical writes
dirty buffers inspected高意味着扫LRU链表时都是脏块,需要dbwr刷磁盘,进而产生free buffer waits,这个可以理解
但是你说的从检查点写和LRUW写的比例,和dirty buffers inspected有什么联系?
按照您之前说的,我的理解是
检查点写多,表示热脏块比较多,dbwr从lruw写的块少了,进而需要从CKPT-Q写的块变多了
LRUW写多,表示冷脏块多,dbwr唤醒后直接就从lruw将大部分块都写入磁盘了 |
|