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

数据同步监控方法及装置

文献发布时间:2023-06-19 12:02:28


数据同步监控方法及装置

技术领域

本申请涉及数据处理领域,也可用于金融领域,具体涉及一种数据同步监控方法及装置。

背景技术

现有针对数据同步的监控方案主要是计算源端时间与目标端时间差后将该时间差与预设时间阀值进行对比判断,超过阈值则提醒。或根据同步过程中产生的中间文件的状态信息判断故障类型。

发明人发现,现有技术中的监控方案至少存在以下缺点:

一、现有监控方案将源端到目标端的时间差即整个数据同步过程的延迟时间作为预警的判据,较为简单,没有考虑到同步过程涉及多个环节,不能区分场景定位问题类型,只根据整体网络延迟时间是否高于阀值给出简单的警示信息。

二、根据中间文件的状态信息判断故障类型只能在出现故障时告警,对于未发生故障但由于负载过高导致同步延迟时间骤增的情况不能及时给出预警。

发明内容

针对现有技术中的问题,本申请提供一种数据同步监控方法及装置,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

为了解决上述问题中的至少一个,本申请提供以下技术方案:

第一方面,本申请提供一种数据同步监控方法,包括:

根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间;

根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

进一步地,所述根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间,包括:

根据所述心跳数据的创建时间和所述心跳数据写入消息中间件时的写入时间,确定对应的数据采集延迟时间;

根据所述心跳数据写入消息中间件时的写入时间和所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据落库延迟时间。

进一步地,所述根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作,包括:

在所述数据采集延迟时间超过预设采集延迟阈值时,判断所述消息中间件的内存占用率是否超过预设内存占用率阈值或磁盘占用率是否超过预设磁盘占用率阈值,若是,则发出缓存容量告警信号;

否则,判断所述源端数据库的CPU负载状态或线程执行状态是否异常,若是,则发出源端数据库告警信号。

进一步地,所述根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作,包括:

在所述数据落库延迟时间超过预设落库延迟阈值时,判断连接所述消息中间件和所述目标端数据库的数据同步程序是否异常,若是,则发出同步程告警信号;

否则,判断所述目标端数据库的内存占用率是否超过预设内存占用率阈值或CPU负责状态是否异常,若是,则发出目标端数据库性能告警信号。

第二方面,本申请提供一种数据同步监控装置,包括:

数据延迟确定模块,用于根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间;

数据告警操作模块,用于根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

进一步地,所述数据延迟确定模块包括:

数据采集延迟时间确定单元,用于根据所述心跳数据的创建时间和所述心跳数据写入消息中间件时的写入时间,确定对应的数据采集延迟时间;

数据落库延迟时间确定单元,用于根据所述心跳数据写入消息中间件时的写入时间和所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据落库延迟时间。

进一步地,所述数据告警操作模块包括:

缓存容量告警单元,用于在所述数据采集延迟时间超过预设采集延迟阈值时,判断所述消息中间件的内存占用率是否超过预设内存占用率阈值或磁盘占用率是否超过预设磁盘占用率阈值,若是,则发出缓存容量告警信号;

源端数据库告警单元,用于在所述消息中间件的内存占用率未超过预设内存占用率阈值时,判断所述源端数据库的CPU负载状态或线程执行状态是否异常,若是,则发出源端数据库告警信号。

进一步地,所述数据告警操作模块包括:

同步程序告警单元,用于在所述数据落库延迟时间超过预设落库延迟阈值时,判断连接所述消息中间件和所述目标端数据库的数据同步程序是否异常,若是,则发出同步程序告警信号;

目标端数据库性能告警单元,用于若连接所述消息中间件和所述目标端数据库的数据同步程序未发生异常时,判断所述目标端数据库的内存占用率是否超过预设内存占用率阈值或CPU负责状态是否异常,若是,则发出目标端数据库性能告警信号。

第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的数据同步监控方法的步骤。

第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的数据同步监控方法的步骤。

由上述技术方案可知,本申请提供一种数据同步监控方法及装置,通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

附图说明

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

图1为本申请实施例中的数据同步监控方法的流程示意图之一;

图2为本申请实施例中的数据同步监控方法的流程示意图之二;

图3为本申请实施例中的数据同步监控方法的流程示意图之三;

图4为本申请实施例中的数据同步监控方法的流程示意图之四;

