一种数据采集控制的方法及系统与流程

文档序号:20874127发布日期:2020-05-26 16:14阅读:207来源:国知局
一种数据采集控制的方法及系统与流程

本发明涉及数据采集控制技术领域,更具体地说,它涉及一种数据采集控制的方法及系统。



背景技术:

目前各种不同的用于存储业务和数据的平台被开发出来,中小型企业为了兼顾到不同平台的业务和数据,一般都是同时使用不同的平台维护自己的业务和数据。

现有技术中,中小型企业一般借助各平台维护自己的业务和数据,由于数据的分散使得中小型企业对自己的数据的维护成本增大,因此中小型企业采用信息采集的方式帮助企业降低运营的成本。

现有的信息采集系统的功能都只是对数据的采集和存储,手动配置采集的时间和采集任务的分布,给采集任务的分配带来繁琐的工作,要考虑自身服务器采集时的压力,也要考虑采集平台能够承受的压力。

现有的信息采集系统中,存在配置任务繁琐,人员无法同时监控所有在执行任务的状态,并且对任务的执行顺序不能做到实时的优化的问题。



技术实现要素:

针对上述问题,本发明的目的在于提供一种,其具有采集任务配置简单化,并且能实时监控所有任务的状态并实时做出优化方案的优点。

本发明的上述发明目的是通过以下技术方案得以实现的:

一种数据采集控制的方法,包括以下步骤:

s1:建立采集平台管理模块,在所述采集平台管理模块中创建初始任务,形成所述初始任务的初始任务列表;

s2:根据所述初始任务列表,为每一个所述初始任务建立运行服务器;

s3:建立采集进程控制模块,读取所述初始任务列表,并将所述初始任务列表存储到所述采集进程控制模块中,构成执行任务列表;

s4:建立采集进程优化模块,对所述执行任务列表进行优先级排序;

s5:根据s4中排序后的所述执行任务列表,顺序在所述执行任务对应的所述任务服务器中执行所述执行任务。

进一步的,在步骤s1中,还包括,建立任务基本信息库,所述任务基本信息库中存储任务的基本信息,包括任务唯一标识,任务上次耗时,任务最迟时间,任务自定权重,任务最终权重,任务对应平台,运行服务器编号在内的字段。

进一步的,在步骤s4中,还包括,获取所述执行任务的所述运行服务器上的任务状态,排除所述任务状态为执行完成的所述执行任务,对剩余所述执行任务进行优先级排序。

进一步的,还包括建立采集耗时统计模块,记录下执行所述执行任务的耗时,更新到所述任务上次耗时字段中。

进一步的,对所述执行任务列表进行优先级排序,具体过程为:

计算所述任务最终权重,计算公式为:

若当前时间距离所述任务最迟时间的剩余时间,不足所述任务上次耗时,

则finalweight=weight*100+timefly+1000;

否则finalweight=weight*100+timefly;

其中,timefly为所述任务上次耗时,weight为所述任务自定权重,finalweight为所述任务最终权重;

根据所述任务最终权重从大到小的顺序,对所述执行任务列表进行优先级排序。

针对本发明的数据采集控制的方法,本发明还提供了一种数据采集控制的系统,其特征在于,包括采集平台管理模块,采集进程控制模块,采集任务优化模块,运行服务器;

所述采集平台管理模块,用于创建初始任务,形成所述初始任务的初始任务列表;

所述采集进程控制模块,用于读取所述初始任务列表,并将所述初始任务列表存储到所述采集进程控制模块中,构成执行任务列表;

所述采集任务优化模块,用于对所述执行任务列表进行优先级排序;

所述运行服务器,用于执行数据采集任务。

进一步的,所述采集进程控制模块还包括任务基本信息库,用于存储任务的基本信息,包括任务唯一标识,任务上次耗时,任务最迟时间,任务自定权重,任务最终权重,任务对应平台,运行服务器编号在内的字段。

进一步的,还包括,采集耗时统计模块,用于记录执行所述执行任务的耗时,更新到所述任务上次耗时字段中。

进一步的,所述采集任务优化模块,还包括权重计算模块,用于计算所述任务最终权重,具体计算过程为:

若当前时间距离所述任务最迟时间的剩余时间,不足所述任务上次耗时,

