当前位置: 首页 > news >正文

分析Exadata写入慢的性能故障

1、故障概述

某税务系统,Exadata上运行的ORACLE数据库,在每个月的征期时间段内,数据库性能低下,主要表现为业务数据写入慢,甚至出现业务写入超时的情况。

本文档针对整个故障进行分析,并给出相应的建议。

2、故障处理

1.1 分析故障时间段的AWR报告

image

 从数据库的TOP10等待事件可以看出,当前最为严重的等待事件为:free buffer waits和write complete waits.

free buffer waits等待事件,大概意思就是ORACLE要进行物理读时,在内存中没有找到合适的空闲内存块,此时就需要唤醒DBWN进程将内存中的脏数据刷回磁盘,然后释放内存,在等待脏数据刷回磁盘的这一过程中,请求空闲内存的进程就进入睡眠状态进行等待,等待事件就为free buffer waits.

write complete waits等待事件,当内存中的一个脏数据块正在被刷回磁盘的过程中,另外一个进程对这个数据块同时发起IO请求,这个IO请求就需要等待,等其被写入磁盘完成后,才能再次访问,这一过程就会产生write complete waits等待事件。

从等待事件大概可以看出,问题在于磁盘的写入性能太差,业务系统的数据变化比较大,导致内存中的脏数据刷回磁盘比较慢。

image

 分析后台进程的等待事件。可以看到,db file parallel write等待事件占用了近80%的数据库时间。平均延迟为11207ms,这也表明,磁盘的写入性能非常非常差。

1.2 分析存储软件日志。

检查存储软件日志,发现“自动磁盘擦洗和修复”特性已经开启。

 “自动磁盘擦洗和修复”特性,主要是为了尽早地发现和解决硬盘的坏道问题,默认每两个星期会自动运行。但是,这个特性带来的负面问题是:磁盘擦洗时,会消耗大量IO,在业务高峰期时,会造成IO耗尽,业务不可使用。

在其他省份的税务系统,相应的做法是:手动关闭该特性,在每月的征期结束后,手动启动该特性,等磁盘擦洗工作结束,再次关闭该特性。

1.3 检查存储配置。

检查当前的存储配置,如下所示。

image

 从存储软件的配置来看,当前FlashCache闪存的配置为WriteThough模式。WriteThough模式 对比 WriteBack模式的FlashCache,工作原理图如下所示。

image

 从WriteThough模式的工作原理图可以看出:刷内存中的脏数据,是直接刷入机械磁盘,才完成刷脏数据操作。

然而,WriteBack模式的FlashCache,刷内存中的脏数据,是先刷加到闪存卡中,就完成刷脏数据操作,后期再慢慢地将闪存中的数据刷回机械磁盘。

闪存的IOPS远远高于机械磁盘,所以需要开启存储的WriteBack模式,解决写入慢的问题。

3、故障解决

关闭存储节点的“自动磁盘擦洗和修复”特性,改成手动。调整所有存储节点,开启闪存的WriteBack模式。 最终,写入慢的性能故障得以解决。

http://www.jsqmd.com/news/633069/

相关文章:

  • 霜儿-汉服-造相Z-Turbo企业级应用:构建高可用AI绘画API服务集群
  • 千问3.5-2B图文理解案例:工程CAD缩略图识别图号+比例尺+设计单位+审核签名
  • ncmdump音乐解密工具:3步解锁网易云音乐加密文件,重获音乐自由
  • 微信对接OpenClaw的常见问题和解决方案磁
  • devtools疑难解答:常见问题排查与解决方案
  • 伏羲天气预报惊艳案例:北大西洋涛动(NAO)指数120小时趋势预测
  • 前端动画交互
  • 2025_NIPS_CHOICE: Benchmarking the Remote Sensing Capabilities of Large Vision-Language Models
  • StructBERT-中文-large镜像免配置部署:开箱即用的语义匹配方案
  • HunyuanVideo-Foley惊艳效果:沙漠风声+驼队行走视频同步生成作品
  • LongCat-Image-Editn从零部署:谷歌浏览器访问7860端口完整步骤详解
  • cartreader与KiCad:开源硬件设计工具在项目中的应用
  • 面试官: 高并发系统概念解析(答案深度解析)持续更新
  • Cosmos-Reason1-7B辅助C语言学习:代码解释与简单算法实现
  • Phi-4-mini-reasoning在医疗诊断逻辑树的应用:症状推理系统
  • 3步解锁《艾尔登法环》帧率限制:从60帧到144+的视觉革命
  • Pixel Mind Decoder 生成技术文档:基于代码注释的情绪可读性分析
  • Qwen-Image-Edit-2511新手入门:ComfyUI环境快速搭建,轻松实现图片智能编辑
  • 软件体验优化化的流程改进与界面设计
  • Java八股文实践篇:多线程并发调用Qwen3-ASR-0.6B API
  • 面试官: 高并发与多线程区别解析(答案深度解析)持续更新
  • 成本优化:TVA推动智能工厂降本增效的核心路径
  • Kandinsky-5.0-I2V-Lite-5s驱动动态数据可视化:算法结果的可视化视频生成
  • WarcraftHelper:为经典魔兽争霸III打造现代系统优化体验
  • Java的java.lang.StackWalker栈
  • 从‘头歌’实训出发:手把手教你用XPath和BeautifulSoup解析复杂网页数据(附避坑指南)
  • postgresql15 postgresql.cof-shared_buffers
  • 基于51单片机停车场设计
  • Nano-Banana应用案例:快速为网课制作高质量产品结构示意图
  • 魔兽争霸3终极优化指南:5步彻底解决卡顿与兼容性问题