离线系统延时调度时间间隔的生成方法和延时调度方法与流程

文档序号:22890532发布日期:2020-11-10 18:15阅读:147来源:国知局
离线系统延时调度时间间隔的生成方法和延时调度方法与流程

本申请涉及计算机技术领域,特别是涉及生成离线系统数据延时调度时间间隔的方法、离线系统数据延时调度方法、电子装置及存储介质。



背景技术:

离线系统相较于在线系统,需要承担业务系统庞大的计算任务和数据处理能力,具有数据计算框架和存储结构复杂、外部依赖较多、稳定性要求较高等特点,同时,对业务的作用时间相对较长,对业务的影响敏感性相对较低。

随着业务接入需求不断扩增,对离线系统的性能要求也越来越高。由于离线系统会对大量数据进行数据离线处理,因此,会涉及到大量数据的入库问题。数据的入库,可以是批量入库,也可以是实时入库。离线系统与在线系统比较,虽然离线系统对数据入库的实时性的要求相对在线系统低,也就是允许数据入库后延时调度处理,但数据入库后长时间延时调度处理会造成后续数据调度处理需要不断更新延时调度处理的时间间隔,从而导致阻塞后续使用已部署的数据调度任务的运行,因此,当动态调整后续数据调度处理的时间间隔,则能保证离线系统的数据延时调度的顺利的实施,并完成数据处理。但现有相关技术中,离线系统无法动态调整数据延时调度的时间间隔,从而导致离线系统的数据调度处理不精确,任务延迟过大,调度数据的效率低。

目前针对相关技术中离线系统无法动态调整数据延时调度的时间间隔的问题,尚未提出有效的解决方案。



技术实现要素:

本申请实施例提供了一种生成离线系统数据延时调度时间间隔的方法、离线系统数据延时调度方法、电子装置及存储介质,以至少解决相关技术中离线系统无法动态调整数据延时调度的时间间隔的问题。

第一方面,本申请实施例提供了生成离线系统数据延时调度时间间隔的方法,包括:

获取预设时间内入库离线系统的数据的入库时间和所述数据的生成时间,并根据所述生成时间和所述入库时间的差值,确定延时处理所述数据的时间间隔;

根据所述时间间隔确定延时处理所述数据的多个平均时间间隔,其中,所述平均时间间隔包括按小时、天、周其中一种为单位计算出的所述数据延迟处理的时间间隔的均值;

对所述多个平均时间间隔进行加权平均运算,生成延时处理所述数据的动态时间间隔。

在其中一些实施例中,所述多个平均时间间隔包括按小时为单元计算出的第一平均时间间隔、按天为单元计算出的第二平均时间间隔和按周为单元计算的第三平均时间间隔,对所述多个平均时间间隔进行加权平均运算,生成延时处理所述数据的动态时间间隔包括:按以下公式计算所述动态时间间隔:

其中,δtd为动态时间间隔,表示第一平均时间间隔,表示第二平均时间间隔,表示第三平均时间间隔,λ1、λ2、λ3分别表示第一平均时间间隔、第二平均时间间隔和第三平均时间间隔的加权系数,λ1+λ2+λ3=1,α表示预设冗余系数。

在其中一些实施例中,所述预设冗余系数α的取值范围为α≥1.5。

在其中一些实施例中,根据所述时间间隔确定延时处理所述数据的多个平均时间间隔包括:

获取入库所述离线系统的多个所述数据的所述时间间隔;

在所述多个所述数据的所述时间间隔中检测预设时长对应的所述时间间隔,并确定所述时间间隔的数目;

根据所述时间间隔的数目和所述预设时长,确定所述平均时间间隔,其中,所述预设时长为按小时、天、周其中一种为一个计算单位设置。

第二方面,本申请实施例提供一种离线系统数据延时调度方法,包括:

获取当前时间入库所述离线系统的数据和预设动态时间间隔,其中,所述预设动态时间间隔为采用第一方面所述的生成离线系统数据延时调度时间间隔的方法生成的动态时间间隔;

判断所述数据是否处于被调度状态,并在判断到所述数据未处于被调度状态的情况下,至少根据所述预设动态时间间隔对所述数据进行调度。

在其中一些实施例中,所述方法还包括:获取所述数据对应的预设调度开始时间的初值;

其中,至少根据所述预设动态时间间隔对所述数据进行调度包括:

将所述预设调度开始时间初值和所述预设动态时间间隔合成为所述数据延时调度的开始时间的终值,并根据所述开始时间的终值对所述数据进行调度。

