掌桥专利:专业的专利平台
掌桥专利
首页

一种数据库集群的监控方法、装置、系统、以及设备

文献发布时间:2023-06-19 11:39:06


一种数据库集群的监控方法、装置、系统、以及设备

技术领域

本申请涉及数据库技术领域,尤其涉及一种数据库集群的监控方法、装置、系统、以及设备。

背景技术

GP全称为Greenplum数据库,是一种基于PostgreSQL数据库开发的大规模并行计算数据库,其架构特别针对管理大规模分析型数据仓库以及商业智能工作负载而设计。现有的GP监控工具GPCC,是GP的原生自动化运维工具,它面向数据库管理员和使用者,基于浏览器的可视化图形界面,提供了监控管理功能。然而,现有的监控工具需人工对GP集群进行硬件巡检,在体量巨大的GP集群环境下,巡检的效率十分低效,并且,无法感知各个GP集群的健康状态,导致GP集群的工作效率降低。

为此,如何提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态,成为本领域亟需解决的问题。

发明内容

本申请提供了一种数据库集群的监控方法、装置、系统、以及设备,目的在于提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态。

为了实现上述目的,本申请提供了以下技术方案:

一种数据库集群的监控方法,包括:

在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得所述主节点依据所述采集任务进行信息采集;其中,所述采集任务包括多项指标的信息采集任务;所述指标包括告警指标和巡检指标;所述告警指标用于指示影响数据库集群服务功能的信息项;所述巡检指标用于指示影响所述数据库集群硬件性能、但不影响服务功能的信息项;

获取所述主节点进行信息采集后所得到的结果文件;所述结果文件包括告警日志和巡检日志;所述告警日志用于记录所述告警指标的数值;所述巡检日志用于记录所述巡检指标的数值;

在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障;

将所述巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向所述用户展示所述健康度模型。

可选的,还包括:

将所述巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到所述巡检指标的预测值;其中,所述预测值用于反映所述数据库集群硬件性能的好坏程度;

统计所述预测值大于预设阈值的巡检指标的数量;

在所述预测值大于所述预设阈值的巡检指标的数量,大于预设数值的情况下,提示所述用户所述数据库集群健康状态不佳。

可选的,所述在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障,包括:

对所述告警日志进行关键字检测;

在检测到所述告警日志包含有预设的告警字符的情况下,确定所述告警指标的数值出现异常;

向预设的监控告警平台发送告警提示,触发所述监控告警平台向所述用户发送所述数据库集群出现功能故障的提示。

一种数据库集群的监控装置,包括:

分发单元,用于在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得所述主节点依据所述采集任务进行信息采集;其中,所述采集任务包括多项指标的信息采集任务;所述指标包括告警指标和巡检指标;所述告警指标用于指示影响数据库集群服务功能的信息项;所述巡检指标用于指示影响所述数据库集群硬件性能、但不影响服务功能的信息项;

获取单元,用于获取所述主节点进行信息采集后所得到的结果文件;所述结果文件包括告警日志和巡检日志;所述告警日志用于记录所述告警指标的数值;所述巡检日志用于记录所述巡检指标的数值;

告警单元,用于在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障;

展示单元,用于将所述巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向所述用户展示所述健康度模型。

可选的,还包括:

评估单元,用于将所述巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到所述巡检指标的预测值;其中,所述预测值用于反映所述数据库集群硬件性能的好坏程度;统计所述预测值大于预设阈值的巡检指标的数量;在所述预测值大于所述预设阈值的巡检指标的数量,大于预设数值的情况下,提示所述用户所述数据库集群健康状态不佳。

可选的,所述告警单元用于:

对所述告警日志进行关键字检测;

在检测到所述告警日志包含有预设的告警字符的情况下,确定所述告警指标的数值出现异常;

向预设的监控告警平台发送告警提示,触发所述监控告警平台向所述用户发送所述数据库集群出现功能故障的提示。

一种数据库集群的监控系统,包括:

调度模块、采集模块、以及分析模块;

所述调度模块,用于在接收到用户的触发操作的情况下,依据数据库集群的信息预先配置采集任务,并向所述采集模块发送所述采集任务;其中,所述采集任务包括多项指标的信息采集任务;所述指标包括告警指标和巡检指标;所述告警指标用于指示影响所述数据库集群服务功能的信息项;所述巡检指标用于指示影响所述数据库集群硬件性能、但不影响服务功能的信息项;

所述采集模块,用于在接收到所述采集任务的情况下,将所述采集任务分发到所述数据库集群的主节点,使得所述主节点依据所述采集任务进行信息采集,并获取所述主节点进行信息采集后所得到的结果文件;所述结果文件包括告警日志和巡检日志;所述告警日志用于记录所述告警指标的数值;所述巡检日志用于记录所述巡检指标的数值;

