首页> 中国专利> 一种数据补采方法和数据补采系统

一种数据补采方法和数据补采系统

摘要

本发明提供一种数据补采方法,用于实现对现有数据采集系统所采集数据的缺失数据进行补采,为每个采集单元预设采集任务观察点和相应的补采策略,初始化该采集任务观察点中的目标采集单元信息、采集任务信息及记录采集任务完成情况;数据采集系统各采集单元在完成采集任务时将任务完成情况写入相应的采集任务观察点中的任务完成情况记录;根据采集异常的任务完成情况记录,结合预设补采策略对数据源进行补采。本发明利用采集任务观察点提供的数据,判断采集失败的环节,直接执行失败的步骤,可节约采集资源,本发明还提供一种数据补采系统。

著录项

  • 公开/公告号CN103678726A

    专利类型发明专利

  • 公开/公告日2014-03-26

    原文格式PDF

  • 申请/专利权人 亿阳信通股份有限公司;

    申请/专利号CN201210324126.5

  • 发明设计人 宁平;罗志毅;

    申请日2012-09-05

  • 分类号G06F17/40(20060101);

  • 代理机构

  • 代理人

  • 地址 150090 黑龙江省哈尔滨市南岗区嵩山路高科技开发区1号楼

  • 入库时间 2023-12-17 01:05:13

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-10

    授权

    授权

  • 2015-08-12

    实质审查的生效 IPC(主分类):G06F17/40 申请日:20120905

    实质审查的生效

  • 2014-03-26

    公开

    公开

说明书

技术领域

本发明涉及数据采集技术,具体是一种数据补采方法,以及一种数据补采 系统。

背景技术

在电力、电信、交通等多个行业,需要从各种处于现场的数据源采集大量 的数据进入目标数据,以便进行各种控制和管理。由于数据采集系统在实时或 者定时的采集过程中,可能出现系统异常或者数据源异常,上述数据采集任务 可能失败,造成数据丢失,这就要求进行数据补采。

对于不同的数据采集系统中,数据补采策略和采集环境均有所不同。例如, 在电信或者交通等领域,对数据及时性的要求高,在出现数据缺失后,要求及 时补采缺失的数据。在电信领域,对于缺失的数据,在采集系统本身负荷较大的 情况下,则可能只需要补采用户关注的时间段的数据。因此,根据不同的情况, 需要采取不同的补采策略,而各个数据采集系统的具体采集环节均存在不同。

由于上述原因,现有数据采集系统中的数据补采模块的设计,需要开发者 对具体的采集系统的补采策略和采集环节有深刻了解。这些补采模块与数据采 集系统的耦合性高,不同的数据采集系统需要设计不同的补采模块,无法复用, 造成开发成本的严重浪费。

此外,在现有的数据补采系统中,数据补采的灵活性明显不足。现有的数 据补采技术中,其补采策略均统一设计。例如,发现数据缺失,均采取立刻补 采的策略,或者均采取定时补采的策略,往往造成补采效果差、数据及时性差、 资源耗费高。例如,如果采用立刻补采的策略,即发现数据缺失,就立即执行 补采,则可能产生两方面的问题:第一,如果数据缺失是因为连接数据源或者 网络问题,立即补采的话,可能数据源和网络还没有恢复,导致补采仍然失败; 第二,如果数据缺失是因为采集系统本身负荷较高造成的,立即补采,采集系 统负荷还是很高,也会导致补采失败。如果采用定时补采策略,那么就不能保 证数据采集的及时性,某些数据就失去了补采的意义。另外,现有的补采不能 定制需要补采的数据的时间范围,比如,对于某些电信应用,用户有可能最关 注忙时或者节假日的数据,不需要对其他数据进行补采,那么现有的补采方式, 就会造成资源浪费。

最后,现有的补采技术在补采过程上存在浪费。现有的补采技术,均不分 析数据采集失败的原因,完全调用正常采集的过程进行补采,即执行完整的采 集流程。这样不仅加大了数据源的负荷和采集压力,浪费采集系统的资源,还 会使补采的耗时增加,降低数据的及时性。

发明内容

本发明提供一种数据补采方法,该数据补采方法能够适应各种数据采集系 统的情况,便于实现补采系统的可靠的复用。

本发明提供的数据补采方法的优选方案,还能够灵活的定制数据补采策略, 针对不同的数据采取不同的补采策略,充分适应不同场合的不同要求。

本发明提供的数据补采方法的优选方案,还能够根据补采失败的原因,从 补采失败的环节开始进行补采,这样,可以充分利用已经执行成功的采集环节, 避免采集系统资源浪费。

本发明同时提供一种便于实现上述数据补采方法的数据补采系统。

一种数据补采方法,用于实现对现有数据采集系统所采集数据的缺失数据 进行补采,所述数据采集系统包括多个采集单元,每个采集单元根据与其对应的 业务采集流程对一个数据源完成采集任务,得到目标数据,其特征在于,包括如 下步骤:

A、为每个采集单元预设一个采集任务观察点和相应的补采策略,所述观察 点包括采集单元信息、采集任务信息、采集任务完成情况及补采策略,所述补 采策略设置对应采集单元的补采条件和补采方式;并初始化所述采集任务观察 点。

