首页> 中国专利> 基于大数据同步平台的可靠性监控方法、装置、设备

基于大数据同步平台的可靠性监控方法、装置、设备

摘要

本申请涉及一种基于大数据同步平台的可靠性监控方法、装置、计算机设备和存储介质。本申请能够提升故障检测的及时性,同时也提升大数据同步平台的数据传输可靠性。该方法包括:通过获取大数据同步平台的源端与目标端的同步事件发生时,由目标端生成的中间文件的状态信息;根据中间文件的状态信息确定该大数据同步平台产生的故障所属故障类型;根据故障类型生成与该故障类型对应的告警信息,并将该告警信息发送至故障处理端。

著录项

说明书

技术领域

本申请涉及数据同步技术领域,特别是涉及一种基于大数据同步平台的可靠性监控方法、装置、计算机设备和存储介质。

背景技术

随着电力行业信息化建设和运营技术的发展,电力企业积累了海量的高价值数据,需要对这些高价值数据进行有效的管理以便进一步分析和应用,因此出现了大数据同步平台,例如Oracle GoldenGate软件(简称OGG),主要用于实现大量数据的实时捕捉、变换和投递。

为了保证OGG在实际应用中的可靠性,以便尽可能早地发现问题,需要对大数据平台OGG的数据同步过程进行必要的监控。现有的数据监控技术中,主要有以下两种:1、通过调用GGSCI(GoldenGate Software Command Interface的缩写)命令返回数据状态信息来判断OGG运行是否正常;2、通过登录GoldenGate Director Web界面并运行GGSCI命令查看数据同步状态;但这两种方法仍然存在操作复杂、对使用人员的技术经验要求高的缺点,导致发现问题的及时性不够,降低了监控的可靠性。

发明内容

基于此,有必要针对上述技术问题,提供一种基于大数据同步平台的可靠性监控方法、装置、计算机设备和存储介质。

一种基于大数据同步平台的可靠性监控方法,所述方法包括:

获取大数据同步平台的源端与目标端的同步事件发生时,由所述目标端生成的中间文件的状态信息;

根据所述中间文件的状态信息确定所述大数据同步平台产生的故障所属故障类型;

根据所述故障类型生成与所述故障类型对应的告警信息,并将所述告警信息发送至故障处理端。

在其中一个实施例中,所述状态信息包括所述中间文件的生成时间和对应的事务类别;所述根据所述中间文件的状态信息确定所述大数据同步平台产生的故障所属故障类型,包括:

根据所述中间文件对应的事务类别对所述中间文件进行分类,得到多个文件类别对应的中间文件;

根据所述生成时间,确定所述中间文件是否在所述文件类别对应的时间周期内被同步至所述文件类别中;

若否,则确定所述故障类型为数据更新故障。

在其中一个实施例中,所述时间周期是通过各文件类别对应的预设周期表达式计算得到的。

在其中一个实施例中,所述状态信息包括所述中间文件对应的进程状态,所述根据所述中间文件的状态信息确定所述大数据同步平台产生的故障所属故障类型,包括:

判断所述中间文件对应的进程状态是否为进程异常状态;

若是,则确定所述故障类型为进程异常故障类型。

在其中一个实施例中,所述状态信息还包括所述目标端中的表状态信息,所述判断所述进程状态是否为进程异常状态,还包括:

若否,则根据所述表状态信息确定所述大数据同步平台产生的故障类型。

在其中一个实施例中,所述根据所述表状态信息确定所述大数据同步平台产生的故障类型,包括:

检测所述目标端存储的数据表在对应的表检测周期内是否被更新;

若否,则确定所述故障类型为表更新故障类型。

在其中一个实施例中,所述表检测周期是根据各数据表所属表类别对应的预设周期表达式计算得到的。

一种基于大数据同步平台的可靠性监控装置,所述装置包括:

状态信息获取模块,用于获取目标端生成的中间文件的状态信息;

故障类型确定模块,用于根据所述中间文件的状态信息确定所述大数据同步平台产生的故障类型;

告警信息生成模块,用于根据所述故障类型生成与所述故障类型对应的告警信息。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述基于大数据同步平台的可靠性监控方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于大数据同步平台的可靠性监控方法的步骤。