在其中一些实施例中,在判断所述数据处于被调度状态的情况下,基于历史调度开始时间对所述数据进行调度,其中,所述历史调度开始时间根据历史预设调度开始时间和/或历史动态时间间隔确定。

在其中一些实施例中,在至少根据所述预设动态时间间隔对所述数据进行调度之后,所述方法还包括:按预设更新间隔时长对所述预设动态时间间隔进行更新。

第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行第一方面所述的生成离线系统数据延时调度时间间隔的方法,和/或,以执行第二方面所述的离线系统数据延时调度方法。

第四方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行第一方面所述的生成离线系统数据延时调度时间间隔的方法,和/或,执行第二方面所述的离线系统数据延时调度方法。

相比于相关技术,本申请实施例提供的一种生成离线系统数据延时调度时间间隔的方法、离线系统数据延时调度方法、电子装置及存储介质,通过获取预设时间内入库离线系统的数据的入库时间和数据的生成时间,并根据生成时间和入库时间的差值,确定延时处理数据的时间间隔;根据时间间隔确定延时处理数据的多个平均时间间隔,其中,平均时间间隔包括按小时、天、周其中一种为单位计算出的数据延迟处理的时间间隔的均值;对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔,解决了离线系统无法动态调整数据延时调度的时间间隔的问题,实现了缩短离线系统对未调度处理的数据的延时调度时间间隔进行更新的次数,并提高离线系统调度处理数据的效率有益效果。

本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是本发明实施例的生成离线系统数据延时调度时间间隔的方法或离线系统数据延时调度方法的终端的硬件结构框图;

图2是根据本申请实施例的生成离线系统数据延时调度时间间隔的方法的流程图;

图3是根据本申请实施例的离线系统数据延时调度方法的流程图;

图4是根据本申请实施例的生成离线系统数据延时调度时间间隔的装置的结构框图;

图5是根据本申请实施例的离线系统数据延时调度装置的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。

在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。

除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。

本申请中描述的各种技术可用于离线系统的数据的调度处理,其中,数据的调度包括对数据的逻辑运算的过程。