B、数据采集系统各采集单元在完成采集任务时将任务完成情况写入相应的 采集任务观察点中的任务完成情况记录,其中包括采集是否异常情况;

C、根据采集任务观察点中的任务完成情况记录,如果有采集异常情况,结 合采集任务观察点中预设的补采策略,对所述采集任务观察点对应的采集单元 的数据源进行补采。

进一步的,所述步骤C中对所述采集任务观察点对应的采集单元的数据源 进行补采的过程具体为:

判断所述采集任务观察点任务完成情况记录中是否有采集异常的记录,若 有,则根据所述采集异常的任务完成情况记录,获知出现采集异常的采集单元 及相应的预设补采策略;

判断所述补采策略的补采条件在所述出现采集异常的采集单元的当前状态 下是否成立;若成立,则触发出现采集异常的所述采集单元,对与其对应的数据 源按所述补采策略的补采方式进行补采,得到目标数据。

更进一步的:

所述设置该采集任务观察点的目标采集单元信息包含采集单元标识;

所述采集任务信息包含采集任务标识,采集任务序列标识,采集流程标识 和任务参数;

所述补采策略包括策略标识、采集单元标识和补采参数。

优选的:

所述任务参数包括任务执行开始时间、任务执行结束时间、采集测量数据 的开始时间、采集测量数据的结束时间、数据处理记录数、执行任务次数、更 新时间、任务命令、环境变量、任务执行成功标识、失败原因、对应日志文件、 任务数据源、系统进程号、内存状况、CPU符合;

所述补采参数包括策略编号、策略名、采集单元标识、补采次数、延迟补 采时间、被补采的数据时间段类型、CPU符合限制、内存占用率限制、数据完整 率、策略私有标志、生效标志。

优选的:

当完成补采后,根据补采后的情况,更新采集任务观察点的任务完成情况 记录,根据任务完成情况记录中是否有采集异常的记录,

优选的:

为每个采集单元的每个采集环节预设一个采集任务观察点,根据所述采集 任务信息中的采集流程标识和采集任务序列标识确定每个任务观察点所对应的 采集环节。

优选的:

使用表结构存储采集任务观察点中涉及的各种信息;补采执行时读取表结 构中记录的采集任务观察点信息和任务完成情况并结合补采策略完成补采。

优选的:

触发所述出现采集异常的采集单元对与其对应的数据源进行补采的步骤之 前,还包括如下步骤:

根据采集异常的采集任务观察点任务完成情况记录中的数据,分析采集异 常的原因;

根据上述分析获得的采集异常原因,判断是否可以立即执行补采任务;若 是,则进入下一步骤;若否,则等待预定的时间段,然后重新分析是否可以立 即执行补采任务。

具体的:

所述判断是否可以立即执行补采任务的步骤中,若判定为是,则进一步分 析第一个失败环节之前的各个成功环节的输出是否保留,并获取失败环节以及 失败环节之后的各个环节对应的任务命令;若该环节之前的各个采集任务观察 点记录中呈现采集均为正常,并且这些环节的输出均得到保留,则所述对出现 采集异常的数据源进行补采的步骤为,直接从该失败环节开始执行相应的命令, 即直接执行失败环节以及失败环节之后的各个环节相应的命令。

优选的:

对所述出现采集异常的数据源进行补采的步骤之前,检查采集系统负荷, 若采集系统负荷过重,则等待确定的时间段后,重新检查采集系统的负荷;若 采集系统负荷轻,则进入对所述出现采集异常的数据源进行补采的步骤。

本发明还提供一种数据补采系统,用于实现对现有数据采集系统所采集数 据的缺失数据进行补采的装置,基于现有的数据采集系统,所述数据采集系统 包括多个采集单元,每个采集单元根据业务采集流程对一个数据源完成采集任 务,得到目标数据,其特征在于,包括:

预置单元,用于为每个采集单元预设一个采集任务观察点和补采策略;所述 观察点包括目标采集单元信息、采集任务信息、采集任务完成情况及补采策略; 所述补采策略用于预设对应采集单元的补采条件和补采方式;初始化所述采集 任务观察点;

采集情况填写单元,各采集单元在完成采集任务时将任务完成情况写入对 应的采集任务观察点中的采集任务完成情况记录;

补采单元,根据所述所述采集任务观察点中的采集任务完成情况记录;根 据所述如果有采集异常情况记录,结合预置单元中各采集任务观察点预设的补 采策略对相应的数据源进行补采;反复执行上述补采过程。

数据库,用于保存采集任务观察点记录和补采策略记录。

进一步的:

所述的补采单元判断所述读取的任务完成情况记录中是否有采集异常的记 录,若有,则根据所述采集异常的任务完成情况记录,获知出现采集异常的采 集单元及相应的预设补采策略;

判断所述补采策略的补采条件在所述出现采集异常的采集单元的当前状态 下是否成立;若成立,则触发出现采集异常的所述采集单元对与其对应的数据 源按所述补采策略的补采方式进行补采,得到目标数据。

更进一步的,所述预设单元初始化的信息为:

所述初始化该采集任务观察点的目标采集单元信息包含采集单元标识;

所述采集任务信息包含采集任务标识,采集任务序列标识,采集流程标识 和任务参数;

