Exadata自动磁盘擦洗和修复特性增强

个人简介:石云华,Exadata中国用户组联合创始人,2019年被ORACLE官方授予ACE称号。毕业后一直从事Oracle数据库第三方运维服务工作,拥有十余年电信运营商、保险、税务、电力行业核心系统数据库运维经验。现就职于北京海天起点技术服务股份有限公司,oracle数据库专家组成员,Exadata部门负责人。个人著作有《Exadata实施运维指南》,另外一本《Oracle Exadata性能优化》即将面世。

“自动磁盘擦洗和修复”特性极大地保护了数据的一致性,但同样也给客户带来了IO性能问题,大量的客户抱怨这一新特性,有些客户甚至直接关闭了该特性。

ORACLE的技术支持网站上也有大量该特性引发性能问题的案例,ORACLE开始重视这一问题,并将该问题定性为软件缺陷,具体见MOS文档《Bug 24352006: PERFORMANCE ISSUE DURING SCRUBBING TIME》,这个软件缺陷修复包含在20171月发布的补丁包中,而20171月之前的旧的存储软件版本,只在12.1.2.3.2.160721版本上开发了单独的补丁包。看样子要解决该问题,ORACLE就强制要求将存储软件版本升级到当前较新的版本中。

那么,自动磁盘擦洗和修复特性增强工作主要做了哪些改动呢?它主要解决了两个问题。

  • 当出现IO排队、IO等待时,IORM将会对磁盘擦洗和修复操作进行节流。
  • 如果磁盘擦洗和修复操作是OTHER_DATABASE中唯一的活动消费组,则OTHER_DATABASE也会被节流。

下面,来看看另外一个关于磁盘擦洗和修复特性的案例,体验一下磁盘擦洗和修复特性的增强。


案例概要

某个Exadata客户,存储节点上的自动磁盘擦洗和修复操作,经历了将近一个月才结束,而相同的这套环境,在存储软件升级之前,基本上只需要花费一天时间就完成了自动磁盘擦洗和修复操作。客户想知道为什么升级后,自动磁盘擦洗和修复操作会这么慢。

问题分析

查看存储节点的alert日志,截取到自动磁盘擦洗和修复操作开始至结束的相关日志如下。

从以上日志可以看出,在2017年6月25号的凌晨2点,开始发起自动磁盘擦洗和修复操作,但一直到了2017年7月20号,自动磁盘擦洗和修复操作才相继结束。中间持续了将近一个月的时间。

查看这个时间段的磁盘IO使用情况,具体如图7.7所示。

图7.7 Exadata上所有数据库的IO占用率

从图中可以看出,只有16号、17号、18号的凌晨某个时间段,”_other_database_”这个消费组才有IO消耗,如果进一步查看”_other_database_”消费组的IO消耗,就可以发现,”_other_database_”消费组的IO消耗是由于Disk Scrub操作产生的。其它时间段基本上看不出有自动磁盘擦洗和修复操作。

那么,在其它时间段内,是否就完全没有自动磁盘擦洗和修复操作呢?我们提取dm02celadm02这个存储节点的CD_IO_BY_R_SCRUB_SEC指标,该指标的含义是自动磁盘擦洗和修复操作对每个celldisk每秒读取多少MB的数据。

在2017-07-13 15:00:27时刻,CD_IO_BY_R_SCRUB_SEC指标值如下。

12块celldisk,每个celldisk的CD_IO_BY_R_SCRUB_SEC指标值为0.017 MB/sec,这说明此刻并不是没有自动磁盘擦洗和修复操作,而只是自动磁盘擦洗和修复操作受到了抑制。

继续查看同一时刻点,dm02celadm02存储节点的celldisk IO使用率,CD_IO_UTIL指标表示celldisk的IO使用率,如下所示:

可以看出,此刻celldisk的 IO使用率已经非常高,所以自动磁盘擦洗和修复操作受到了抑制,不让自动磁盘擦洗和修复操作占用大量IO,从而影响到数据库的IO性能。

从图7.7可以看出,在2017年7月17号的凌晨,是存在自动磁盘擦洗和修复操作的,继续分析CD_IO_UTIL指标,可以看出,在2017-07-17 04:23:53时刻,celldisk的IO使用率非常低。如下所示:

分析CD_IO_BY_R_SCRUB_SEC指标,可以看出在2017-07-17 04:23:53时刻,已经开始触发了自动磁盘擦洗和修复操作继续工作,一分钟之后,自动磁盘擦洗和修复操作开始大量读取IO。

案例结论

自动磁盘擦洗和修复特性进一步增强,当磁盘IO使用率低于某个阀值时,开始触发自动磁盘擦洗和修复操作,但随着业务高峰的到来,当磁盘高于某个阀值时(出现IO排队、IO等待时),自动磁盘擦洗和修复操作会被抑制,一直到磁盘再次低于某个阀值时(未出现IO排队、IO等待),自动磁盘擦洗和修复操作又继续正常工作。周而复始,直到完成整个自动磁盘擦洗和修复操作。

未经允许不得转载:Oracle一体机用户组 » Exadata自动磁盘擦洗和修复特性增强

相关推荐