图5为本申请实施例中的数据同步监控装置的结构图之一;

图6为本申请实施例中的数据同步监控装置的结构图之二;

图7为本申请实施例中的数据同步监控装置的结构图之三;

图8为本申请实施例中的数据同步监控装置的结构图之四;

图9为本申请一具体实施例中的数据同步监控方法的示意图;

图10为本申请实施例中的电子设备的结构示意图。

具体实施方式

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

考虑到现有技术中的监控方案将源端到目标端的时间差即整个数据同步过程的延迟时间作为预警的判据,较为简单,没有考虑到同步过程涉及多个环节,不能区分场景定位问题类型,只根据整体网络延迟时间是否高于阀值给出简单的警示信息,且根据中间文件的状态信息判断故障类型只能在出现故障时告警,对于未发生故障但由于负载过高导致同步延迟时间骤增的情况不能及时给出预警的问题,本申请提供一种数据同步监控方法及装置,通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

为了能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常,本申请提供一种数据同步监控方法的实施例,参见图1,所述数据同步监控方法具体包含有如下内容:

步骤S101:根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间。

可选的,本申请可以在源端数据库中建立一张心跳表,每隔一定时间间隔(例如10s)向心跳表中插入一条心跳数据,被同步的表和心跳数据都被后续采集增量日志信息后交由数据同步程序将增量日志转换为目标端数据库中表的数据变更。

可选的,采集源端数据库被同步表的增量日志信息放入消息中间件的消息缓存队列kafka中等待数据同步程序消费,具体可以采用开源软件Canal获取源端数据库mysql数据库增量binlog日志存入kafka。

同时,本申请将采集到的消息存在kafka中后,还可以过滤心跳数据并增加时间戳,处理完成的数据再发送到同步程序,被同步程序消费,消费消息后同步程序将心跳数据实时更新到目标端数据库中,此处具体可以通过同步程序将数据写入目标端数据库(例如kudu)。

由此,本申请可以获知所述心跳数据的创建时间T0、所述心跳数据写入消息中间件时的写入时间T1以及所述心跳数据传输至目标端数据库时的落库时间T2,并以此确定数据采集延迟时间和数据落库延迟时间。

步骤S102:根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

可选的,本申请可以通过数据采集延迟时间和数据落库延迟时间监控整个数据同步过程,其中包括校验kafka、canal、同步程序是否异常、在redis中实时校验心跳数据是否在各环节(数据采集和数据落地)丢失、通过对心跳数据计算各环节时间延迟实时分析当前数据同步整个流程的网络延迟、问题分析,最后根据设定的分析流程判断当前状态并向不同人员发送相应告警信号(例如邮件、电话等)。

从上述描述可知,本申请实施例提供的数据同步监控方法,能够通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

为了能够阶段性反映出数据采集、同步过程中的网络延迟,在本申请的数据同步监控方法的一实施例中,参见图2,上述步骤S101还可以具体包含如下内容:

步骤S201:根据所述心跳数据的创建时间和所述心跳数据写入消息中间件时的写入时间,确定对应的数据采集延迟时间。

步骤S202:根据所述心跳数据写入消息中间件时的写入时间和所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据落库延迟时间。

可选的,本申请可以在源端数据库建一张心跳表,并每隔固定时间向心跳表中插入一条包含唯一id和创建时间(T0)的心跳数据。并向redis中写入一条哈希类型的数据。key为该心跳数据id,T0为该心跳数据value中T0的值。

然后,在将采集到的心跳数据写入消息中间件时,为每条心跳数据加入当前时间作为T1,计算T1与T0的时间差ta即数据采集延迟时间,向redis中设置key为该心跳数据id的value中T1的值为T1,设置ta为ta的值。每小时新增一个流量计数数据,初始为0,除心跳外的每条消息在存入相应的topic时消息。该小时的流量数累加1。

再然后,数据写入目标端数据库kudu时心跳数据增加当前系统时间T2,并计算T2与T1之间的时间差tb即数据落库延迟时间。将T2与tb写入redis中该心跳数据的value中T2和tb。

在本申请的其他实施例中,本申请可以使用开源软件Canal获取源数据库mysql数据库binlog日志存入kafka后,根据表名过滤心跳数据存入单独的kafka topic中,其他消息根据binlog中的表名分别存入各个表的topic中。