所述补采策略包括策略标识、采集单元标识和包含补采参数的条件判断语 句。

优选的:

所述任务参数包括任务执行开始时间、任务执行结束时间、采集测量数据 的开始时间、采集测量数据的结束时间、数据处理记录数、执行次数、更新时 间、任务命令、环境变量、任务执行成功标识、失败原因、对应日止文件、任 务数据源、系统进程号、内存状况、CPU符合;

所述补采参数包括策略编号、策略名、采集单元标识、补采次数、延迟补 采时间、被补采的数据时间段类型、CPU符合限制、内存占用率限制、数据完整 率、策略私有标志、生效标志。

优选的:

所述预置单元进一步的为每个采集环节预设一个采集任务观察点,根据所 述采集任务信息中的采集流程标识和采集任务序列标识确定每个任务观察点所 对应的采集环节。

进一步的:

所述的补采单元对出现采集异常的数据源进行补采之前,还包括:根据采 集异常的采集任务观察点任务完成情况记录中的数据,分析采集异常的原因; 根据上述分析获得的采集异常原因,判断是否可以立即执行补采任务;若否, 则等待预定的时间段,然后重新分析是否可以立即执行补采任务;若是,则进 一步分析第一个失败环节之前的各个成功环节的任务完成情况记录是否保留, 以及获取失败环节以及失败环节之后的各个环节对应的执行命令信息;若该环 节之前的各个采集任务观察点记录中呈现均为正常采集,并且该环节之前的输 出均得到保留,则直接从该失败环节开始执行相应的命令,即直接执行失败环 节以及失败环节之后的各个环节相应的命令。

更进一步的:

所述的补采单元对所述出现采集异常的数据源进行补采之前,检查采集系 统负荷,若采集系统负荷过重,则等待确定的时间段后,重新检查采集系统的 负荷;若采集系统负荷轻,则进入对所述出现采集异常的数据源进行补采的步 骤。

附图说明

图1为本发明数据补采方法的基本流程图;

图2为本发明第一实施例提供的补采方法的流程图。

图3为本发明第二实施例提供的补采方法的流程图。

图4为本发明第三实施例提供的补采系统的结构图。

具体实施方式

本发明第一实施例提供一种数据补采方法,用于实现对现有数据采集系统 所采集数据的缺失数据进行补采,现有数据采集系统包括多个采集单元,每个 采集单元对应一个数据源,因此每个采集单元根据与其对应的业务采集流程对 这个数据源完成采集,得到目标数据,业务采集流程就是采集单元采集数据时 执行的流程,每个采集流程可以包括多个采集环节,采集单元根据采集流程中 各环节的顺序执行对数据源执行采集,采集流程可依据业务的不同而不同。

请参看图1,该图为本发明数据补采方法的基本流程图。

步骤A:为每个采集单元预设一个采集任务观察点和相应的补采策略,所述 观察点包括采集单元信息、采集任务信息、采集任务完成情况及补采策略,所 述补采策略设置对应采集单元的补采条件和补采方式;初始化所述采集任务观 察点。

目标采集单元信息即采集任务观察点对应的采集单元;采集任务信息即描 述本次采集任务的相关信息,主要由一些任务参数来体现;采集任务完成情况用 于记录本次采集任务的完成情况,包含采集单元信息、采集任务信息、采集任 务是否成功完成等信息。

步骤B:数据采集系统各采集单元在完成采集任务时将任务完成情况写入相 应的采集任务观察点中的任务完成情况记录,其中包括采集是否有异常情况。

改进现有的数据采集系统,其中增加将任务完成情况写入到采集任务观察 点的环节,以建立现有数据采集系统与本发明数据补采系统的联动机制,是否实 施数据补采取决于现有数据采集系统的数据采集情况。

步骤C:根据采集任务观察点中的任务完成情况记录,如果有采集异常情况, 结合采集任务观察点中预设的补采策略,对所述采集任务观察点对应的采集单 元的数据源进行补采。

具体的,在读取的任务完成情况记录中判断是否有采集异常的记录,若有, 则根据所述采集异常的任务完成情况记录,获知出现采集异常的采集单元;

根据所述出现采集异常的采集单元获取所对应的预设补采策略;

判断所述补采策略的补采条件当前是否成立;若成立,则触发出现采集异 常的所述采集单元对与其对应的数据源按所述补采策略的补采方式进行补采, 得到目标数据。

请参看图2,为论述本发明的第一是实施例,该图为该数据补采方法的流程 图,以下结合该图进行说明。

预设步骤:

步骤S01为每个采集单元预设采集任务观察点和相应的补采策略。

所述观察点包括目标采集单元信息、采集任务信息及采集任务完成情况。 采集系统对于每个数据源均有相应的采集单元,因此,给每个采集单元设置一 个采集任务观察点。其目的是为了对采集单元执行采集任务时产生的信息进行 检查和记录,便于对采集任务失败或异常时的分析提供信息。

为每个采集单元预设补采策略,用于记录与该补采策略对应的采集单元的 补采条件和补采方式。