所述采集模块,还用于将所述告警日志和所述巡检日志发送给所述分析模块;

所述分析模块,用于在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障;

所述分析模块,还用于将所述巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向所述用户展示所述健康度模型。

可选的,所述分析模块还用于:

将所述巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到所述巡检指标的预测值;其中,所述预测值用于反映所述数据库集群硬件性能的好坏程度;

统计所述预测值大于预设阈值的巡检指标的数量;

在所述预测值大于所述预设阈值的巡检指标的数量,大于预设数值的情况下,提示所述用户所述数据库集群健康状态不佳。

一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的数据库集群的监控方法。

一种数据库集群的监控设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;

所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的数据库集群的监控方法。

本申请提供的技术方案,在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得主节点依据采集任务进行信息采集。其中,采集任务包括多项指标的信息采集任务,指标包括告警指标和巡检指标,告警指标用于指示影响数据库集群服务功能的信息项,巡检指标用于指示影响数据库集群硬件性能、但不影响服务功能的信息项。获取主节点进行信息采集后所得到的结果文件。结果文件包括告警日志和巡检日志。告警日志用于记录告警指标的数值,巡检日志用于记录巡检指标的数值。在检测到告警指标的数值出现异常的情况下,向用户发送告警提示,提示用户数据库集群出现功能故障。将巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向用户展示健康度模型。相较于现有技术,无需再通过人工介入的方式来获知数据库集群的功能故障情况,运维效率得到显著提升,并节省大量的运维人力。此外,通过健康度模型、以及巡检指标,辅助用户获悉数据库集群的硬件性能的好坏程度,以便能够有效感知数据库集群的健康状态。可见,利用本申请所述方案,能够显著提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a为本申请实施例提供的一种数据库集群的监控系统的架构示意图;

图1b为本申请实施例提供的一种健康度模型的示意图;

图1c为本申请实施例提供的一种数据库集群的监控系统实现监控过程的示意图;

图2本申请实施例提供的一种数据库集群的监控方法的示意图;

图3本申请实施例提供的一种数据库集群的监控装置的架构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

如图1a所示,为本申请实施例提供的一种数据库集群的监控系统的架构示意图,包括:

调度模块101、采集模块102、以及分析模块103。

其中,调度模块101,用于在接收到用户的触发操作的情况下,依据数据库集群(下述简称集群)的信息预先配置采集任务。集群的信息包括但不限于为:集群名称、集群的主节点的浮动IP、数据库名称、集群的用户、以及集群的用户的密码。此外,调度模块101还用于向采集模块102下发采集任务,具体的,可以在接收到用户的触发操作的情况下,向采集模块102发送采集任务,也还可以定时向采集模块102发送采集任务。

需要说明的是,定时向采集模块102发送采集任务的具体实现方式,为本领域技术人员所熟悉的公知常识,例如,可以调用预先设置的crontab进程实现采集任务的定时下发。

需要强调的是,采集任务包括多项指标的信息采集任务,指标包括告警指标和巡检指标。告警指标用于指示影响集群服务功能的信息项,巡检指标用于指示影响集群硬件性能、但不影响服务功能的信息项。

在本申请实施例中,各项指标的信息采集任务中所指定的采集时间,可由技术人员根据实际情况进行设置,具体的,针对告警指标,其信息采集任务中所指定的采集时间间隔较短,针对巡检指标,其信息采集任务中所指定的采集时间间隔较长。

采集模块102,用于在接收到采集任务的情况下,通过预设的采集服务器将采集任务分发到集群的主节点,使得集群的主节点依据采集任务进行信息采集。此外,采集模块102,还用于获取集群的主节点进行信息采集后所得到的结果文件,并将结果文件发送给分析模块103。

需要说明的是,不同集群的主节点在进行信息采集过程中,均使用相同的采集脚本(例如shell脚本、且脚本所使用的参数项是相同的),并且,不同集群的结果文件的文件格式均是统一的,均能被预设的监控告警平台识别。

具体的,采集脚本的目录结构,可以参见表1所示。

表1

上述表1中,“序号”、“一级目录”、“二级目录”、“三级目录”、以及“说明”,均是目录结构所常用的技术用语。此外,“序号”、“一级目录”、“二级目录”、“三级目录”、以及“说明”各自所指示的内容,均为本领域技术人员所熟悉的公知常识。

需要说明的是,上述表1所示的内容仅仅用于举例说明。

在本申请实施例中,结果文件包括告警日志和巡检日志,告警日志用于记录告警指标的数值,巡检日志用于记录巡检指标的数值。

具体的,告警指标的具体设置样式,可参见表2所示。

表2

