如何解决异常数据?

某客户数据库(Oracle 10.2.0.4)没做任何更改的情况下,几乎每个周末上午业务频繁出现卡顿延迟现象,经过仔细诊断初步判定由于业务量激增导致tuxedo参数达到阈值,5月10日优化tuxedo参数后业务中断现象不在出现。

一周后卡顿又一次出现,第一时间捕获现象深入诊断,结合数据库awr性能报告和nbu备份慢的现象,经测试后发现存储读取速率只有原来的四分之一(50-80M/s)性能下降明显,最终定位链路异常导致整个存储性能下降,前台反应卡顿延迟。具体分析过程如下:

结合数据库及操作系统资源使用情况,可以看出故障时间段页游数据库一直处于繁忙状态,从数据库等待事件及性能分析报告中,高峰时间段数据库正在进行备份操作,消耗了大量I/O资源,操作系统磁盘使用率也非常之高,cpu出现了部分I/O等待。

以上种种现象基本可以判定,故障时间段操作系统I/O的响应已经无法满足当前数据库需求,导致数据库出现了严重的I/Owww.pizei.com等待,从而间接影响了NBU备份时间的延长。

为了证明这一点,具体查看数据库I/O性能指标,如下:

查看故障时间段数据库I/O性能指标,正常情况下数据库对I/O的响应要求在10ms之内,当前的指标远远超过了该值,结合之前操作系统磁盘使用率接近100%的时候整个I/O的输出也只有39-80M/S之间,异常明显。

进一步我们还通过dd及磁盘文件拷贝测试,同样发现磁盘I/O读速率只有50-80M/S原来的四分之一,此时已经可以断定主机到存储的链路或存储本身存在异常。

你可能感兴趣的:(如何解决异常数据?)