设置的补采策略是用于在出现采集异常时按照补采策略中描述的补采条件 和补采方式对数据源进行补采。依据数据源的特性对每个数据源设置补采策略, 所谓补采策略就是补采时采用的方法和补采应满足的条件,约定了每个数据源 在满足什么条件时可以进行补采,补采时应采用什么样的方法。

步骤S02初始化所述采集任务观察点。

对采集任务观察点进行初始化设置,是为了确定该任务观察点所对应的采 集单元、采集流程、还可以进一步地确定该任务观察点对应于采集流程中的哪 一个采集环节,由于在采集系统中记录了与采集单元对应的数据源,因此任务 观察点中记录了与其对应的采集单元标识,进一步可以获知与该采集单元对应 的数据源。

步骤S01和S02为预设步骤,预先设置任务观察点和补采策略,并进行初始 化。

数据写入步骤:

步骤S03:数据采集系统各采集单元在完成采集任务时将任务完成情况写入 相应的采集任务观察点中的任务完成情况。

由于需要对数据采集系统各采集单元的任务完成情况进行记录,通过记录 的结果判断采集是否存在异常,因此需要将采集任务完成情况写入相应的采集 任务观察点中。任务完成情况记录可以包含如下信息:

任务执行成功标识,用于标志任务是否执行成功,常用-1、1或0标识区分, -1标识任务正在执行,1表示任务执行成功,0表示任务执行失败,采集出现异 常;

任务命令,执行任务时用到的指令;

任务执行开始时间,指示任务执行开始的时间;

任务执行结束时间,指示任务执行结束的时间。

当然任务完成情况记录中的信息可以不局限于上述列举的几种,可根据实 际业务需求记录采集系统任务完成时产生的所有信息,或只记录使用者感兴趣 的信息。

补采步骤:

步骤S04:读取所述采集任务观察点中的任务完成情况记录。

读取任务观察点中的任务完成情况记录,获得采集任务的完成情况信息, 即任务完成情况记录中所记载的信息,即上文中所述的任务是否执行成功,任 务命令等,任务执行开始时间,任务执行结束时间。

步骤S05:判断所述采集任务观察点任务完成情况记录中是否有采集异常的 记录,若没有则进入步骤S04,若有,则进入步骤S06。

采集任务观察点中的任务完成情况记录有采集异常,则表示目标数据源存 在数据缺失的情况,。

步骤S06:根据所述采集异常的任务完成情况记录,获知出现采集异常的采 集单元。

步骤S07:根据所述出现采集异常的采集单元获取所对应的预设补采策略。

由于采集任务观察点是根据采集单元设置的,而采集单元对应数据源,因 此可已根据报告采集异常的状态观察点获知出现采集异常的数据源。

由于根据数据源设置了相应的补采策略,因此可以得知出现采集异常的数 据源所对应的补采策略。

步骤S08:判断所述补采策略的补采条件当前是否成立;若成立,则进入步 骤S09,若补采条件不成立,则等待预定的时间再进行判断。

步骤S9:触发出现采集异常的所述采集单元对与其对应的数据源按所述补 采策略的补采方式进行补采,得到目标数据。

上文中提到过,补采策略就是描述补采应满足的条件和补采方式,如:某 个数据源需要补采的数据时间段(09点~10点,周一~周五,国庆节等)、补采 启动的时间(立即启动、2个小时候启动、系统闲暇时启动等),

返回步骤S04继续执行下一个补采过程。

优选的,为了使得采集系统可以获知补采任务的完成情况,还可以包括步 骤S10,根据补采后的情况,更新采集任务观察点的任务完成情况记录。

通过更新的任务完成情况记录,可获知本次补采的完成情况,如果补采没 有成功则可根据预设的补采策略依照上述的步骤重新对数据源进行补采,若补 采成功,则继续执行下一个补采过程。

本发明第二实施例提供一种数据补采方法。

请参看图3,该图为该数据补采方法的流程图。以下结合该图进行说明。

步骤S101,对预设的采集任务观察点进行初始化。

采集系统中的采集单元对数据源进行采集时,是根据上文所述采集流程中 的采集环节进行的,一个采集流程可以包含多个采集环节,每个采集环节可以 是一个单独的采集任务,执行相应的任务命令完成该环节的功能,这些采集流 程中包含的采集环节以特定的顺序排列,每一个环节的输出是下一个环节的输 入。

为每个采集单元的每个采集环节预设一个采集任务观察点,根据所述采集 任务信息中的采集流程标识和采集任务序列标识确定每个任务观察点所对应的 采集环节。

在该步骤中进行若干初始化工作,初始化工作包括设置两个部分的内容, 一部分是任务观察点的属性信息,是表征该采集任务观察点本身含义的信息, 即该采集任务观察点对应哪一个采集单元、哪一个环节等,该组数据中包括如 下信息:采集单元标识、采集任务序列标识、环节名称、环节描述等信息。其 中采集单元标识和采集任务序列标识是必须的,环节名称和环节描述不是必须 的。

采集单元标识,标识该采集任务观察点对应的采集单元,在采集系统中, 每一个数据源对应一个采集单元,通过该采集单元标识可以确定该采集任务观 察点对应的数据源,从而确定补采策略。

采集任务序列标识,标识该采集任务观察点对应采集流程的第几个环节。