上述基于大数据同步平台的可靠定监控方法、装置、计算机设备和存储介质,通过获取大数据同步平台的源端与目标端的同步事件发生时,由目标端生成的中间文件的状态信息;根据中间文件的状态信息确定该大数据同步平台产生的故障所属故障类型;根据故障类型生成与该故障类型对应的告警信息,并将该告警信息发送至故障处理端。该方法能够实现对大数据同步平台的实时自动检测,并在检测出故障的情况下向对应的故障处理人员发送故障信息使得故障处理人员能及时核实故障类型并进行处理,因此提升了故障检测的及时性,同时也提升了大数据同步平台的数据传输可靠性。

附图说明

图1为一个实施例中基于大数据同步平台的可靠性监控方法的应用环境图;

图2为一个实施例中基于大数据同步平台的可靠性监控方法的流程示意图;

图3为一个实施例中数据更新故障对应的告警信息的示意图;

图4为一个实施例中基于大数据同步平台的可靠性监控装置的结构框图;

图5为一个实施例中计算机设备的内部结构图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的基于大数据同步平台的可靠性监控方法,可以应用于如图1所示的应用环境中。其中,源端101通过网络与目标端102进行通信。其中,大数据同步平台指的是可以为源数据库与目标数据库之间进行数据同步的数据处理系统,典型的大数据同步平台例如Oracle GoldenGate软件(简称OGG),主要用于实现大量数据的实时捕捉、变换和投递,保持亚秒级的数据延迟,其中的数据库可以是终端上的数据库,也可以是服务器上的数据库,源端101和目标端102分别可以但不限于是各种个人计算机、笔记本电脑,也可以是独立的服务器或者是多个服务器组成的服务器集群来实现,还可以用终端与服务器的组合来实现。

在一个实施例中,如图2所示,提供了一种基于大数据同步平台的可靠性监控方法,以该方法应用于图1中的目标端102为例进行说明,包括以下步骤:

步骤S201,获取大数据同步平台的源端与目标端的同步事件发生时,由所述目标端生成的中间文件的状态信息。

其中,同步事件是指源端101与目标端102之间的每一次数据同步执行步骤,以OGG数据同步过程为例进行说明,源端数据库101利用抽取进程(Extract Process)读取数据日志,例如Online Redo Log或者Archive Log,然后进行解析,只提取其中数据的变化信息,比如DML(Data Manipulation Language,数据操作语言)操作——增、删、改操作,将抽取的信息转换成OGG自定义的中间格式存放在中间文件(trail file,也称队列文件)中,再利用传输进程将中间文件(trail file)通过TCP/IP传送到目标端102;目标端102有一个进程叫Server Collector,这个进程接收了从源端101传输过来的数据变化信息,把信息缓存到OGG中间文件(trail file)中,等待目标端102的复制进程(replicat process)读取数据;OGG的复制进程(replicat process)从中间文件(trail file)中读取数据变化信息,并创建对应的SQL语句,通过数据库的本地接口执行,提交到目标端数据库,提交成功后更新自己的检查点,记录已经完成复制的位置,数据的复制过程最终完成。

具体地,在目标端102定时执行检查脚本文件,监测中间文件(trail file)的生成情况,获取其中各数据同步文件的状态信息,包括数据同步文件的产生时间、文件大小等。

步骤S202,根据中间文件的状态信息确定上述大数据同步平台产生的故障所属类型;

其中,故障所属类型包括数据更新故障,例如目标端102长时间收不到源端发来的数据同步文件、进程异常故障以及表更新故障等;

具体地,由上述数据同步文件的状态信息确定大数据同步平台的故障类型,例如通过查看在预设的周期内是否收到源端发来的数据同步文件来判断大数据同步平台是否发生数据更新故障。

步骤S203,根据上述故障类型生成与该故障类型对应的告警信息,并将该告警信息发送至故障处理端;

具体地,根据上述故障类型生成对应的告警信息,例如当故障类型为数据更新故障时,则生成相应的告警信息,包括故障类型、故障发生时间、对应的数据文件名称等信息,并将该告警信息发送至故障处理人员的终端帐号上,以提示故障处理人员尽快处理。

上述实施例,通过获取大数据同步平台的源端与目标端的同步事件发生时,由目标端生成的中间文件的状态信息;根据中间文件的状态信息确定该大数据同步平台产生的故障所属故障类型;根据故障类型生成与该故障类型对应的告警信息,并将该告警信息发送至故障处理端。该方法能够实现对大数据同步平台的实时自动检测,并在检测出故障的情况下向对应的故障处理人员发送故障信息使得故障处理人员能及时核实故障类型并进行处理,因此提升了故障检测的及时性,同时也提升了大数据同步平台的数据传输可靠性