为了能够准确根据数据采集延迟时间执行对应的数据告警操作,在本申请的数据同步监控方法的一实施例中,参见图3,上述步骤S102还可以具体包含如下内容:

步骤S301:在所述数据采集延迟时间超过预设采集延迟阈值时,判断所述消息中间件的内存占用率是否超过预设内存占用率阈值或磁盘占用率是否超过预设磁盘占用率阈值,若是,则发出缓存容量告警信号。

步骤S302:否则,判断所述源端数据库的CPU负载状态或线程执行状态是否异常,若是,则发出源端数据库告警信号。

可选的,本申请可以实时判断kafka进程是否正常,若出现异常则发出预警邮件提示消息缓存组件故障。此外。实时校验redis中当前时间大于T0两秒以上的条心跳数据的T1是否为空,T1为空则说明数据采集模块需要告警,先根据kafka内存占用率是否超过预设阈值(90%)或磁盘占用率是否超过预设磁盘占用率阈值(70%),若是则发出缓存容量告警信息;若kafka内存占用率未超过阈值则判断Canal进程cpu负载状态和Canal进程是否异常,若是则发出Canal异常告警。

为了能够准确根据数据落库延迟时间执行对应的数据告警操作,在本申请的数据同步监控方法的一实施例中,参见图4,上述步骤S102还可以具体包含如下内容:

步骤S401:在所述数据落库延迟时间超过预设落库延迟阈值时,判断连接所述消息中间件和所述目标端数据库的数据同步程序是否异常,若是,则发出同步程告警信号。

步骤S402:否则,判断所述目标端数据库的内存占用率是否超过预设内存占用率阈值或CPU负责状态是否异常,若是,则发出目标端数据库性能告警信号。

可选的,本申请可以实时校验Redis中当前时间大于T1一分钟以上的条心跳数据的T2是否为空,T2为空则先判断同步程序是否异常,若出现异常则发出同步程序问题警示;若同步程序正常则判断kudu内存和cpu是否异常,若内存占用超过预警阈值(80%)或cpu使用率超过预警阈值(80%*核数)则发出kudu性能预警通知。

为了能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常,本申请提供一种用于实现所述数据同步监控方法的全部或部分内容的数据同步监控装置的实施例,参见图5,所述数据同步监控装置具体包含有如下内容:

数据延迟确定模块10,用于根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间。

数据告警操作模块20,用于根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

从上述描述可知,本申请实施例提供的数据同步监控装置,能够通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

为了能够阶段性反映出数据采集、同步过程中的网络延迟,在本申请的数据同步监控装置的一实施例中,参见图6,所述数据延迟确定模块10包括:

数据采集延迟时间确定单元11,用于根据所述心跳数据的创建时间和所述心跳数据写入消息中间件时的写入时间,确定对应的数据采集延迟时间。

数据落库延迟时间确定单元12,用于根据所述心跳数据写入消息中间件时的写入时间和所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据落库延迟时间。

为了能够准确根据数据采集延迟时间执行对应的数据告警操作,在本申请的数据同步监控装置的一实施例中,参见图7,所述数据告警操作模块20包括:

缓存容量告警单元21,用于在所述数据采集延迟时间超过预设采集延迟阈值时,判断所述消息中间件的内存占用率是否超过预设内存占用率阈值或磁盘占用率是否超过预设磁盘占用率阈值,若是,则发出缓存容量告警信号。

源端数据库告警单元22,用于在所述消息中间件的内存占用率未超过预设内存占用率阈值时,判断所述源端数据库的CPU负载状态或线程执行状态是否异常,若是,则发出源端数据库告警信号。

为了能够准确根据数据落库延迟时间执行对应的数据告警操作,在本申请的数据同步监控装置的一实施例中,参见图8,所述数据告警操作模块20包括:

同步程序告警单元23,用于在所述数据落库延迟时间超过预设落库延迟阈值时,判断连接所述消息中间件和所述目标端数据库的数据同步程序是否异常,若是,则发出同步程序告警信号。

目标端数据库性能告警单元24,用于若连接所述消息中间件和所述目标端数据库的数据同步程序未发生异常时,判断所述目标端数据库的内存占用率是否超过预设内存占用率阈值或CPU负责状态是否异常,若是,则发出目标端数据库性能告警信号。

为了更进一步说明本方案,本申请还提供一种应用上述数据同步监控装置实现数据同步监控方法的具体应用实例,参加图9,具体包含有如下内容:

