GaussDB(DWS)数据库智能运维系统页面组织逻辑

举报
鲁大师 发表于 2021/05/31 19:49:36 2021/05/31
【摘要】 前言数据库监控功能(DMS)是GaussDB(DWS) 为客户实现数据库监控分析微服务组件能力,对业务数据库的硬件网络、数据库视图数据、集群数据关键性能指标进行收集、监控、分析。通过综合收集到的多种类型数据,对数据库主机、实例、业务SQL进行诊断,及时暴露数据库中关键故障及性能问题,指导客户进行优化解决。监控项列表通过数据库监控功能提供的GaussDB(DWS)相关监控项,用户可以从中获取有...

前言

        数据库智能运维的核心的功能是运维,数据库运维是系统的本职工作必须做好,而智能则主要体现在“易用性”上。GaussDB(DWS)数据库智能运维系统将通过一系列手段,优化数据库的运维效率和用户体验。包括但不仅限于,监控数据可视化,根因分析智能化以及运维过程自动化。通过数据库运维逐步的智能化改造,提高数据库运维工具的易用性,从而节省运维人员在运维过程中的时间消耗。

本文将从运维数据可视化和提高运维工具的易用性角度来尝试分析如何构建GaussDB(DWS)数据库智能运维系统的页面。


数据库智能运维系统页面逻辑

        通过分析数据库智能运维系统的用户角色,我们发现对于数据库系统存在三种用户角色,应用开发,SRE与DBA。他们关注数据库运维的不同侧面,根据用户角色所处的位置不同,我们又可以把他们区分为前台用户和后台用户,本文将重点讨论SRE和DBA角色相关的后台用户的使用需求及页面。SRE和DBA两个角色同属于后台运维角色而又有所区别,一个关注于数据库故障发现,一个专注于数据库故障根因定位。但是,在现网场景中,为了节省人力成本,SRE角色和DBA角色往往是同一个人,他需要整体关注数据库的方方面面。因此,我们在设计页面时特地将页面抽象为主题页面和工具页面两种类型,从而兼顾了这两种角色在发现问题,定位问题过程中,思维的连续性。

这里的主题页面与工具页面的定义如下:

主题页面

  • 承载某个监控主题(集群概览,节点概览,实例概览,查询,会话,事务,等等)
  • 负责围绕监控主题组织数据展示数据
  • 帮助用户快速认知该主题的系统状态和定位问题根因

工具页面

  • 帮助用户简化某个场景的问题发现和根因定位(比如历史曲线对工具)
  • 无固定页面入口,多以弹窗的形式出现
  • 用完即销毁,工具式取用,不存储任何持久化数据

我们将尝试以主题页面为骨架,以工具页面为血肉,逐步把用户的运维场景和需求以工具页面的形式固化下来,丰富GaussDB(DWS)数据库智能运维系统目前的监控运维能力。未来可以进一步将其中一些成熟工具或者场景自动化,逐步实现云上数据库全自动化运维。


数据库智能运维系统主题页面组织形式

        之前,简单介绍了GaussDB(DWS)数据库智能运维系统的页面设计思想,下面我们将展开来看看每一个类型页面的具体设计方案。GaussDB(DWS)数据库属于MPP DB分布式数据库,这种集群结构复杂,层次维度多,物理维度数据和业务维度数据混杂,比较难以完整的展现集群的状态。因此,我们通过分析,梳理了如下3个类别的页面,力争给用户呈现全面有内在逻辑的页面内容组织形式。


故障发现页面

        该页面采用层次化设计,将集群信息按照层次化聚合的方式组织在一系列的页面面结构中。采用总览和下钻细分页面的设计逻辑,将集群与节点,集群与实例,集群业务负载与数据库和用户的关系分门别类的展示出来。通过如下图所示的这种层次化组织形式,用户可以通过简单的页面下钻就能直接定位到存在问题的页面。