在一实施例中,上述状态信息包括中间文件的生成时间和对应的事务类型;上述步骤S202包括:根据中间文件对应的事务类型对该中间文件进行分类,得到多个文件类别对应的中间文件;根据中间文件对应的生成时间,确定中间文件是否在上述文件类别对应的时间周期内被同步至该文件类别中,若否,则确定故障类型为数据更新故障。

具体地,在目标端102,监测中间文件(trail file)的生成情况,使用shell脚本获取各文件对应的最新产生的文件的状态信息。具体而言,由于中间文件命名方式采用文件名和数字组合而成,例如tr类的文件依次以tr加上000000~999999的数字作为文件名,对于同一类的文件即相同文件前缀的一组文件按照时间倒排,则在首位的即为最新产生的文件,进一步可以提取文件相关的信息,包括文件产生时间、文件大小等。其中每一类的文件更新周期都不一样,例如a类中间文件每5秒有一次更新,而b类中间文件每7秒有一次更新,由此可根据每类中间文件在预设的时间周期内是否有最新文件产生来确定是否有数据更新故障,例如对于a类文件,设定时间周期为5秒,在5秒内有最新文件产生则无数据更新故障,若在5秒内没有最新文件产生,则确定故障类型为数据更新故障,并输出对应的故障告警信息,如图3所示。

获取最新产生的文件信息对应的shell脚本如下:

传统的检测方式是通过GGSCI命令行的方式进行故障检测,具体地,通过在命令行输入一系列命令,并查看返回信息,来判断GoldenGate运行情况是否正常。命令行返回的信息包括整体概况、进程运行状态、检查点信息、参数文件配置、延时等。

上述实施例,通过针对不同类别的中间文件,设定不同的时间周期,并通过定时运行shell脚本检测各类别的中间文件在预设的时间周期内是否有最新文件生成,从而确定大数据同步平台是否产生数据更新故障,与传统的通过技术人员输入命令行的方式检测故障的方式相比,可节省时间,且节省人力成本,即使在节假日和周末也能实现自动检测并及时报障,传统的命令行方式在用户部署多个GoldenGate实例时,如果单独登录到每个实例的GGSCI界面进行输入命令行,会很不方便,而本实施例可以实现多个GoldenGate实例自动检测,提高OGG平台数据同步的可靠性的同时,也简化了操作。

在一实施例中,上述时间周期是通过各文件类别对应的预设时间表达式计算得到的。

具体地,由于不同类别的文件类型对应的文件更新周期不一样,且文件更新周期可能每隔一段时间就会变化,例如1月份的文件更新周期为5秒,而2月的文件更新周期可能为6秒,因此有必要学习各文件名称对应的生成新文件的时间规则,针对不同的文件名称配置不同的检查时间周期。各文件默认配置周期类别和周期表达式,并预先设定变动范围的上限值、下限值,当指定周期内更新文件数超过1个时,周期表达式表达的周期缩小,当指定周期内更新文件数为0时,周期表达式代表的周期变大,以保证每个时间周期内更新的文件数为1。在学习过程中,当周期表达式计算得到的时间周期触发上限或者下限则告警,以避免检测的时间周期出现异常,与实际更新情况相差太大的情况出现。

上述实施例,通过自动学习不同类别的中间文件的文件更新周期确定监测的时间周期,可实现对数据同步的自适应监测,不必依赖人工检测各类中间文件的更新周期,以便监控在各时间周期内是否有新文件产生,从而确定大数据同步平台是否出现数据更新故障。

在一实施例中,上述状态信息包括中间文件对应的进程状态,上述步骤S202包括:判断中间文件对应的进程状态是否为进程异常状态;若是,则确定故障类型为进程异常故障类型。

具体地,在目标端102,检测处理中间文件(trail file)的几个进程的运行情况。

获取进程状态信息:

若该部分进程处于abend、stop、failed状态,则视为异常,确定故障类型为进程异常故障类型,并产生告警信息,同时将告警信息以短信的形式发送至故障处理人员进行处理。若这部分进程均为running状态,则进程正常。

进程维度产生告警信息:

其中,产生的进程故障信息示例如下:

ogg_onedata_RCC REPLICAT STOPPED 01_EMS;

上述实施例,通过在目标端102检测中间文件的进程状态,根据进程状态类型判断是否出现进程异常故障,并及时发给故障处理人员进行处理,提升了大数据同步平台的可靠性。

