一种用于算法执行与监控的调度方法技术

技术编号:21453741 阅读:27 留言:0更新日期:2019-06-26 04:43
本发明专利技术涉及一种用于算法执行与监控的调度方法。该方法包括:(1)本方法把需要调度执行的算法分为三类,给出不同类别算法定义;(2)提供不同种类算法调度执行框架,按照算法分类的不同,对算法进行封装,针对不同种类算法提供不同的调度方法,并监控反馈算法执行过程中的状态,(3)根据本方法的定义,把需要被调度执行的算法进行划分,通过数据库中对应算法调度配置表,设定算法调度配置,(4)本调度方法按照数据库中的算法设置进行算法调度执行与监控,根据不同类别的算法,提供互斥保障机制,保证算法不会在未完成的情况下被重复调度执行。通过本方法可以简化算法分类,提高算法调度与执行效率,监控算法执行情况。

【技术实现步骤摘要】
一种用于算法执行与监控的调度方法
本专利技术涉及计算机应用技术与方法领域,尤其是一种用于算法执行与监控的调度技术方案。
技术介绍
新世纪以来,科学发展与信息技术成熟加速了多种基于数据分析方法的发展,较好地克服了复杂过程系统中普遍存在的建模困难等课题。但是由于数据分析算法多种多样,并且使用场景不同,对于算法的执行多数还是人为去控制,缺乏一种自动的控制调度方法。并且缺乏对于算法执行情况整体的监控及记录的手段。尤其是针对目前大数据处理等场景,涉及到大量算法执行调度监控的问题,由于数据多种多样,算法种类及数量繁多,靠人为或者半自动的方式去进行数据分析及挖掘算法的控制调度,影响整体效率,并且增加了人力消耗。
技术实现思路
针对上述技术不足,本专利技术的目的提供一种用于算法执行与监控的调度方法。该方法可以在复杂的算法平台上,提供自动化,可定制的算法调度及监控。通过把被调度算法分为三类:实时算法,定时算法,等间隔算法,简化算法种类,提高算法调度效率。通过数据库存储被调度算法的配置信息,包括分类标识,执行时间标识,及是否执行标识等,借助数据库直观易操作的特性,使得整个配置过程简单清晰。通过对不同种类的算法封装不同的调度及监控框架,保证每一类算法被调度时的安全性,并且增加互斥机制,保证每个算法在被调度执行过程中,不会出现反复执行的情况。本专利技术解决其技术问题所采用的技术方案是:一种用于算法执行与监控的调度方法,包括以下步骤:(1)对算法进行分类;(2)针对不同类别算法,提供不同框架封装、调度方式、反馈算法执行状态信息存入数据库及日志中;(3)通过更改数据库中算法配置表,设置不同算法类别标识,以及执行时间标识;(4)对于不同种类算法提供互斥机制,实现算法的执行与监控。所述算法分类包括:实时算法:始终在后台执行的算法;定时算法:每天的固定时间执行一次的算法;间隔算法:每隔设定时间执行一次的算法,间隔时间为:整分,整时。所述算法配置表包括算法名称,算法类别标识位,算法执行时间设定,算法是否执行设定。步骤(2),对于定时算法:首先获取算法状态表中是否存在待调度算法的状态信息,存在则证明已被调度过;如果存在的状态信息标识位为0即失败,则算法需要重新调度执行;如果存在的状态信息标识位不为0,则本次调度不需要进行;对于需要调度的算法,写入或更新状态信息标识位为2表示执行中,并执行算法,最终判断算法执行情况,更新算法状态表中状态标识位为对应状态,如果算法执行失败,打印失败信息到日志。步骤(2),对于实时算法:首先获取算法状态表中是否存在待调度算法的状态信息,存在则证明已被调度过;如果存在的状态信息标识位为0即失败,则算法需要重新调度执行;如果存在的状态信息标识位不为0,则本次调度不需要进行;对于需要调度的算法,写入或更新状态信息标识位为2表示执行中,并执行算法,最终判断算法执行情况,更新算法状态表中状态标识位为对应状态,如果算法执行失败,打印失败信息到日志。步骤(2)对于间隔算法:首先获取算法状态表中待调度算法的最新状态信息,如果存在的状态信息标识位不为2,即当前无正在执行中的算法,则算法可以调度执行;如果存在的状态信息标识位为2表示执行中,则本次调度不需要进行;对于需要调度的算法,写入或更新状态信息标识位为2表示执行中,并执行算法,最终判断算法执行情况,更近算法状态表中状态标识位为对应状态,如果算法执行失败,打印失败信息到日志。对于不同种类算法提供互斥机制包括以下步骤:获取到待调度算法后,首先进行互斥判断,即判断该算法是否已经在执行中;若是,则不执行该算法,否则调度执行该算法;同时对于实时算法及定时算法判断是否失败过,是则重新调度执行该算法。本专利技术具有以下有益效果及优点:1.本专利技术方法把所有算法归为三类,简化了算法的调度控制的复杂度。2.本专利技术方法针对不同种类算法提供不同的调度方式,保证每类算法的调度准确性及安全性。3.本专利技术方法配置数据均存放在数据库中,配置数据包括被调度算法的类别标识,执行时间标识,以及是否执行标识等,方便更改以及设置。4.本专利技术方法反馈被调度算法的状态,包括启停时间,算法耗时,算法状态(失败,成功,执行中)等信息保存在数据库表中及日志中。5.本专利技术方法存在互斥机制,保证不同种类算法不会在执行时重复调度。6.本专利技术方法可实现自动控制,无需人为操控。附图说明图1是算法调度整体架构图;图2是调度方法架构图;图3是定时算法模块流程图;图4是实时算法模块流程图;图5是等间隔算法模块流程图。具体实施方式下面结合实施实例对本专利技术做进一步的详细说明。本专利技术涉及一种用于算法执行与监控的调度方法。该方法包括:(1)本方法把需要调度执行的算法分为三类,分为实时算法,定时算法,等间隔算法,给出不同类别算法定义;(2)提供不同种类算法调度执行框架,按照算法分类的不同,对算法进行封装,针对不同种类算法提供不同的调度方法,并监控反馈算法执行过程中的状态,包括成功,失败,执行中等状态,把算法执行情况,包括启停时间,算法耗时,算法执行状态等多种信息存在数据库表中,失败信息存入日志中;(3)根据本方法的定义,把需要被调度执行的算法进行划分,通过数据库中对应算法调度配置表,设定算法调度配置,包括算法执行时间标识,是否执行标识,以及属于哪类算法的标识位设定;(4)本调度方法按照数据库中的算法设置进行算法调度执行与监控,根据不同类别的算法,提供互斥保障机制,保证算法不会在未完成的情况下被重复调度执行。通过本方法可以简化算法分类,提高算法调度与执行效率,监控算法执行情况。(1)本调度方法把需要被调度执行及监控的数据分析及挖掘算法分为三类,包括:实时算法,定时算法,等间隔算法。实时算法:在后台一直执行的算法。定时算法:每天固定时间执行一次的算法。等间隔算法:间隔固定时长执行一次的算法,固定时长可以为分钟粒度和小时粒度,不支持1小时15分钟这种混合粒度。(2)本调度方法的简易流程图如图1所示。按照上述对于算法分类的定义,首先确定待调度算法的分类,并将相关分类信息及算法信息等存入数据库中算法配置表中(表1)。算法配置表结构如下:表1字段说明:algorithm:算法存放位置及名称;timeingtask:定时算法标志位,1代表该算法是定时算法,0代表该算法不是定时算法;realtimetask:实时算法标志位,1代表该算法是实时算法,0代表不是;intervaltask:等间隔时间算法,1代表该算法是等间隔算法,0代表不是;(备注:定时,实时,及等间隔算法不可重复,即一个算法只能是其中一种。)time:算法执行时间,对于三种不同的算法,代表不一样a、定时算法:09:00:00代表每天9点0分执行该算法;b、实时算法:00:00:00是默认写死的,实时算法从整个控制系统启动开始就执行;c、等间隔算法:00:30:00代表每30分钟执行一次,可以通过修改对应字段实现修改,例:01:00:00,代表每小时一次,要求小时,分钟字段只允许一个有值,不能出现每1小时15分钟执行一次的设置,并且等间隔算法不支持到秒级别的设置。d、runornot:算法是否需要执行标志位,1代表算法需要执行,0代表算法不需要执行,支持根据需求设定当天运行的算法模块;根据上述算法配置表,可以把本文档来自技高网...

