GaussDB WDR分析之集群报告篇

AWR报告目前已经成为Oracle DBA分析问题,定位故障最为重要的报告,阅读与分析AWR报告的技能也是Oracle DBA必备的技能。国产数据库为了提高运维便捷性,都在做类似Oracle AWR报告的模仿,只不过由于指标体系不够完善,因此其“AWR报告”大多数只是一个摆设,除了TOP SQL功能外,并不能给运维带来更大的帮助。

GaussDB的可观测性指标做得相当不错,指标内容很丰富,指标的指向性也相当不错,而要做好“AWR报告”的基础就是这些准确而丰富的指标。基于这一点,我对GaussDB WDR报告的期待还是有点高的。下面我带着大家来浏览一下GaussDB的WDR报告,看看这个报告能否满足DBA日常运维分析数据库性能与故障的需要。

GaussDB的WDR报告全称是工作负载诊断报告,不过在TPOPS里被称为“性能报告”,我觉得“性能报告”不够严谨,不过如果用“工作负载诊断报告”又有点不够高大上。根据GaussDB分布式数据库的特点,这个报告分为三种类别:集群、CN节点和DN节点。这三种类型的工作负载放在一起又比较乱,分为三种格式是比较合适的,这方面GaussDB的设计还是比较符合DBA的习惯的,不过我也在思考分布式数据库的“AWR报告”是不是像PolarDB一样做成单文件多页的更加易读。不过对于GaussDB这样的可能会有很多个节点的分布式数据库,如果整个集群生成一份报告,也有一些副作用,一份报告生成的时间可能会比较长,而且有时候我们并不需要整个集群所有节点的报告。    

今天因为时间关系,我先以集群报告为主线给大家介绍一下WDR都包含了哪些内容。因为报告的内容比较多,因此我们将略去一些平时不大关注的内容。

 

Database Stat我原本想略去的,不过里面还是有一些有价值的信息的,包括各个数据库的Tuple、blk hit等信息对于DBA用来了解数据库级别的总体访问性能还是有价值的。

Gaussd的Load Profile和Oracle有点像,不过缺少了关于SQL解析的相关数据,实际上高斯数据库里是有相关指标的,不知道为什么没有收录进来。WDR报告中的Load Profile在指标选取上有点刻意学习Oracle了,实际上GaussDB的负载指标与Oracle有较大的不同,可以提供比Oracle还丰富的负载信息,包括select /delete/update/insert/ddl/dcl等的负载信息,如果能把这些内容收录进来就更好了。

在负载文件后面提供的P80/P95 sql响应时间的数据,这是十分好的,特别是对于一些交易类系统,这两个指标便于发现系统中的SQL性能是否存在问题。   

这个报告中的命中率和IO PROFILE明显有点敷衍了,估计很少有DBA能够在这些指标中看出系统到底有啥问题。以我对GaussDB的了解都知道,在这里可以显示的数据可以翻好几倍。

随后是TOP SQL的报告,说实在的GaussDB的SQL报告内容还是不错的,十分详尽,除了TOP SQL的维度分解十分全面外,每条SQL的执行指标分解也比较全面。特别是后面sort/hash的详情分解对于一些复杂SQL的性能问题分析,是一目了然的。 

Cache IO Stats是Oracle没有的内容,针对TOP OBJECT的缓冲命中情况进行分析。这对于发现shared_buffers设置是否过小,以及某些数据是否需要预热还是比较有用的。通过对某些对象Cache IO的状态也可以为解释某条SQL为什么会在执行计划没有变化的情况下,执行时间变长的某种原因。

Object Stats相当于Oracle的Top Segments,用于发现某个对象存在的问题有一定的价值。维度划分也比较详细,应用开发商应该能够从中发现很多有价值的信息。

至此看到的WDR报告的内容虽然说存在一定的遗憾,不过总体还是不错的。可惜的是看到这里报告也到了结尾,似乎有点意犹未尽,作为一个DBA,我还没有看到一些我特别想看到的东西。    