本实施例提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。以运行在终端上为例,图1是本发明实施例的生成离线系统数据延时调度时间间隔方法或离线系统数据延时调度方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,可选地,上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限定。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的生成离线系统数据延时调度时间间隔的方法,和/或,离线系统数据延时调度方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(networkinterfacecontroller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radiofrequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。

本实施例提供了一种生成离线系统数据延时调度时间间隔的方法,图2是根据本申请实施例的生成离线系统数据延时调度时间间隔的方法的流程图,如图2所示,该流程包括如下步骤:

步骤s201,获取预设时间内入库离线系统的数据的入库时间和数据的生成时间,并根据生成时间和入库时间的差值,确定延时处理数据的时间间隔。

在本实施例中,预设时间为根据需求设定的,同时,预设时间是大于后续计算平均时间间隔中最长时间的,例如:计算最近一个月的平均时间间隔;在本实施例中,获取的入库离线系统的数据的生成时间是指该数据在其他系统中生成系统日志的时间,数据的入库时间为数据入库到离线系统时的离线系统的时间。在本实施例中,时间间隔是根据生成时间和入库时间的差值确定的,也就是,该时间间隔决定了当前待入库被离线系统调度处理的数据与上一个数据的间隔的时间长短。

步骤s202,根据时间间隔确定延时处理数据的多个平均时间间隔,其中,平均时间间隔包括按小时、天、周其中一种为单位计算出的数据延迟处理的时间间隔的均值。

在本实施例中,根据时间间隔建立至少三个指标,分别为最近1小时的平均时间间隔、最近1天的平均时间间隔和最近1周的平均时间间隔。其中,最近n小时包括离线系统的当前时间之前的n小时,计算的平均时间间隔是通过已入库和完成调度处理的数据计算出的。

步骤s203,对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔。

在本实施例中,通过按预设加权值对多个平均时间间隔进行加权运算,从而获得动态时间间隔的值。

通过上述步骤s201至步骤s203,采用获取预设时间内入库离线系统的数据的入库时间和数据的生成时间,并根据生成时间和入库时间的差值,确定延时处理数据的时间间隔;根据时间间隔确定延时处理数据的多个平均时间间隔;对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔,解决了相关技术中离线系统无法动态调整数据延时调度的时间间隔的问题,实现了缩短离线系统对未调度处理的数据的延时调度时间间隔进行更新的次数,并提高离线系统调度处理数据的效率有益效果。

在其中一些实施例中,多个平均时间间隔包括按小时为单元计算出的第一平均时间间隔、按天为单元计算出的第二平均时间间隔和按周为单元计算的第三平均时间间隔,对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔包括如下步骤:

按以下公式计算所述动态时间间隔:

其中,δtd为动态时间间隔,表示第一平均时间间隔,表示第二平均时间间隔,表示第三平均时间间隔,λ1、λ2、λ3分别表示第一平均时间间隔、第二平均时间间隔和第三平均时间间隔的加权系数,λ1+λ2+λ3=1,α表示预设冗余系数。

在本实施例中,λ1、λ2、λ3为预设的可调参数,在其中一些具体实施例中,可取λ1=0.6,λ2=0.3,λ3=0.1,其中,λ的大小表示对应的平均时间间隔对动态时间间隔的影响力大小,同时,为了保证动态时间间隔的准确性,常常需要在加权平均运算出的动态时间间隔上加入一定的冗余,也就是乘以冗余系数,其中,冗余系数为大于1的常数。

在本实施例中,预设冗余系数α的取值范围为α≥1.5,且优选α=1.5。

在其中一些实施例中,根据时间间隔确定延时处理数据的多个平均时间间隔包括如下步骤:

获取入库离线系统的多个数据的时间间隔。

在多个所述数据的所述时间间隔中检测预设时长对应的时间间隔,并确定时间间隔的数目。

在本实施例中,预设时长对应设置有不同维度的时间间隔,例如:设置预设时长为最近一小时,设置预设时长为最近一天,设置预设时长为最近一周。

根据时间间隔的数目和预设时长,确定平均时间间隔,其中,预设时长为按小时、天、周其中一种为一个计算单位设置。

在本实施例中,在确定预设时长内的延时处理数据的时间间隔的数目后,即可以获知在该预设时长内的平均时间间隔,从而得到计算动态时间间隔的至少一个参数。

通过上述的获取入库离线系统的多个数据的时间间隔;在多个所述数据的所述时间间隔中检测预设时长对应的时间间隔,并确定时间间隔的数目;根据时间间隔的数目和预设时长,确定平均时间间隔,实现了根据时间间隔生成多个不同时间维度的计算动态时间间隔的平均时间间隔。

本实施例提供了一种离线系统数据延时调度方法,图3是根据本申请实施例的离线系统数据延时调度方法的流程图,如图3所示,该流程包括如下步骤:

步骤s301,获取当前时间入库离线系统的数据和预设动态时间间隔,其中,预设动态时间间隔为采用上述的生成离线系统数据延时调度时间间隔的方法生成的动态时间间隔。

步骤s302,判断数据是否处于被调度状态,并在判断到数据未处于被调度状态的情况下,至少根据预设动态时间间隔对数据进行调度。

在本实施例中,针对未开始调度的数据,使用最新的动态时间间隔进行调度(对应数据处理),对于已开始调度的数据,则使用原有的时间间隔(动态时间间隔或预设的时间间隔)进行调度。

通过上述步骤s301至步骤s302,采用获取当前时间入库离线系统的数据和预设动态时间间隔,判断数据是否处于被调度状态,并在判断到数据未处于被调度状态的情况下,至少根据预设动态时间间隔对数据进行调度,实现根据动态时间间隔对数据进行调度处理,缩短离线系统对未调度处理的数据的延时调度时间间隔进行更新的次数,并提高离线系统调度处理数据的效率

在其中一些实施例中,离线系统数据延时调度方法还包括如下步骤:

获取数据对应的预设调度开始时间的初值。

在本实施例中,获取的预设调度开始时间的初值是在为引用动态时间间隔机制之前根据数据的生成时间和入库时间确定的数据调度开始时间,而该数据调度开始时间与上一个调度的数据间距一定的时间间隔。

至少根据预设动态时间间隔对数据进行调度包括如下步骤:

将预设调度开始时间的初值和预设动态时间间隔合成为数据延时调度的开始时间的终值,并根据开始时间的终值对数据进行调度。

在其中一些具体实施例中,假定数据调度对应为统计10分钟内访问次数的均值(对应数据为访问次数),具体设定为9点至9点10分这个时段内的访问次数的均值,其中,9点10分对应为本实施例中的预设调度开始时间的初值,且按本实施例的方法进行数据调度处理时,会延迟到9点10分加上动态时间间隔才开始调度处理。

在其中一些实施例中,在判断数据处于被调度状态的情况下,基于历史调度开始时间对数据进行调度,其中,历史调度开始时间根据历史预设调度开始时间和/或历史动态时间间隔确定。

在本实施例中,当数据处于被调度状态的情况,则按原有调度处理的模式进行调度,其中,历史调度开始时间可以为历史预设调度开始时间,也可以是历史动态时间间隔,还可以是历史预设调度开始时间和历史动态时间间隔确定的历史时间间隔终值。

在其中一些实施例中,在至少根据预设动态时间间隔对数据进行调度之后,离线系统数据延时调度方法还包括如下步骤:按预设更新间隔时长对预设动态时间间隔进行更新。

在本实施例中,每个设定时间t,重新计算动态时间间隔。

需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本实施例还提供了生成离线系统数据延时调度时间间隔的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图4是根据本申请实施例的生成离线系统数据延时调度时间间隔的装置的结构框图,如图4所示,该装置包括:

获取模块41,获取预设时间内入库离线系统的数据的入库时间和数据的生成时间,并根据生成时间和所述入库时间的差值,确定延时处理数据的时间间隔;

确定模块42,用于根据时间间隔确定延时处理数据的多个平均时间间隔,其中,平均时间间隔包括按小时、天、周其中一种为单位计算出的数据延迟处理的时间间隔的均值;

处理模块43,用于对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔。

在其中一些实施例中,多个平均时间间隔包括按小时为单元计算出的第一平均时间间隔、按天为单元计算出的第二平均时间间隔和按周为单元计算的第三平均时间间隔,处理模块43用于按以下公式计算动态时间间隔:

其中,δtd为动态时间间隔,表示第一平均时间间隔,表示第二平均时间间隔,表示第三平均时间间隔,λ1、λ2、λ3分别表示第一平均时间间隔、第二平均时间间隔和第三平均时间间隔的加权系数,λ1+λ2+λ3=1,α表示预设冗余系数。

在其中一些实施例中,确定模块42用于获取入库离线系统的多个数据的时间间隔;在多个数据的时间间隔中检测预设时长对应的时间间隔,并确定时间间隔的数目;根据时间间隔的数目和预设时长,确定平均时间间隔,其中,预设时长为按小时、天、周其中一种为一个计算单位设置。

本实施例还提供了离线系统数据延时调度装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图5是根据本申请实施例的离线系统数据延时调度装置的结构框图,如图5所示,该装置包括:

采集模块51,用于获取当前时间入库离线系统的数据和预设动态时间间隔,其中,预设动态时间间隔为采用上述的生成离线系统数据延时调度时间间隔的方法生成的动态时间间隔;

调度模块52,用于判断数据是否处于被调度状态,并在判断到数据未处于被调度状态的情况下,至少根据预设动态时间间隔对所述数据进行调度。

在其中一些实施例中,装置还包括:获取单元,用于获取数据对应的预设调度开始时间的初值。

在本实施例中,调度模块52用于将预设调度开始时间的初值和预设动态时间间隔合成为数据延时调度的开始时间的终值,并根据开始时间的终值对数据进行调度。

在其中一些实施例中,调度模块52用于在判断数据处于被调度状态的情况下,基于历史调度开始时间对数据进行调度,其中,历史调度开始时间根据历史预设调度开始时间和/或历史动态时间间隔确定。

在其中一些实施例中,还包括:更新模块,用于按预设更新间隔时长对预设动态时间间隔进行更新。

需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。

本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

获取预设时间内入库离线系统的数据的入库时间和数据的生成时间,并根据生成时间和入库时间的差值,确定延时处理数据的时间间隔。

根据时间间隔确定延时处理数据的多个平均时间间隔。

对多个平均时间间隔进行加权平均运算,生成延时处理数据的动态时间间隔。

可选地,在本实施例中,上述处理器还可以被设置为通过计算机程序执行以下步骤:

获取当前时间入库离线系统的数据和预设动态时间间隔。

判断数据是否处于被调度状态,并在判断到数据未处于被调度状态的情况下,至少根据预设动态时间间隔对数据进行调度。

需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

另外,结合上述实施例中的生成离线系统数据延时调度时间间隔的方法,和/或,离线系统数据延时调度方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种生成离线系统数据延时调度时间间隔的方法,和/或,实现上述实施例中的任意一种离线系统数据延时调度方法。

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

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

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