下面我们展开介绍一下每个页面:

  • 集群概览:作为整个集群监控页面的首页,将在该页面上整体的展示集群的运行时状态。该页面将有4个部分组成,集群资源,集群负载,节点拓扑,实例拓扑,4个部分分别提供各自维度的聚合信息,并展现在页面上。
  • 集群资源:展示集群整体资源的实时和历史消耗信息。(集群资源包括:CPU,内存,磁盘,磁盘I/O,网络I/O)
  • 集群负载:展示数据库集群的业务负载情况,包括,并发连接数,并发查询数,慢SQL,工作负载队列等聚合信息。支持按数据库分类,点击数据库名称可以下钻到下一层数据库概览页面展示更详细的信息。
  • 数据库概览:展示某个数据库的概览信息,包括,并发连接数,并发查询数,慢SQL,工作负载队列等聚合信息。
  • 节点列表:展示集群的物理拓扑结构,将提供两种形式的展示方式(列表,拓扑图),每一个节点名称点击后可以下钻,下钻页面为节点概览页面,该页面可以展示节点的更多信息。
  • 节点概览:展示当前节点的实时和历史资源消耗信息。并且提供过去24小时的节点概览统计报表,帮助用户分析节点资源水位。也会展示分布在当前节点上的实例信息,以列表的形式展示出来,下钻后跳转实例概览页面。
  • 实例列表:展示集群的逻辑拓扑结构,将提供两形式的展示方式(列表,拓扑图),每一个实例点击后可以下钻,下钻页面为实例概览页面,该页面将展示当前实例的详细信息。
  • 实例概览:展示当前实例的业务负载信息,例如,QPS,相应时间,实时查询,实时查询统计等信息。

通过这种页面组织形式,用户可以从集群概览页面,一步一步下钻到自己感兴趣的资源上,从而获得更详细的故障信息。

        除了通过集群概览发现问题之外,告警也是一个非常重要的问题发现主题页面。通过内置或者用户配置的告警规则,我们可以过滤集群的运行时数据,发现违反规则的数据,从而触发告警。告警信息将会被显示在告警展示页面上,该页面将提供按时间和优先级排序的告警信息,可以帮助用户/SRE快速发现问题。


根因分析页面

        业务侧的根因分析页面设计,主要围绕数据库的相关特性展开。因为数据库的复杂性和执行过程中的不确定性,因此我们无法简单的按照SQL执行的顺序串起整个根因分析流程。结合友商经验,我们决定采用分特性的方式组织根因分析的页面结构。

下面我们展开介绍一下每个页面:

  • 会话分析:
  • 查询分析:该页面主要可以展示集群中实时和历史运行的每一条SQL语句的信息,给用户提供一个功能强大的SQL执行信息检索平台,帮助用户快速获取足够的信息定位问题。
  • 事务分析:
  • 存储分析:
  • 可靠性分析:
  • 统计报表:


数据库智能运维系统工具页面

我们认为运维工具是SRE和DBA运维经验的固化,因此运维工具具有针对性和完整性,一个运维工具针对一类运维问题的定位和分析。因此,我们计划把运维工具以弹出窗口的形式提供出来,有需要时就可以出现,方便使用和扩展。运维工具还处在设计开发过程中,我们需要与SRE,DBA深度合作,才能开发出符合用户需求的工具,逐步丰富运维工具箱。

这里我仅仅举两个运维工具的例子权当抛转引玉:

  • 曲线对比工具:该工具可以提供指定指标数据的对比,多图同列,昨日同期等等,曲线比较功能。
  • 慢查询工具:该工具可以提供指定SQL语句的一段时间内的调用次数,返回行数,总耗时,阻塞时间等的统计信息展示,帮助用户分析慢查询的特点。



        本文是介绍云上的数据库监控运维体系设计的核心概念的三篇文章之三,本文尝试从概念和逻辑上推导GaussDB(DWS)数据库智能运维系统监控目标,监控指标与承载页面的关系。有了这个基本关系框架,我们后续所需要做的工作和目标都变得清晰可见。愿我们的期待早日成为现实,让云端的数据库运维工作变得更轻松与智能。

想了解GuassDB(DWS)更多信息,欢迎微信搜索“GaussDB DWS”关注微信公众号,和您分享最新最全的PB级数仓黑科技,后台还可获取众多学习资料哦~





【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。