环节名称,标识某个采集环节的名称,如取文件、第一次解析、第二次解 析、入库等,还可以是获取源数据、解析源数据、对源数据进行计算、获得目 标数据和入库中的一个或多个,这一信息可以提示该环节执行的任务,不同的 采集流程可以包含不同的环节,由具体的业务确定每个采集流程所包含的环节。

环节描述,用于具体说明该环节执行的任务。

上述环节名称和环节描述数据也可以没有。

第二部分是数据采集属性信息,为执行采集任务观察点中的数据采集任务 属性信息,为采集任务执行记录信息,该组信息在每一个采集周期,即对应每 一次采集任务,均生成一组对应该采集任务的记录信息,用于发现数据缺失, 数据补采。该信息包括:

采集任务标识,唯一对应该次采集任务的标识,可由编号体现。

采集流程标识,标识该采集任务属于哪一个采集流程。

采集环节名称,标识采集环节的名称。

采集任务序列标识,和第一组数据的任务序列标识相对应,用于后续补采 中选择执行的判断依据,如一个流程有依次1、2、3、4、5个环节,补采时会 从前往后查看每个观察点的状态,从第一次遇到失败的那个环节开始补采。假 设第2、4两个环节失败,且第1个环节执行后的现场保存完整,则补采时,顺 序执行2、3、4、5个环节。

采集单元标识,和第一组数据的采集单元标识相对应,该采集单元标识与 采集系统中的采集单元标识一致,根据该标识,能找到数据源的信息。

以下的参数为任务参数用于描述该环节执行的任务信息。

任务执行开始时间,指示任务执行的开始时间。

任务执行结束时间,指示任务执行的结束时间。

采集测量数据的开始时间,指示任务采集的数据所属测量周期的开始时间, 例如,此任务采集的是2010-10-1012:00:00到2010-10-1012:05:00,5分 钟内的数据,此项的值为:2010-10-1012:00:00,如果是瞬时数据,此项为空。

采集测量数据的结束时间,指示任务采集的数据所述测量周期的结束时间, 延续采集测量数据的开始时间中的示例,此项的值为2010-10-1012:05:00,如 果是瞬时数据,此项为空。

数据处理记录数,此项任务处理的数据条数。

执行任务次数,记录该任务被执行的次数,因为补采也会执行该任务,因 此执行次数需要记录。同时,在补采策略里,还会有补采次数限制,如果达到 一定的补采次数,数据仍然缺失,那么将不会再补采数据。

更新时间,指示此项任务最后一个更新的时间。

任务命令,指示如任务失败,需要重新执行补采时执行该指令。

环境变量,如果该任务有特殊的环境变量,需在此注明。

任务执行成功标识,标识任务执行是否成功,正常见的执行标识为“正在 执行”,“执行失败”,“执行成功”,这些执行标识可以由不同的数字来表示,如 -1,0,1。如为-1,则此项任务正在执行,补采是不能执行正在执行的任务的。 所以如果补采模块正在补采执行该任务,则一定要更新状态为正在执行,避免 该任务出现同时被执行的情况。

失败原因,标识采集失败的原因,常见的失败原因有,表示执行成功、连 接数据源失败、数据源某些数据缺失、系统资源耗尽、程序异常终止,这些失 败原因可以用数字或字母标识。补采程序会根据失败原因,在补采执行前查看 失败原因有没有恢复,如果没有恢复,则不进行补采。如:连接数据源失败导 致任务失败,那么补采前会进行数据源连接情况检查,如果未恢复,则不执行 该任务的补采。

对应日志文件,记录任务对应的日志信息,方便人工进行详细分析。

任务数据源,记录该任务的数据源。

系统进程号,记录系统的进程号,用于定位问题时使用。

内存状况,记录系统的内存使用情况。

CPU负荷等等,记录cpu的负荷情况。

这些信息能够反映某一个具体的采集周期的任务执行情况,以及反映当时 的现场状态,上述参数中采集单元标识、采集任务标识、采集任务序列标识、 采集流程标识是必须有的,任务参数中任务执行指令、任务执行成功标识是必 须有的,其他的任务参数可根据实际情况进行设置。

上述采集任务观察点的数据记录在固定的存储位置,每一次采集或者补采 任务执行之后,都会更新相应的采集任务观察点的数据记录,所述采集失败状 态报告,就是从上述任务执行成功标识中读到失败标识,就表明该次采集任务 失败了。

例如,从某个需要采集数据的控制现场采集数据可能包括五个采集环节, 在执行采集任务或者补采任务后,各个环节的采集任务观察点都会产生相应的 采集任务执行记录信息,将其中的任务执行成功标识读入,既可以获知该采集 任务是否成功的信息。例如,以数据-1代表正在执行采集,数据0代表采集执 行失败,数据1代表执行成功,则任务执行成功标识为0就属于读到采集失败 状态报告的情况。就需要进一步将采集任务观察点的该任务的记录信息全部读 入,以获取现场的情况的信息,为后续步骤提供条件。例如,如果前三个环节 成功了,第四个环节失败了,则通过采集任务观察点的信息可以判定采集失败 的环节,并且知道采集失败的现场情况。

