支持WDR诊断报告

    特性简介

    WDR报告提供数据库性能诊断报告,该报告基于基线性能数据和增量数据两个版本,从性能变化得到性能报告。

    • WDR报表是长期性能问题最主要的诊断手段。基于SNAPSHOT的性能基线,从多维度做性能分析,能帮助DBA掌握系统负载繁忙程度、各个组件的性能表现及性能瓶颈。
    • SNAPSHOT也是后续性能问题自诊断和自优化建议的重要数据来源。

    特性描述

    WDR(Workload Diagnosis Report)基于两次不同时间点系统的性能快照数据,生成这两个时间点之间的性能表现报表,用于诊断数据库内核的性能故障。

    使用generate_wdr_report(…) 可以生成基于两个性能快照的性能报告。

    WDR主要依赖两个组件:

    • WDR Reporter:报表生成工具基于两个SNAPSHOT,分析系统总体性能表现,并能计算出更多项具体的性能指标在这两个时间段之间的变化量,生成SUMMARY 和DETAIL两个不同级别的性能数据。如表1、所示。

    表 1 SUMMARY级别诊断报告

    表 2 DETAIL级别诊断报告

    诊断类别

    描述

    Time Model

    主要用于评估当前系统在时间维度的性能表现。

    包含系统在各个阶段上消耗的时间:内核时间、CPU时间、执行时间、解析时间、编译时间、查询重写时间、计划生成时间、网络时间、IO时间。

    SQL Statistics

    主要用于SQL语句性能问题的诊断。

    包含归一化的SQL的性能指标在多个维度上的排序:Elapsed Time、CPU Time、Rows Returned、Tuples Reads、Executions、Physical Reads、Logical Reads。这些指标的种类包括:执行时间、执行次数、行活动、Cache IO等。

    主要用于系统关键资源,关键时间的详细性能诊断。

    包含所有关键事件在一段时间内的表现,主要是事件发生的次数,消耗的时间。

    Cache IO Stats

    用于诊断用户表和索引的性能。

    包含所有用户表、索引上的文件读写,缓存命中。

    Utility status

    用于诊断后台任务性能。

    包含复制等后台任务的性能。

    Object stats

    用于诊断数据库对象的性能。

    包含用户表、索引上的表、索引扫描活动,insert、update、delete活动,有效行数量,表维护操作的状态等。

    Configuration settings

    用于判断配置是否有变更。

    包含当前所有配置参数的快照。

    SQL detail

    显示unique query text信息。

    无。

    特性约束

    • WDR snapshot性能快照会采集不同database的性能数据,如果数据库实例中有大量的database或者大量表,做一次WDR snapshot会花费很长时间。
    • 如果在大量DDL期间做WDR snapshot可能造成WDR snapshot失败。
    • 在drop database时,做WDR snapshot可能造成WDR snapshot失败。

    无。