则finalweight=weight*100+timefly+1000;

否则finalweight=weight*100+timefly;

其中,timefly为所述任务上次耗时,weight为所述任务自定权重,finalweight为所述任务最终权重;

根据所述任务最终权重从大到小的顺序,对所述执行任务列表进行优先级排序。

进一步的,还包括,存储数据库,用于存储所述运行服务器采集完的数据,用于存储所述运行服务器采集完的数据。

与现有技术相比,本发明的有益效果是:

通过建立一种数据采集控制的方法和对应的系统,解决了现有的信息采集系统中,配置任务繁琐,人员无法同时监控所有在执行的任务,并且对任务的执行顺序不能做到实时的优化的技术问题。

附图说明

图1为本发明一种数据采集控制的方法的流程图;

图2为本发明一种数据采集控制的系统的结构图;

图3为本发明一种数据采集控制的方法实际执行控制流程图;

具体实施方式

下面结合附图和实施例,对本发明进行详细描述。

实施例一

如图1所示,本实施例提供一种数据采集控制的方法,包括步骤:

s1:建立采集平台管理模块,在所述采集平台管理模块中创建初始任务,形成所述初始任务的初始任务列表;

在步骤s1中,还包括,建立任务基本信息库,所述任务基本信息库中存储任务的基本信息,包括任务唯一标识,任务上次耗时,任务最迟时间,任务自定权重,任务最终权重,任务对应平台,运行服务器编号在内的字段。

s2:根据所述初始任务列表,为每一个所述初始任务建立运行服务器;

s3:建立采集进程控制模块,读取所述初始任务列表,并将所述初始任务列表存储到所述采集进程控制模块中,构成执行任务列表;

s4:建立采集进程优化模块,对所述执行任务列表进行优先级排序;

在步骤s4中,还包括,获取所述执行任务的所述运行服务器上的任务状态,排除所述任务状态为执行完成的所述执行任务,对剩余所述执行任务进行优先级排序。

对所述执行任务列表进行优先级排序,具体过程为:

计算所述任务最终权重,计算公式为:

若当前时间距离所述任务最迟时间的剩余时间,不足所述任务上次耗时,

则finalweight=weight*100+timefly+1000;

否则finalweight=weight*100+timefly;

其中,timefly为所述任务上次耗时,weight为所述任务自定权重,finalweight为所述任务最终权重;

根据所述任务最终权重从大到小的顺序,对所述执行任务列表进行优先级排序。

s5:根据s4中排序后的所述执行任务列表,顺序在所述执行任务对应的所述任务服务器中执行所述执行任务。

本方法,还包括建立采集耗时统计模块,记录下执行所述执行任务的耗时,更新到所述任务上次耗时字段中。

实施例二

如图2针对实施例一的方法,提供一种数据采集控制的系统,具体包括采集平台管理模块,采集进程控制模块,采集任务优化模块,运行服务器;

所述采集平台管理模块,用于创建初始任务,形成所述初始任务的初始任务列表;

,所述采集进程控制模块还包括任务基本信息库,用于存储任务的基本信息,包括任务唯一标识,任务上次耗时,任务最迟时间,任务自定权重,任务最终权重,任务对应平台,运行服务器编号在内的字段。

所述采集进程控制模块,用于读取所述初始任务列表,并将所述初始任务列表存储到所述采集进程控制模块中,构成执行任务列表;

所述采集任务优化模块,用于对所述执行任务列表进行优先级排序;

所述采集任务优化模块,还包括权重计算模块,用于计算所述任务最终权重,具体计算过程为:

若当前时间距离所述任务最迟时间的剩余时间,不足所述任务上次耗时,

则finalweight=weight*100+timefly+1000;

否则finalweight=weight*100+timefly;

其中,timefly为所述任务上次耗时,weight为所述任务自定权重,finalweight为所述任务最终权重;

根据所述任务最终权重从大到小的顺序,对所述执行任务列表进行优先级排序。

所述运行服务器,用于执行数据采集任务。

本系统还包括,采集耗时统计模块,用于记录执行所述执行任务的耗时,更新到所述任务上次耗时字段中。

本系统还包括,存储数据库,用于存储所述运行服务器采集完的数据,用于存储所述运行服务器采集完的数据。