这份报告如果用于性能分析,那么一些关键指标的数据依然是十分需要的,可惜这里没有。GaussDB的WDR报告中把更多的细节留在CN节点的报告中,集群报告似乎过于简单了。即使细节可以从CN节点的报告中获得,在集群的报告里,还是缺少了一些十分重要的信息,目前从GaussDB的可观测性指标中,这些数据都是可以十分轻松地获取到的,要想加在报告里并不困难。我从一个DBA的角度列举一下我希望在WDR集群报告里想看到但是没看到的数据:

1)集群的拓扑信息,CMS/CN/DN/GTM/ETCD等的基本信息,基本健康状态等。

2)系统关键指标详细清单(集群汇总信息)。

3)系统关键目录的使用情况(各节点数据目录/日志目录)。

4)全局事务的总体情况。

5)报告时间区间内的数据库锁冲突情况。

6)SEQUENCE的使用情况。

7)复制组与RTO/RPO情况。

8)集群负载均衡性,集群中各个CN节点的负载是否均衡。集群资源使用均衡性(CPU/IO/内存/网络)。

今天只是分析了一下集群的WDR报告,还有一些信息会在CN/DN的报告中看到。在没有分析CN/DN节点的WDR之前,我先不做总体的评价,等CN/DN报告分析结束后再来做最后的点评吧。

 

本文内容来自于徐戟(白鳝)老师,南京基石数据技术有限责任公司技术总监。曾供职于DEC深圳研发中心、赛格计算机有限公司、长天集团、联想金融事业部等。在软件开发、系统运维、信息系统优化、信息系统国产化替代等领域从事技术研究近30年,曾主持开发了国内首套电信级联机实时计费系统、国内首套三检合一的检验检疫管理系统、银行综合大前置平台(IPP)等大型系统。著有《Oracle RAC日记》、《Oracle DBA优化日记》和《DBA的思想天空》等技术专著。深圳市鲲鹏产业联盟高级顾问,Oracle ACE,POSTGRESQL ACE DIRECTOR。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/483423.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

列强,瓜分台积电!

特朗普曾说,台积电是他能想到的,唯一一家被迫停产会导致全球经济萧条的企业。 如今,美国、日本、欧洲争相发出巨额补贴,“邀请”台积电到当地设厂,对这家唯一重要的企业发起了攻势。 2022年12月6日,美国…

【LeetCode: 120. 三角形最小路径和 + 动态规划】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

WEB DDOS的安全策略

近年来网络攻击的数量和频率急剧上升,针对Web应用程序的DDoS海啸攻击就是其中增长非常迅速的一个种类。过去常见的HTTP/S洪水攻击正在大范围的转变为更难对付的Web DDoS海啸攻击,网络安全空间攻防对抗越演越烈,企业用户面临更加严峻的网络安全…

思通舆情 是一款开源免费的舆情系统 介绍

思通舆情 是一款开源免费的舆情系统。 支持本地化部署,支持在线体验。 支持对海量舆情数据分析和挖掘。 无论你是使用者还是共同完善的开发者,欢迎 pull request 或者 留言对我们提出建议。 您的支持和参与就是我们坚持开源的动力!请 sta…

[java基础揉碎]理解main方法语法

目录 深入理解main方法 解释main方法的形式: main方法的特别说明: main方法的动态传值: 深入理解main方法 解释main方法的形式: public static void main(String[] args){} 1.mian方法是虚拟机调用 2. java虚拟机需要调用类的main()方法,所以该方法的访问权…

每日一题 --- 移除链表元素[力扣][Go]

移除链表元素 题目:203. 移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回 新的头节点 。 示例 1: 输入:head [1,2,6,3,4,5,6], val 6 输出&#xf…

【源码】I.MX6ULL移植OpenCV

编译完成的源码: git clone https://gitee.com/wangyoujie11/atkboard_-linux_-driver.git 1.下载源码放在自己的opecv源码目录下 2.QTOpenCV工程代码放置的位置 3.更改.pro工程文件的opencv地址 4.使用命令行编译 前提是自己环境中已经配置好arm-qt的交叉编译…