无论具体的采集系统如何设计,上述采集任务观察点都完全可以采用同样 的标准设置,并采用同样的数据。这样,就可以在针对不同数据采集背景下的 采集系统,采用同样的方式反映采集情况。例如,采集系统采用具有五个采集 环节的采集方式,采集系统B则采用具有三个采集环节的采集方式,并且两个 采集系统的采集环节彼此都不相同。在本实施例的补采方法而言,只要在各个 环节设置采集任务观察点即可。这就使该补采方法具有了可以用于多种采集系 统的通用性。

每个采集单元对应一个补采策略,当满足补采策略中描述的补采条件时, 根据补采策略中描述的补采参数对数据源进行补采,补采策略也是预先设置的, 设置补采策略主要是设置补采参数,补采参数描述了补采条件和补采方式,一 般包含如下参数信息:

策略编号,策略的唯一标识。

策略名,策略的名称。

采集单元标识,和采集系统中的采集单元标识一致,一个数据源对应一个 采集单元。

补采次数,设置该数据源补采的次数,如果补采超过该次数,数据还没有 采集成功,就放弃补采。

延迟补采时间,正常采集任务结束后,延迟n分钟再执行补采任务,默认 为立即执行补采任务。

被补采的数据时间段类型,标识执行补采的时间,可以具体设置哪一天的 那个时间段进行补采,也可以设定一周中的哪几个时间段进行补采,也可以设 定一月或一年中的哪几个时间段进行补采。

CPU负荷限制,设定CPU负荷的门限值,如设定60%表示只有CPU符合低于 60%时,才能进行补采。

内存占用率限制,设定内存占有率的门限值,表示只有系统内存使用率低 于60%时,才进行补采。

数据完整率,设定数据完整性的比率,99%,表示只要数据完整低于99%, 就需要进行补采。设定数据完整率的目的是,当数据源大部分缺失时,执行补 采没有意义,因此就不需要执行补采了。

策略私有标志,表示策略是公有还是私有,一般情况以0表示公有;1表示 私有,也可以其他数字和字符予以表示,如果某些采集源未定义私有策略,则 使用公有策略,否则以私有策略准。公有策略是指所有的采集单元都可以共用 的采集策略,私有策略是针对采集源特定的采集策略。

生效标志,0表示该策略失效;1表示该策略生效

每一个补采策略以固定的数据格式存储,便于读取和利用。例如,如果补 采次数设置为零,则该数据属于不需要补采的数据。当然,也可以单独设置一 个标识,标识该数据是否需要补采,而无需为该数据源设置专门的补采策略数 据。

步骤S102,读取采集任务观察点中的采集任务完成情况记录,是否有报告 采集异常,若是,则进入步骤S103,若否,则进入步骤S104;

步骤S103,根据异常的采集任务完成情况记录确定出现异常的采集单元, 进一步确定与该采集单元对应的数据源。

通过检查采集任务观察点的数据记录,获知存在采集异常的采集任务后, 首先需要了解的是具体的缺失的目标数据。该缺失的目标数据可以在目标数据 中按照其数据排列方式,根据采集任务观察点提供的信息进行,采集任务观察 点中存储有每一次采集任务的相关数据,包括目标数据存储位置,因此,这些 数据容易获得。当然,也可以不经过该步骤,直接对出现采集异常的报告对应 的采集任务进行补采。

步骤S104,判断缺失的数据的数据源是否属于需要补采的数据,若是,则 进入步骤S105;若否,则进入结束步骤。

缺失的数据分为两类,即需要补采的,和不需要补采的。由于本方法设置 了一些判断标准以根据缺失数据的性质,判断其是否需要进行补采。例如,许 多不太重要的数据,缺失也不会造成影响,并且补采耗费资源比较多,或者补 采不可能成功,则没有必要进行补采;相反,一些重要的数据,如果缺失会对 今后的管理造成问题,则必须补采。是否需要补采属于补采策略的一部分。每 一个数据源都对应一个补采策略。

步骤S105,根据采集任务观察点中的数据,分析采集失败或者数据缺失的 原因,并检查采集系统的负荷情况。

通过对采集任务观察点中信息的分析,可以得出正常采集时采集失败的原 因,不同的采集失败的原因,会对是否能够立即进行补采产生影响。

步骤S106,根据步骤S105中获得的采集失败或者数据缺失的原因,以及采 集系统的负荷情况,根据补采策略判断是否可以立即执行补采任务;若是,则 进入步骤S109,若否,则进入步骤107。

根据步骤S105获得的采集失败或者数据缺失的原因,可以判断出当前是否 合适立即执行补采任务。例如,采集失败或者数据缺失的原因是因为数据源缺 失、网络中断、系统负荷较高,导致采集异常,则补采是不能立即执行的,因 此,若异常很有可能在短时间内(1min)没有恢复,则进入步骤S107,等待一 段时间后再判断是否可以进行补采;如果是采集本身异常,如:数据源返回报 告接收不全等,可以立即进行补采的,则进入失败环节分析的步骤,即步骤S109。

另外,补采策略中,还有一种数据源对应的补采策略属于定时或者延时补 采,对于这种数据也可以直接判断定时时间或者延时时间是否达到,未达到则 直接进入结束步骤S114,等待下一个补采周期。

步骤S107,等待一段时间。