【技术保护点】
1.一种用于算法执行与监控的调度方法,其特征在于包括以下步骤:(1)对算法进行分类;(2)针对不同类别算法,提供不同框架封装、调度方式、反馈算法执行状态信息存入数据库及日志中;(3)通过更改数据库中算法配置表,设置不同算法类别标识,以及执行时间标识;(4)对于不同种类算法提供互斥机制,实现算法的执行与监控。

【技术特征摘要】
1.一种用于算法执行与监控的调度方法,其特征在于包括以下步骤:(1)对算法进行分类;(2)针对不同类别算法,提供不同框架封装、调度方式、反馈算法执行状态信息存入数据库及日志中;(3)通过更改数据库中算法配置表,设置不同算法类别标识,以及执行时间标识;(4)对于不同种类算法提供互斥机制,实现算法的执行与监控。2.根据权利要求1所述的一种用于算法执行与监控的调度方法,其特征在于,所述算法分类包括:实时算法:始终在后台执行的算法;定时算法:每天的固定时间执行一次的算法;间隔算法:每隔设定时间执行一次的算法,间隔时间为:整分,整时。3.根据权利要求1所述的一种用于算法执行与监控的调度方法,其特征是,所述算法配置表包括算法名称,算法类别标识位,算法执行时间设定,算法是否执行设定。4.根据权利要求1所述的一种用于算法执行与监控的调度方法,其特征是,步骤(2),对于定时算法:首先获取算法状态表中是否存在待调度算法的状态信息,存在则证明已被调度过;如果存在的状态信息标识位为0即失败,则算法需要重新调度执行;如果存在的状态信息标识位不为0,则本次调度不需要进行;对于需要调度的算法,写入或更新状态信息标识位为2表示执行中,并执行算法,最终判断算法执行情况,更新算法状态表中状态标识位为对应状态,如果算法执行失败,打印失败信息到日志。5.根据权利要求1所述的一种用...

【专利技术属性】
技术研发人员:郑泽宇桂珺高原闫会玉李攀陈曦
申请(专利权)人:中国科学院沈阳自动化研究所
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1