【Redis知识点总结】(六)——主从同步、哨兵模式、集群

Redis知识点总结(六)——主从同步、哨兵模式、集群 主从同步哨兵集群 主从同步 redis的主从同步,一般是一个主节点,加上多个从节点。只有主节点可以接收写命令,主节点接收到的写命令,会同步给从节点&#…

Github 2024-03-24php开源项目日报 Top10

根据Github Trendings的统计,今日(2024-03-24统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量PHP项目10JavaScript项目1Nextcloud服务器:安全的数据之家 创建周期:2796 天开发语言:PHP, JavaScript协议类型:GNU Affero General Public…

【数据结构】考研真题攻克与重点知识点剖析 - 第 1 篇:绪论

前言 本文基础知识部分来自于b站:分享笔记的好人儿的思维导图与王道考研课程,感谢大佬的开源精神,习题来自老师划的重点以及考研真题。此前我尝试了完全使用Python或是结合大语言模型对考研真题进行数据清洗与可视化分析,本人技术…

IDDR、ODDR、IDEALY2和ODELAY2详解

文章目录 前言一、IDDR原语二、ODDR原语三、IDELAYCTRL原语四、IDELAY原语4.1、参数配置 :4.2、端口说明 :4.3、延时控制时序图 五、ODELAY原语 前言 本文参考XILINX手册UG471 一、IDDR原语 参考xilinx手册UG471 IDDR #(.DDR_CLK_EDGE ("SAME_…

【C++11】:统一的列表初始化|声明|STL变化

​ 🎬慕斯主页:修仙—别有洞天 ♈️今日夜电波:マイノリティ脈絡—ずっと真夜中でいいのに。 0:24━━━━━━️💟──────── 4:02 🔄 …

已知屏幕分辨率和屏幕尺寸,JavaScript如何计算屏幕PPI像素密度

返回主目录:OpenLayers扩展组件系列汇总目录:常用OpenLayers地图扩展组件ol-ext、ol-cesium、ol-layerswitcher、ol-geocoder和ol-wind等扩展库 前言 本章作为补充章,用于讲解使用ol-ext组件的前置知识。 要想知道 PPI 是什么,我们需要先理解“像素”这个概念,那么什么是…

【C++算法】洛谷P1102:A-B数对,思路,lower_bound,upper_bound,二分答案,代码详解

文章目录 1)解题思路2)三种情况3)代码 题目链接:P1102 A-B 数对 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 1)解题思路 这道题要求我们在序列中找到 A − B C A-BC A−BC 的数对的个数,下标不同的数…

注解总结,Java中的注解,springboot中的注解

注解总结 1、Junit 开始执行的方法:初始化资源,执行完之后的方法:释放资源 测试方法,必须是:公有、非静态、无参无返回值的 在一个类中,可以定义多个测试方法,每个测试方法可以单独运行&#…

XUbuntu22.04之安装Plantuml(二百二十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

llvm后端

SelectionDAGBuilder是LLVM(Low Level Virtual Machine)编译器中的一个重要组件,它负责将LLVM中间表示(Intermediate Representation,IR)转换为SelectionDAG(选择有向无环图)的形式。…

Nacos部署(四)Docker部署Nacos2.3.x集群环境

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: Nacos部署(四)Docker部署Nacos2.3.x集群环境 ⏱…

adams卸载与安装

adams 卸载后重新安装lnstaller could not read the log directory of the existing installerto backup and restore.Installer will now exit. ADAMS软件卸载安装【adams吧】_百度贴吧 (baidu.com)

阿里云OSS存储的视频如何加水印

OSS是不能进行视频添加水印的,可以图片添加水印。 您可以在视频点播中进行配置: https://help.aliyun.com/zh/vod/user-guide/video-watermarks?spma2c4g.11186623.0.i2 原来的业务代码都是使用python 对oss的 视频进行上传 的,上传的视频路径已经保存到…
最新文章