1、在源数据库建一张心跳表,并每隔固定时间向心跳表中插入一条包含唯一id和创建时间(T0)的心跳数据。并向redis中写入一条哈希类型的数据。key为该心跳数据id,T0为该心跳数据value中T0的值。

2、使用阿里开源软件Canal获取源数据库mysql数据库binlog日志存入kafka后,根据表名过滤心跳数据存入单独的kafka topic中。其他消息根据binlog中的表名分别存入各个表的topic中。

3、为每条心跳数据加入当前时间作为T1,计算T1与T0的时间差ta即数据采集延迟时间。向redis中设置key为该心跳数据id的value中T1的值为T1,设置ta为ta的值。每小时新增一个流量计数数据,初始为0,除心跳外的每条消息在存入相应的topic时消息。该小时的流量数累加1。

4、数据写入kudu时心跳数据增加当前系统时间T2,并计算T2与T1之间的时间差tb即数据落库延迟时间。将T2与tb写入redis中该心跳数据的value中T2和tb。

5、实时判断kafka进程是否正常,若出现异常则发出预警邮件提示消息缓存组件故障。此外。实时校验redis中当前时间大于T0两秒以上的条心跳数据的T1是否为空,T1为空则说明数据采集模块需要告警,先根据kafka内存占用率是否超过预设阈值(90%)或磁盘占用率是否超过预设磁盘占用率阈值(70%),若是则发出缓存容量告警信息;若kafka内存占用率未超过阈值则判断Canal进程cpu负载状态和Canal进程是否异常,若是则发出Canal异常告警。实时校验Redis中当前时间大于T1一分钟以上的条心跳数据的T2是否为空,T2为空则先判断同步程序是否异常,若出现异常则发出同步程序问题警示;若同步程序正常则判断kudu内存和cpu是否异常,若内存占用超过预警阈值(80%)或cpu使用率超过预警阈值(80%*核数)则发出kudu性能预警通知。

由上述内容可知,本申请至少还可以实现如下技术效果:

基于心跳数据分阶段统计网络延时并通过校验心跳是否缺失判断数据同步的监控方法,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息。通过统计各阶段网络延时,很好地保证了数据同步过程的可观察性;通过检验心跳数据是否缺失、各组件运行状态很好地保证了同步的可靠性;最后在心跳数据延时信息的基础上基于各过程中组件运行状态分析大延迟出现的原因即使给出较精确的告警信息帮助开发、运维人员快速定位问题解决问题。

从硬件层面来说,为了能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常,本申请提供一种用于实现所述数据同步监控方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:

处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现数据同步监控装置与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的数据同步监控方法的实施例,以及数据同步监控装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。

可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。

在实际应用中,数据同步监控方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。

上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。

图10为本申请实施例的电子设备9600的系统构成的示意框图。如图10所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图10是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。

一实施例中,数据同步监控方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:

步骤S101:根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间。

步骤S102:根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

从上述描述可知,本申请实施例提供的电子设备,通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

在另一个实施方式中,数据同步监控装置可以与中央处理器9100分开配置,例如可以将数据同步监控装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现数据同步监控方法功能。

如图10所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图10中所示的所有部件;此外,电子设备9600还可以包括图10中没有示出的部件,可以参考现有技术。

如图10所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。

其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。

输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。

该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。

存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。

通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。

基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。

本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的数据同步监控方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的数据同步监控方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:

步骤S101:根据设定时间周期在源端数据库中创建心跳数据,并根据所述心跳数据的创建时间、所述心跳数据写入消息中间件时的写入时间以及所述心跳数据传输至目标端数据库时的落库时间,确定对应的数据采集延迟时间和数据落库延迟时间。

步骤S102:根据所述数据采集延迟时间、所述数据落库延迟时间以及所述消息中间件和所述目标端数据库的实时状态信息中的至少一种,执行对应的数据告警操作。

从上述描述可知,本申请实施例提供的计算机可读存储介质,通过基于心跳数据分阶段统计网络延时,并结合同步过程各组件运行状态分析造成较大延迟的原因,最后根据分析结果发出相应告警信息,保证了数据同步过程的可观察性和可靠性,能够有效提高数据同步监控的准确率和效率,从而更快得准确定位异常。

本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 数据同步监控方法及装置
  • 基于大数据同步平台的可靠性监控方法、装置、设备
技术分类

06120113148641