设置一段合理的固定时间长度,等待影响采集正常进行的因素消失。该时 间段可以是1分钟。

步骤S108,重新判断是否可以立即进行补采。若是,则进入步骤S109;若 否,则返回步骤S107。

通过上述步骤S107的等待后,情况可能已经发生了变化,可以重新判断是 否可以进行补采。例如,由于系统负荷过高导致失败,而经过等待以后,系统 负荷已经降低到合适的水平,则可以考虑补采。如果系统负荷仍然过高,则返 回步骤S107继续等待。通过上述循环,直到立即进行补采的条件成熟,即可进 入步骤S109。对返回步骤S107的次数可以设置计数器计数,并确定一个最大的 计数值,例如十次,超过该次数的,不论如何直接进入结束步骤S114,以免无 限制的等待造成资源浪费。该补采任务可以在下一个补采循环中执行。

判断系统负荷、判断补采时间等等,都属于补采策略中的补采条件,在补 采策略中的众多补采参数中,可根据实际应用的需求来预先设置,如关心补采 时的cpu负荷限制、内存占用率限制和数据完整率,则可预先设置这三个参数, 当准备进行补采时检查系统,如果CPU负荷、内存占用率和数据完整率都与预 设的参数相符,则视为满足了补采条件,可以进行补采,因此当补采策略中各 项补采参数描述的内容与当前状态相符合时,判定补采条件成立。

步骤S109,根据采集失败的采集任务观察点的状态报告,分析该采集任务 的失败环节,以及获取失败环节之前的各个成功环节的现场保留情况,以及失 败环节以及失败环节之后的各个环节对应的采集指令。

该步骤根据采集失败的采集任务观察点的任务完成情况报告,分析该采集 任务的失败环节;若该环节之前的各个观察点均为正常,并且这些环节的现场 均得到保留,则在所述执行补采任务的步骤,可以直接从该观察点反应的失败 环节开始执行相应的命令,即直接执行失败环节及失败环节之后的各个环节相 应的命令,这样就可以节约采集资源。该步骤中,所述采集任务观察点的任务 完成情况报告中,根据某个环节的采集任务的失败原因,以及到目前的时间长 度,能够反映出该环节的现场保留情况。

步骤S110,执行补采任务。

在采集任务的失败环节之前存在成功的环节、并且成功环节的现场被保留 的情况下,该补采任务从采集任务执行失败的环节对应的指令开始执行,并依 次执行其后各个环节对应的指令即可补采成功。例如,某采集系统对某类特定 数据存在5个采集环节,前两个环节均采集成功,第3个环节采集失败,并且 前两个环节的现场得到了保留,则补采从第3个环节对应的指令开始执行。这 样就直接利用了正常采集过程中前两个成功环节的成果,节约了采集系统的资 源。

若采集任务不存在成功的环节,或者虽然存在成功的环节,但其现场已经 被破坏,则必须从头开始执行补采任务。

步骤S111,判断补采是否成功。若是,进入步骤S112;若否,则进入步骤 S113。

判断补采是否成功,可以根据新产生的采集任务观察点的数据以及目标数 据的更新情况判断。

步骤S112,更新采集任务观察点数据,即在补采系统,根据补采执行后的 新的情况,将各个采集任务观察点的任务执行成功标识更新为成功,然后进入 结束步骤S114。

步骤S113,更新采集任务观察点数据。即在补采系统中,根据补采执行后 的新的情况,将各个采集任务观察点的数据进行更新,这些数据能够反映补采 各个环节的成败情况,若该环节失败,则对应的采集任务观察点的失败原因数 据还反映了其失败的具体原因,这些内容可以在下一个补采周期中采用。

上述步骤S112和步骤S113,在正常的采集周期中也要执行相同的步骤,这 样,才可以保证本补采方法正常执行。

步骤S114,结束。

该步骤中可以等待一段时间,然后再次进入步骤S101,进行新的补采周期。

本发明的第二实施例提供一种数据补采系统,该数据补采系统能够很好的 完成上述数据补采方法,可以与各种数据采集系统配合使用,具有良好的通用 性。

请参看图4,该图为本发明第三实施例的单元框图。该图同时示出了数据补 采系统4以及与该数据补采系统4密切相关的数据源1、目标数据库2、采集系 统3。

如图4所示,数据源1即产生原始数据的各种现场。目标数据库2为从数 据源采集的数据的存储位置,其中存储的数据即为目标数据,所述采集系统3 即从数据源1采集各种数据,并按照各个数据的性质存储在目标数据库2中。 数据补采系统4的作用就是在数据采集系统3采集失败的情况下,对其失败的 采集数据进行弥补。采集系统3对应每一个数据源设置相应的采集单元,每个 采集单元执行一个完整的采集流程,每个采集流程包括若干个依次执行的采集 环节。

如图4所示,所述数据补采系统4包括:

预置单元401,用于为每个采集单元预设一个采集任务观察点和补采策略; 所述观察点包括目标采集单元信息、采集任务信息、采集任务完成情况及补采 策略;所述补采策略用于预设对应采集单元的补采条件和补采方式;初始化所述 采集任务观察点。

所述初始化该采集任务观察点的目标采集单元信息,包含采集单元标识;

所述采集任务信息包含采集任务标识,采集任务序列标识,采集流程标识 和任务参数;