实施例三

如图3所示,为本发明数据采集控制的方法实际执行控制流程图,本实施例涉及一种数据采集控制的方法的具体实施例,包括以下步骤:

s1:建立采集平台管理模块,在所述采集平台管理模块中创建初始任务,形成所述初始任务的初始任务列表;

本实施例包括三个任务,建立任务唯一标识,分别为hengan_life,tk_life,greatlife,任务标识的取名没有规则的限定,只需保证每一个任务唯一标识是唯一不重复的,将这些任务唯一标识作为任务的标记存储在采集平台管理模块中,形成一个初始化的任务列表。

在本步骤中,还需要建立任务基本信息库,用于存储任务的基本信息,包括任务唯一标识,任务上次耗时,任务最迟时间,任务自定权重,任务最终权重,任务对应平台,运行服务器编号在内的字段。

为了表达方便,本实施例通过设定具体的字段名称来表述这些字段,具体为:

任务唯一标识-misisoncode;

任务上次耗时-timefly;

任务最迟时间-expiretime;

任务自定权重-weight;

任务最终权重-finalweight;

任务对应平台-platform;

运行服务器编号-servercode;

对于字段的取名规则没有任何限制,同时也可以根据实际情况,增加其他字段,任何与本发明思路相同的构思,均属于本发明的保护范围,在此不做详述。

本实施例的三个任务的基本信息如下:

任务1:

missioncode:hengan_life,

timefly:43,

expiretime:10:00:00,

weight:5,

finalweight:543,

platform:hengan_life,

servercode:server01。

任务2:

missioncode:tk_life,

timefly:51,

expiretime:11:00:00,

weight:2,

finalweight:251,

platform:tk_life,

servercode:server02。

任务3:

missioncode:greatlife,

timefly:21,

expiretime:13:00:00,

weight:3,

finalweight:321,

platform:greatlife,

servercode:server03。

s2:根据所述初始任务列表,为每一个所述初始任务建立运行服务器server01,server02,server03,与任务的对应关系已经保存在任务基本信息库中;

s3:建立采集进程控制模块,读取所述初始任务列表,并将所述初始任务列表存储到所述采集进程控制模块中,构成执行任务列表,hengan_life,tk_life,greatlife;

s4:建立采集进程优化模块,对所述执行任务列表进行优先级排序;

在进行排序之前,还需要查询所述执行任务对应的所述运行服务器上的任务状态,排除所述任务状态为执行完成的所述执行任务,对剩余所述执行任务进行优先级排序,查询任务状态具体可以通过采用shell脚本命令查询每一个运行服务器的任务状态。

假设本实施例的三个任务都未执行完成,重新计算三个任务的任务最终权重,假设当前时间为10:00:00;

任务一,当前时间距离任务最迟时间的剩余时间为0分钟,不足任务上次耗时43分钟:

finalweight=5*100+43+1000=1543;

任务二,当前时间距离任务最迟时间的剩余时间为60分钟,超过任务上次耗时的51分钟:

finalweight=2*100+51=251;

任务三,当前时间距离任务最迟时间的剩余时间为180分钟,超过任务上次耗时的31分钟:

finalweight=3*100+21=321;

将最新的任务最终权重更新到任务基本信息库中,最终任务基本信息库中的信息如下:

任务1:

missioncode:hengan_life,

timefly:43,

expiretime:10:00:00,

weight:5,

finalweight:1543,

platform:hengan_life,

servercode:server01。

任务2:

missioncode:tk_life,

timefly:51,

expiretime:11:00:00,

weight:2,

finalweight:251,

platform:tk_life,

servercode:server02。

任务3:

missioncode:greatlife,

timefly:21,

expiretime:13:00:00,

weight:3,

finalweight:321,

platform:greatlife,

servercode:server03。

根据所述任务最终权重从大到小的顺序,对所述执行任务列表进行优先级排序,结果为hengan_life->greatlife->tk_life。

s5:根据s4中排序后的所述执行任务列表,顺序在所述执行任务对应的所述任务服务器中执行所述执行任务,执行完成后将获取到的数据存储到存储服务器中。

通过采集耗时统计模块,记录下执行所述执行任务的耗时,更新到所述任务上次耗时字段中。

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1