在表2中,所谓的“检查项”,即为本申请实施例所述的信息项,“功能指标”和“性能指标”即是对信息项的进一步细分,“监控频率”用于表征信息采集任务中所指定的采集时间间隔,“序号”、“检查项”、“是否告警”、以及“日志代码”中所指示的内容,均是本领域技术人员所熟悉的公知常识,这里不再赘述。

需要说明的是,上述表2所述的内容仅仅用于举例说明。

具体的,巡检指标的具体设置样式,可参见表3所示。

表3

在表3中,所谓的“检查项”,即为本申请实施例所述的信息项,“功能指标”和“性能指标”即是对信息项的进一步细分,“定时巡检”、“日常监测”和“实时巡检”均用于表征信息采集任务中所指定的采集时间间隔,“序号”、“检查项”、以及“日志代码”中所指示的内容,均是本领域技术人员所熟悉的公知常识,这里不再赘述。

需要说明的是,上述表3所述的内容仅仅用于举例说明。

分析模块103,用于在检测到告警指标的数值出现异常的情况下,向用户发送告警提示,提示用户数据库集群出现功能故障。具体的,分析模块103用于:对告警日志进行关键字检测,在检测到告警日志包含有预设的告警字符的情况下,确定告警指标的数值出现异常,并向预设的监控告警平台发送告警提示,触发监控告警平台向用户发送数据库集群出现功能故障的提示。

分析模块103还用于将巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向用户展示健康度模型。

需要说明的是,所谓的健康度模型,即是健康度评价指标体系,利用多维度指标体现集群健康状态的指标体系。具体的,集群的健康度模型可参见如图1b所示。具体的,还可以利用机器学习算法对集群的健康度模型进行优化处理。

此外,分析模块103还用于:将巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到巡检指标的预测值,预测值用于反映集群硬件性能的好坏程度;统计预测值大于预设阈值的巡检指标的数量;在预测值大于预设阈值的巡检指标的数量,大于预设数值的情况下,提示用户该集群健康状态不佳。

需要说明的是,趋势预测模型为本领域技术人员所熟悉的公知常识,这里不再赘述。

需要强调的是,现有的GP集群的监控指标存在监控指标单一的缺点,缺少一个采集指标丰富、扩展性强的GP性能监控指标体系,作为企业级大数据平台的运维支撑。此外,现有的GP集群的监控工具缺少告警指标和巡检指标的区分。本申请实施例所述的系统针对不同类型的指标,实现了功能告警和硬件巡检的区分,将影响GP集群功能的告警指标与预设的监控告警平台进行对接,实现自动告警,提高运维效率。将影响GP集群硬件性能的巡检指标,通过健康度模型进行展示,为用户(例如运维人员)优化集群性能提供有效的参考依据。

有鉴于上述各个模块的功能,如图1c所示,本申请所述数据库集群的监控系统实现对数据库集群硬件性能、以及服务功能的监控的过程,包括如下步骤:

S101:在接收到用户的触发操作的情况下,调度模块依据数据库集群的信息预先配置采集任务。

S102:调度模块向采集模块发送采集任务。

S103:采集模块将采集任务分发到数据库集群的主节点,使得主节点依据采集任务进行信息采集。

其中,结果文件包括告警日志和巡检日志。

S104:采集模块获取主节点进行信息采集后所得到的结果文件。

其中,结果文件包括告警日志和巡检日志。

S105:采集模块向分析模块发送告警日志和巡检日志。

S106:在检测到告警指标的数值出现异常的情况下,分析模块向用户发送告警提示,提示用户数据库集群出现功能故障。

S107:分析模块将巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向用户展示健康度模型。

综上所述,相较于现有技术,无需再通过人工介入的方式来获知数据库集群的功能故障情况,运维效率得到显著提升,并节省大量的运维人力。此外,通过健康度模型、以及巡检指标,辅助用户获悉数据库集群的硬件性能的好坏程度,以便能够有效感知数据库集群的健康状态。可见,利用本实施例所述方案,能够显著提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态。

如图2所示,为本申请实施例提供的一种数据库集群的监控方法的示意图,包括如下步骤:

S201:在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得主节点依据采集任务进行信息采集。

其中,采集任务包括多项指标的信息采集任务,指标包括告警指标和巡检指标,告警指标用于指示影响数据库集群服务功能的信息项,巡检指标用于指示影响数据库集群硬件性能、但不影响服务功能的信息项。

S202:获取主节点进行信息采集后所得到的结果文件。

其中,结果文件包括告警日志和巡检日志,告警日志用于记录告警指标的数值,巡检日志用于记录巡检指标的数值。

S203:在检测到告警指标的数值出现异常的情况下,向用户发送告警提示,提示用户数据库集群出现功能故障。

可选的,对告警日志进行关键字检测;在检测到告警日志包含有预设的告警字符的情况下,确定告警指标的数值出现异常;向预设的监控告警平台发送告警提示,触发监控告警平台向用户发送数据库集群出现功能故障的提示。