所述补采策略包括策略标识、采集单元标识和补采参数。

在采集系统中每个采集单元对应一个数据源,采集单元依据采集流程对数 据源进行采集,每个采集流程由多个采集环节构成,一个采集环节完成一个采 集任务,每一个环节的输出是下一个环节的输入,每个环节执行相应的命令完 成该环节的功能,对采集单元的采集流程的每个环节分别设置采集任务观察点。

所述采集环节可包含获取源数据、解析源数据、对源数据计算、获得目标 数据和入库中的一个或多个,采集流程可以根据不同的业务需求而进行设置, 不局限于列举的这几个环节。

上述采集任务观察点中预先设置的信息描述如上述第一实施例和第二实施 例所述。

采集情况填写单元402,各采集单元在完成采集任务时将任务完成情况写入 对应的采集任务观察点中的采集任务完成情况记录。

任务完成情况记录填写在采集任务观察点中预设的采集信息中。

补采单元403,根据所述所述采集任务观察点中的采集任务完成情况记录; 根据所述如果有采集异常情况记录,结合预置单元中各采集任务观察点预设的 补采策略对相应的数据源进行补采;反复执行上述补采过程。

数据库404,用于保存采集任务观察点记录和补采策略记录。

优选的,为了更新补采后的情况,数据补采系统还包括:

采集任务观察点的数据,反应其对应环节的某一次任务的执行成败,以及 失败的原因、现场保留的情况等。具体的失败原因可归结为几类,以照顾通用 性。采集任务观察点的数据被读取后,将存储在数据库404中,供其它单元读 取。

补采单元403对出现采集异常的数据源进行补采之前,根据采集异常的采 集任务观察点任务完成情况记录中的数据,分析采集异常的原因;根据上述分 析获得的采集异常原因,判断是否可以立即执行补采任务;若否,则等待预定 的时间段,然后重新分析是否可以立即执行补采任务;若是,则进一步分析第 一个失败环节之前的各个成功环节的任务完成情况记录是否保留,以及获取失 败环节以及失败环节之后的各个环节对应的执行命令信息;若该环节之前的各 个采集任务观察点记录中呈现均为正常采集,并且该环节之前的输出均得到保 留,则直接从该失败环节开始执行相应的命令,即直接执行失败环节以及失败 环节之后的各个环节相应的命令。

补采单元403对所述出现采集异常的数据源进行补采之前,检查采集系统 负荷,若采集系统负荷过重,则等待确定的时间段后,重新检查采集系统的负 荷;若采集系统负荷轻,则进入对所述出现采集异常的数据源进行补采的步骤。

对于数据补采系统中各参数的描述、工作原理与第一实施例第二实施例中 相同,在此不再赘述。

上述补采系统可以用于方便的实现第一实施例提供的补采方法。具体的实 现步骤等请参看方法部分的实施例,在此不予赘述。

为了更好的理解本发明,特给出第四实施例,用以说明本发明如何完成的 补采任务。

例如采集系统,有下述采集任务,编号为3908294,任务描述为:

采集的数据源:网络中路由器的流量

采集粒度是:每个小时采集一次

采集环节:登录路由器--->发送一个获取流量的命令--->获取命令返回的 流量报告--->从报告中解析出流量值--->解析出的值入库共5个环节。

在采集系统中,与目标路由器对应的采集单元标识:COL_ROUTER_STRIM。

在数据补采系统中,为这个采集任务设置采集环节,存储到 tbl_check_point表中,内容如下:

  采集单元标识   任务序列   环节名称   环节描述   COL_ROUTER_STRIM   1   telnet_ne   登录路由器   COL_ROUTER_STRIM   2   send_cmd   发送一个获取流量的命令   COL_ROUTER_STRIM   3   get_report   获取命令返回的流量报告   COL_ROUTER_STRIM   4   parser_report   从报告中解析出流量值   COL_ROUTER_STRIM   5   load_to_db   解析出的值入库

针对数据补采系统设置以上的采集环节,通过预设单元为每个采集环节预 设采集观察点,采集系统在采集时,初始化该采集任务观察点的目标采集单元 信息、采集任务信息,预设补采策略,例如采集系统采集2012-06-0718:00:00 ~2012-06-0719:00:00这个小时路由器流量的采集过程中,通过采集情况填 写单元,将采集信息填入相应的采集任务观察点中,存储到 tbl_check_point_info表中:

数据补采系统中的补采单元读取tbl_check_point_info表,获取采集任务 中,失败的环节:get_report、parser_report、load_to_db。补采单元根据 补采策略(补采策略可根据实际需要进行灵活的设置,在此不再赘述),从第 三个get_report环节开始补采(因为前面的两个环节都成功了,不需要在再 执行一次了)。顺序执行:get_report、parser_report、load_to_db三个环节 对于的“任务命令”,完成补采。这三个环节是否成功,补采单元也会将执行 的结果update到tbl_check_point_info表中。如果这次补采时load_to_db环 节失败,下次补采单元又会将这个环节再执行一次。保证一个采集任务各环节 都成功,以保证结果的正确。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通 技术人员来说,在不脱离本发明基本原理的前提下,还可以做出若干改进和润 饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号