在一实施例中,上述状态信息还包括目标端中的表状态信息,上述判断进程状态是否为进程异常状态,还包括:若否,则根据表状态信息确定大数据同步平台产生的故障类型。

具体地,若获取的进程状态均为running状态,则进程正常,继续检测表状态信息,根据表状态是否存在数据更新异常来判断大数据同步平台产生的故障类型。

上述实施例,在判断进程正常的基础上,进一步监控表状态信息来判断大数据同步平台是否出现故障,为处理故障提供了更多的信息。

在一实施例中,上述根据表状态信息确定大数据同步平台产生的故障类型,包括:检测目标端存储的数据表在对应的表检测周期内是否被更新;若否,则确定故障类型为表更新故障类型;上述表检测周期是根据各数据表所属表类别对应的预设周期表达式计算得到的。

具体地,通过学习各数据表更新时间或更新频率规则,针对不同的数据表配置不同的检查周期,按照确定的周期,检查表是否在各自指定的周期内存在更新,若表存在更新则下次再检查,若表长时间未更新则产生故障告警信息,并短信通知故障处理人员核实故障并处理故障。

其中,获取表变更的时间采用周期策略,一个周期内表至少更新一次,该周期根据学习情况合理确定,在周期上限和周期下限之间根据规则自动调整到最佳,上限和下限由人工配置。

上述实施例,通过在各表对应的更新周期内检测各数据表是否存在更新,实现了目标端的数据库更新的监控。

应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种基于大数据同步平台的可靠性监控装置400,包括:状态信息获取模块401、故障类型确定模块402和告警信息生成模块403,其中:

状态信息获取模块401,用于获取目标端生成的中间文件的状态信息。

故障类型确定模块402,用于根据所述中间文件的状态信息确定所述大数据同步平台产生的故障类型。

告警信息生成模块403,用于根据所述故障类型生成与所述故障类型对应的告警信息。

在一实施例中,上述故障类型确定模块402,进一步用于:根据所述中间文件对应的事务类别对所述中间文件进行分类,得到多个文件类别对应的中间文件;根据所述生成时间,确定所述中间文件是否在所述文件类别对应的时间周期内被同步至所述文件类别中;若否,则确定所述故障类型为数据更新故障。

在一实施例中,所述时间周期是通过各文件类别对应的预设周期表达式计算得到的。

在一实施例中,上述故障类型确定模块402,进一步用于:判断所述进程状态是否为进程异常状态;若是,则确定所述故障类型为进程异常故障类型。

在一实施例中,上述故障类型确定模块402,进一步用于:判断所述进程状态是否为进程异常状态,若否,则根据所述表状态信息确定所述大数据同步平台产生的故障类型。

在一实施例中,上述故障类型确定模块402,进一步用于:检测所述目标端存储的数据表在对应的表检测周期内是否被更新;若否,则确定所述故障类型为表更新故障类型。

在一实施例中,所述表检测周期是根据各数据表所属表类别对应的预设周期表达式计算得到的。

关于基于大数据同步平台的可靠性监控装置的具体限定可以参见上文中对于基于大数据同步平台的可靠性监控方法的限定,在此不再赘述。上述基于大数据同步平台的可靠性监控装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储大数据同步平台产生的中间文件以及不同类别的中间文件对应的更新周期数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于大数据同步平台的可靠性监控方法。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于大数据同步平台的可靠性监控方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5至6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取大数据同步平台的源端与目标端的同步事件发生时,由所述目标端生成的中间文件的状态信息;根据所述中间文件的状态信息确定所述大数据同步平台产生的故障所属故障类型;根据所述故障类型生成与所述故障类型对应的告警信息,并将所述告警信息发送至故障处理端。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述中间文件对应的事务类别对所述中间文件进行分类,得到多个文件类别对应的中间文件;根据所述生成时间,确定所述中间文件是否在所述文件类别对应的时间周期内被同步至所述文件类别中;若否,则确定所述故障类型为数据更新故障。

在一个实施例中,所述时间周期是通过各文件类别对应的预设周期表达式计算得到的。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:判断所述进程状态是否为进程异常状态;若是,则确定所述故障类型为进程异常故障类型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:判断所述进程状态是否为进程异常状态;若否,则根据所述表状态信息确定所述大数据同步平台产生的故障类型。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:检测所述目标端存储的数据表在对应的表检测周期内是否被更新;若否,则确定所述故障类型为表更新故障类型。

在一个实施例中,所述表检测周期是根据各数据表所属表类别对应的预设周期表达式计算得到的。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号