S204:将巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向用户展示健康度模型。

可选的,将巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到巡检指标的预测值;其中,预测值用于反映数据库集群硬件性能的好坏程度;统计预测值大于预设阈值的巡检指标的数量;在预测值大于预设阈值的巡检指标的数量,大于预设数值的情况下,提示用户数据库集群健康状态不佳。

综上所述,相较于现有技术,无需再通过人工介入的方式来获知数据库集群的功能故障情况,运维效率得到显著提升,并节省大量的运维人力。此外,通过健康度模型、以及巡检指标,辅助用户获悉数据库集群的硬件性能的好坏程度,以便能够有效感知数据库集群的健康状态。可见,利用本实施例所述方案,能够显著提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态。

与上述本申请实施例提供的数据库集群的监控方法相对应,本申请实施例还提供了一种数据库集群的监控装置。

如图3所示,为本申请实施例提供的一种数据库集群的监控装置的架构示意图,包括:

分发单元100,用于在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得主节点依据采集任务进行信息采集;其中,采集任务包括多项指标的信息采集任务;指标包括告警指标和巡检指标;告警指标用于指示影响数据库集群服务功能的信息项;巡检指标用于指示影响数据库集群硬件性能、但不影响服务功能的信息项。

获取单元200,用于获取主节点进行信息采集后所得到的结果文件;结果文件包括告警日志和巡检日志;告警日志用于记录告警指标的数值;巡检日志用于记录巡检指标的数值。

告警单元300,用于在检测到告警指标的数值出现异常的情况下,向用户发送告警提示,提示用户数据库集群出现功能故障。

其中,告警单元300用于:对告警日志进行关键字检测;在检测到告警日志包含有预设的告警字符的情况下,确定告警指标的数值出现异常;向预设的监控告警平台发送告警提示,触发监控告警平台向用户发送数据库集群出现功能故障的提示。

展示单元400,用于将巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向用户展示健康度模型。

评估单元500,用于将巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到巡检指标的预测值;其中,预测值用于反映数据库集群硬件性能的好坏程度;统计预测值大于预设阈值的巡检指标的数量;在预测值大于预设阈值的巡检指标的数量,大于预设数值的情况下,提示用户数据库集群健康状态不佳。

综上所述,相较于现有技术,无需再通过人工介入的方式来获知数据库集群的功能故障情况,运维效率得到显著提升,并节省大量的运维人力。此外,通过健康度模型、以及巡检指标,辅助用户获悉数据库集群的硬件性能的好坏程度,以便能够有效感知数据库集群的健康状态。可见,利用本实施例所述方案,能够显著提高GP集群的硬件巡检效率、并有效感知GP集群的健康状态。

本申请还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,程序执行上述本申请提供的数据库集群的监控方法。

本申请还提供了一种数据库集群的监控设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供的数据库集群的监控方法,包括如下步骤:

在接收到用户的触发操作的情况下,将预先配置的采集任务分发到数据库集群的主节点,使得所述主节点依据所述采集任务进行信息采集;其中,所述采集任务包括多项指标的信息采集任务;所述指标包括告警指标和巡检指标;所述告警指标用于指示影响数据库集群服务功能的信息项;所述巡检指标用于指示影响所述数据库集群硬件性能、但不影响服务功能的信息项;

获取所述主节点进行信息采集后所得到的结果文件;所述结果文件包括告警日志和巡检日志;所述告警日志用于记录所述告警指标的数值;所述巡检日志用于记录所述巡检指标的数值;

在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障;

将所述巡检指标的数值,输入至预先构建的健康度模型中,并通过预设的前端界面向所述用户展示所述健康度模型。

可选的,还包括:

将所述巡检日志在预设历史时间段内所记录的巡检指标的数值,输入至预设的趋势预测模型中,得到所述巡检指标的预测值;其中,所述预测值用于反映所述数据库集群硬件性能的好坏程度;

统计所述预测值大于预设阈值的巡检指标的数量;

在所述预测值大于所述预设阈值的巡检指标的数量,大于预设数值的情况下,提示所述用户所述数据库集群健康状态不佳。

可选的,所述在检测到所述告警指标的数值出现异常的情况下,向所述用户发送告警提示,提示所述用户所述数据库集群出现功能故障,包括:

对所述告警日志进行关键字检测;

在检测到所述告警日志包含有预设的告警字符的情况下,确定所述告警指标的数值出现异常;

向预设的监控告警平台发送告警提示,触发所述监控告警平台向所述用户发送所述数据库集群出现功能故障的提示。

本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 一种数据库集群的监控方法、装置、系统、以及设备
  • 一种面向高可用数据库集群的恢复方法、系统及设备终端
技术分类

06120113008309