CN111858225A - 延时预测方法、装置、设备及计算机存储介质 - Google Patents
延时预测方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN111858225A CN111858225A CN201910349825.7A CN201910349825A CN111858225A CN 111858225 A CN111858225 A CN 111858225A CN 201910349825 A CN201910349825 A CN 201910349825A CN 111858225 A CN111858225 A CN 111858225A
- Authority
- CN
- China
- Prior art keywords
- application program
- time
- delay
- post
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种延时预测方法、装置、设备及计算机存储介质。该方法通过获取系统的当前运行信息及历史运行信息,确定出已经发生延时的应用程序,并根据应用程序的血缘关系以及确定的应用程序的标杆时刻、平均运行时刻、平均等待时长等,预测已经发生延时的应用程序对应的后置应用程序是否会发生延时。根据本发明实施例,能够快速、准确地预测发生延时的应用程序。
Description
技术领域
本发明属于数据处理技术领域,尤其涉及一种延时预测方法、装置、设备及计算机存储介质。
背景技术
通常情况下,一个数据应用系统会包含大量的应用程序。这些应用程序数量多、关系复杂,形成了一个非常庞大且又相互关联的应用程序的集群。在应用程序的集群中,根据应用程序被执行的先后顺序,在先执行的应用程序被称之为前置应用程序,在后执行的应用程序被称之为后置应用程序。
在一种异常情况下,会有某个或某些应用程序发生运行延时,如果发生延时的应用程序对后置应用程序的影响是未知的,就会对运维人员的工作带来困难。
现有的对应用程序延时的查证往往通过人工方式,但是各个应用程序之间关系复杂,通过人工查证无法快速、准确地找出发生延时的应用程序。
发明内容
本发明实施例提供一种延时预测方法、装置、设备及计算机存储介质,能够快速、准确地预测发生延时的应用程序。
第一方面,本发明实施例提供一种延时预测方法,方法包括:
获取系统的预设起始时刻至当前时刻的第一运行信息及系统的历史运行信息;
根据第一运行信息及系统中应用程序的标杆时刻,确定系统中发生延时的应用程序,并将发生延时的应用程序作为前置应用程序;其中,标杆时刻指应用程序的预计运行结束时刻;
根据系统中的应用程序的血缘关系,确定前置应用程序对应的后置应用程序;
根据历史运行信息确定后置应用程序的平均运行时长和平均等待时长;其中,等待时长指后置应用程序对应的多个前置应用程序中最晚结束运行的应用程序的运行结束时刻至后置应用程序起始时刻之间的间隔时长;
根据前置应用程序的实际运行结束时刻及后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定后置应用程序是否会发生延时。
第二方面,本发明实施例提供了一种延时预测装置,装置包括:
数据获取模块,用于获取系统的预设起始时刻至当前时刻的第一运行信息及系统的历史运行信息;
前置应用程序确定模块,用于根据第一运行信息及系统中应用程序的标杆时刻,确定系统中发生延时的应用程序,并将发生延时的应用程序作为前置应用程序;其中,标杆时刻指应用程序的预计运行结束时刻;
后置应用程序确定模块,用于根据系统中的应用程序的血缘关系,确定前置应用程序对应的后置应用程序;
运行时长确定模块,用于根据历史运行信息确定后置应用程序的平均运行时长和平均等待时长;其中,等待时长指后置应用程序对应的多个前置应用程序中最晚结束运行的应用程序的运行结束时刻至后置应用程序起始时刻之间的间隔时长;
应用程序延时确定模块,用于根据前置应用程序的实际运行结束时刻及后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定后置应用程序是否会发生延时。
第三方面,本发明实施例提供了一种延时预测设备,设备包括:处理器以及存储有计算机程序指令的存储器;
处理器执行计算机程序指令时实现如第一方面所述的延时预测方法。
第四方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如第一方面所述的延时预测方法。
本发明实施例的延时预测方法、装置、设备及计算机存储介质,该方法通过获取系统的当前运行信息及历史运行信息,确定出已经发生延时的应用程序,并根据应用程序的血缘关系以及确定的应用程序的标杆时刻、平均运行时刻、平均等待时长等,预测已经发生延时的应用程序对应的后置应用程序是否会发生延时,从而能够快速、准确地预测发生延时的应用程序。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的应用场景示意图;
图2是本发明一个实施例提供的延时预测方法的流程示意图;
图3是本发明另一个实施例提供的延时预测方法的流程示意图;
图4是本发明实施例提供的应用程序的运行结束时刻分布示意图;
图5是本发明实施例提供的逆传播神经网络示意图;
图6是本发明实施例提供的延时预测装置的结构示意图;
图7是本发明实施例提供的延时预测设备的结构示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通常情况下,一个数据应用系统会包含大量的应用程序。这些应用程序数量多、关系复杂,形成了一个非常庞大且又相互关联的应用程序的集群。例如,某个分析系统的数据流可大致分为数据接口、数据处理、数据分发、数据应用四个层级,每个层级内有数量庞大的应用程序。按照实际业务需求将四个层级分成很多小层级,形成后置应用程序依赖前置应用程序的关系。而且每个应用程序的前置应用程序数量不固定(例如,大于或等于一个),形成了极其庞大且相互缠结的应用程序集群。
如图1所示,应用程序间的依赖关系非常繁杂。每天凌晨开始,大量数据(大于100T)流经这些应用程序时,偶尔会有个别应用程序发生运行延时。发生延时的应用程序会对后置应用程序造成多大范围的影响、多深的影响是未知数,这就为运维人员的防灾减灾工作带来困难。
现有脚本和手工查证的方式颇为枯燥,而且因为速度太慢,当查证出后置延时应用程序时往往已错过了时效性。因为前后置应用程序关系复杂,即使让有丰富经验的工作人员操作此流程,也不能缩短这个时间,无法达到理想的效果。
为了解决现有技术问题,本发明实施例提供了一种延时预测方法、装置、设备及计算机存储介质。下面首先对本发明实施例所提供的延时预测方法进行介绍。
图2是本发明一个实施例提供的延时预测方法的流程示意图。如图2所示,本发明实施例提供的延时预测方法包括以下步骤:
S110,获取系统的预设起始时刻至当前时刻的第一运行信息及系统的历史运行信息;
S120,根据第一运行信息及系统中应用程序的标杆时刻,确定系统中发生延时的应用程序,并将发生延时的应用程序作为前置应用程序;其中,标杆时刻指应用程序的预计运行结束时刻;
S130,根据系统中的应用程序的血缘关系,确定前置应用程序对应的后置应用程序;
S140,根据历史运行信息确定后置应用程序的平均运行时长和平均等待时长;
S150,根据前置应用程序的实际运行结束时刻及后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定后置应用程序是否会发生延时。
本发明实施例提供的延时预测方法通过获取系统的当前运行信息及历史运行信息,确定出已经发生延时的应用程序,并根据应用程序的血缘关系以及确定的应用程序的标杆时刻、平均运行时刻、平均等待时长等,预测已经发生延时的应用程序对应的后置应用程序是否会发生延时,从而能够快速、准确地预测发生延时的应用程序。
获取系统的预设起始时刻至当前时刻的第一运行信息及系统的历史运行信息,例如,当前时刻为早上6点,预设起始时刻可以是当天的凌晨4点,即获取系统的当天凌晨4点至6点的第一运行信息。历史运行信息可以是近三个月的运行信息。本发明对此不作限制。
根据历史运行信息可以确定系统中每个应用程序的标杆时刻、平均运行时长、平均等待时长等。标杆时刻指应用程序的运行结束时刻,即该应用程序应该结束运行的时刻;运行时长指应用程序从开始执行到结束执行所耗费的时长;等待时长指应用程序的众多前置程序中最晚结束的时刻到本应用程序开始执行之间的间隔时长。
进一步地,若后置应用程序会延时,根据线性拟合法得到该后置应用程序的初始延时几率。这里,因为一个后置应用程序可能对应多个前置应用程序,针对不同的且发生延时的前置应用程序,会得到该后置应用程序的多个初始延时几率。例如,该后置应用程序对应三个前置应用程序,且该三个前置应用程序已经发生延时或者预测会发生延时,则会得到每个前置应用程序赋予该后置应用程序的初始延时几率。
进一步地,根据每个前置应用程序赋予该后置应用程序的初始延时几率,以及每个前置应用程序对该后置应用程序的影响权重,得到该后置应用程序的总延时几率。
图3是本发明另一个实施例提供的延时预测方法的流程示意图。如图3所示,本发明提供的延时预测方法包括三步骤:扫描程序、预测模型、优化模型。
具体地,扫描程序是指获取应用程序的运行信息。为了得到当前应用程序的运行情况和应用程序的历史信息,扫描程序可以包括以下内容:
<数据采集>
从当日应用运行记录中提取应用程序的运行信息,包含该系统的全量数据。将提取的运行信息进行数据清洗、数据匹配,进而得到应用程序的名称、是否重要、是否延时、是否完成、结束时间、延时时间、标杆时间等信息。
其中每个应用程序的标杆时间来自最近一段时间段内的统计值,即根据应用程序的历史运行信息确定。标杆时间可以理解为应用程序应该结束运行的时刻。例如,某应用程序在近三个月内的结束运行时刻大部分是在上午8点或者8点左右,那么可以将8点作为该应用程序的标杆时刻。
如图4所示,x轴为最近一段时间内某个应用程序的历史结束时间间隔记录,y轴为次数。应用程序的历史完成时间符合泊松分布。泊松分布的概率函数如表达式(1):
泊松分布的期望和方差均为λ,特征函数为表达式(2),适合于描述单位时间内随机事件发生的次数。
ψ(t)=exp{λ(eit-1)}. (2)
参数λ是程序在单位时间内的平均完成率,k是单位时间的个数。这里使用泊松分布的数理方法整理出最近一段时间内应用程序的运行数据,为下一步数据处理中μ+σ的取值做准备。
<数据处理>
例如,系统包括多个层级,对来自不同层级的数据进行处理,得到数据格式一致的数据集。例如,将某些层级的应用程序名加上前缀,完成状态采用统一的编号格式,结束时间使用同一种格式。
这里,采用六西格玛计算。对于每一个前置应用程序,连续60天的完成情况可以构成一个简单时间序列,可以反映一定时间内的数据生产完成情况。那么这个时间序列的均值μ反映该应用程序的平均完成情况,可以理解为μ为该应用程序完成的平均概率;时间序列的σ反映应用程序完成情况的波动性,σ可以理解为完成率的方差。从生产角度来说,为了控制的严格程度,往往需要生产的及时性控制在更小的范围内,因此,设定t<=μ+σ,即生产的波动性应控制在1个σ的范围内,如果一个应用程序完成时间大于μ+σ,认为该程序延时,延时记为1,未延时记为0。例如,假设一个应用程序的平均完成时间为20分钟,误差为5分钟,今天该应用程序10分钟运行完毕,认为没有延时,记为0;如果该由于应用程序运行30分钟,判定该应用程序延时,记为1。
<数据保存>
把应用程序的属性,如:是否重要、是否延时、是否完成、结束时间、延时时间、标杆时间等信息,提取出来后放入一个对象中。以应用程序名为键(key),应用对象为值(value)统一保存。
<历史数据统计>
可以是统计最近三个月内每个应用程序的平均运行时长和等待时长。运行时长指的是应用程序从开始执行到结束执行中间所耗费的时间。等待时长指的是应用程序众多前置中最晚结束的时间到本应用程序开始执行之间的间隔时长。
具体地,预测模型是指预测应用程序是否会延时以及预测延时几率。可以通过递归计算得到未执行应用程序的延时可能性,预测模型可以包括以下内容:
<设置延时阈值>
设置初始延时的阈值和范围,例如,将系统中各个层级中的重要应用程序,设置其延时阈值为延时30分钟以上。如果此应用程序在延时阈值内还没执行完成,则把当前时刻代指应用程序的结束时刻,在此基础上累加后置时间。以结束时刻作为标记时刻,即本分支推算到当前应用程序的标记。可以理解为,将应用程序的实际结束运行时刻作为标记时刻,依此推断该应用程序对应的后置应用程序是否会延时。
<关系树>
在血缘关系表中记录着应用的前后置应用程序关系,每条信息是一对一关系,但总体上是多对多关系,也就是说一个前置应用程序会对应多个后置应用程序,一个后置应用程序会有多个前置应用程序。逐个获取判定的已经发生延时的应用程序名,在关系表中取得已经发生延时应用程序对应的后置应用程序名。
血缘关系表如表1所示,表1仅仅是一种示例,不代表血缘关系表的全部内容。
表1
前置应用程序名称 | 后置应用程序名称 |
DwaBehImeiDT | DwdEvtCallImeiD |
DwaBehImeiDT | DwdEvtGprsUsrDtD |
DwdEvtCallImeiD | StMkt14kpiKfHyBindDm |
<验证应用程序的有效性>
验证后置应用程序是否有效,最近三个月是否有运行记录,如果没有的话则忽略此应用,即对最近三个月无运行记录的应用程序,不必进行延时预测。
<查看是否已执行>
查看后置应用程序当日是否已经执行过,如果已经执行过则更新该后置应用程序的标记时间,即本分支推算到当前应用程序的标记。直接把后置应用程序的结束时间覆盖标记时间。
<查看是否已预测>
查看后置应用程序是否已经预测过,因为一个前置应用程序有多个后置应用程序,意味着现在这个后置应用程序可能会出现在别的应用程序的后置中,所以有必要查看此后置应用程序是否已被预测。如果已经被预测过,则比较预测结束时候是否早于标记时间加上等待时长和运行时长,取更大的那个时间覆盖预测结束时间。因为后置应用程序得等待每个前置应用程序完成后才能开始执行。
<预测应用程序>
计算前置应用程序的实际运行结束时刻、后置应用程序的平均运行时长、后置应用程序的平均等待时长的总和,将该总和减去待预测的后置应用程序的标杆时刻得到预计延时长,如果为负数或0表示不会延时。使用预计延时长通过线性拟合算法得到此后置应用程序的预计延时几率。但无法保证此后置应用程序没有再下一层的后置,可以使用递归算法,把此后置应用程序作为前置应用程序,运算它的下一层,即后置的后置,直至预测完毕所有后置应用程序是否会延时。
具体地,优化模型是指对上述步骤得出的预计延时几率进行优化,进一步得到待预测应用程序的总的延时几率。优化模型可以包括以下内容:
<关联预测>
对比每个预测出来的结果和对应的前置应用程序的关联关系,即在历史记录中查看当对应的多个前置应用程序发生延时,后置应用程序是否也会发生延时,得到如表2所示的关系表,其中1表示延时,0表示未延时。
表2
前置1 | 前置2 | 前置3 | 前置4 | 后置 |
0 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 1 | 1 | 0 | ? |
逻辑性的思维是指根据逻辑规则进行推理的过程;它先将信息化成概念,并用符号表示,然后,根据符号运算按串行模式进行逻辑推理;这一过程可以写成串行的指令,让计算机执行。然而,直观性的思维是将分布式存储的信息综合起来,结果是忽然间产生的想法或解决问题的办法。这种思维方式的根本之点在于以下两点:1.信息是通过神经元上的兴奋模式分布存储在网络上;2.信息处理是通过神经元之间同时相互作用的动态过程来完成的。
在本发明中,使用大量的前后置应用程序的运行数据表训练逆传播(BackPropagation,BP)神经网络,已运行过的历史数据流经神经网络中的输入、隐藏、输出层,训练其中的神经元参数Wjk、Vij,得到能逼近真实样本集的神经网络预测模型。使用此模型预测系统的当日数据,计算出上述表2中的问号部分。
以下对神经网络计算过程作简要说明。
结合BP网络结构,误差由输出展开至输入的过程如下:
输出层的表达式(3)如下:
其中,E为应用程序的实际完成概率和BP网络模拟计算出的概率之间的误差,dk为应用程序的实际完成概率,Ok为BP网络模拟计算出的概率。
误差展开至隐藏层的表达式(4)如下:
其中,对于隐藏层的输入集yj,目的是找到一个Wjk使得E的值为最小,f是激励函数。
误差展开至输入层的表达式(5)如下:
其中,对于输入层的样本集Xi找到Vij使得E的值为最小。
本模型在输入层使用的节点数和前置应用程序数相同,设置两个隐藏层,输出层直接输出0和1用来代指后置应用程序是否会延时。如图5是本发明实施例提供的逆传播神经网络示意图。
<更新延时几率>
把关联预测加权成数值累加到应用程序的延时几率,得到此应用的总的延时几率,亦即
总的延时几率=p1*x1+p2*x2+p3*x3+...+pn*xn=∑(pi*xi)(6)
其中,pn为待预测应用程序的前置应用程序赋予此应用程序的初始延时概率,xn为前置应用程序的影响指数。加权得到后置应用程序的总的延时预测结果。例如,待预测的后置应用程序对应有四个前置应用程序,且三个前置应用程序均发生了延时(可能是预测的该三个前置应用程序会发生延时,或者该三个前置应用程序已经发生了延时),此时,三个发生了延时的前置应用程序均会赋予该后置应用程序一个初始延时概率。
<保存结果>
保存预测出的应用程序名称和该应用程序的总延时几率。
<使用结果>
将延时几率大于50%的应用程序自动发送给运维管理人员,对这些应用程序进行重点观测或看情况进行重新调度。如果该延时应用程序超过一定时间仍未完成则自动重新调度。
本发明采用应用程序的运用监控数据和血缘数据,使用递归算法和BP神经网络优化模型来预测应用程序的延时情况,解决了当前、后置关系呈金字塔状的情况下无法自动预测的问题,比手工查证速度更快、结果更准确。
图6是本发明实施例提供的延时预测装置的结构示意图。如图6所示,本发明实施例提供的延时预测装置包括以下模块:
数据获取模块601,用于获取系统的预设起始时刻至当前时刻的第一运行信息及系统的历史运行信息;
前置应用程序确定模块602,用于根据第一运行信息及系统中应用程序的标杆时刻,确定系统中发生延时的应用程序,并将发生延时的应用程序作为前置应用程序;其中,标杆时刻指应用程序的预计运行结束时刻;
后置应用程序确定模块603,用于根据系统中的应用程序的血缘关系,确定前置应用程序对应的后置应用程序;
运行时长确定模块604,用于根据历史运行信息确定后置应用程序的平均运行时长和平均等待时长;其中,等待时长指后置应用程序对应的多个前置应用程序中最晚结束运行的应用程序的运行结束时刻至后置应用程序起始时刻之间的间隔时长;
应用程序延时确定模块605,用于根据前置应用程序的实际运行结束时刻及后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定后置应用程序是否会发生延时。
在一个实施方式中,应用程序延时确定模块605具体还用于:
若确定后置应用程序会发生延时,则确定后置应用程序对应的后置应用程序是否会延时,直至确定完所有后置应用程序是否会发生延时。
在一个实施方式中,应用程序延时确定模块605具体用于:
计算前置应用程序的实际运行结束时刻、后置应用程序的平均运行时长、后置应用程序的平均等待时长的总和;
将计算得到的总和与后置应用程序的标杆时刻进行比较,得到比较结果,根据比较结果确定后置应用程序是否会方法延时。
在一个实施方式中,应用程序延时确定模块605具体还用于:
若后置应用程序会延时,将总和和减去后置应用程序的标杆时刻,得到预计延时长;
利用线性拟合法对预计延时长进行拟合,确定后置应用程序的初始延时几率。
在一个实施方式中,应用程序延时确定模块605具体还用于:
根据历史运行信息,确定后置应用程序的延时数据及后置应用程序对应的多个前置应用程序的延时数据;
将延时数据输入逆传播神经网络的输入,确定每个前置应用程序对后置应用程序的影响权重。
在一个实施方式中,应用程序延时确定模块605具体还用于:
根据每个前置应用程序对后置应用程序的多个初始延时几率,及每个前置应用程序对后置应用程序的影响权重,确定后置应用程序的总延时几率。
在一个实施方式中,应用程序延时确定模块605具体用于:
后置应用程序包括在预设周期内有运行记录,且在当前时刻未开始运行的应用程序。
在一个实施方式中,应用程序延时确定模块605具体还用于:
预先设置应用程序的标杆时刻;
或者,根据历史运行信息,得到应用程序的历史运行结束时刻的分布图;
根据应用程序的历史运行结束时刻的分布图,并基于泊松分布的概率函数和特征函数确定应用程序的标杆时刻。
根据本发明提供的延时预测装置,能够快速、准确地预测发生延时的应用程序。
图7是本发明实施例提供的延时预测设备的结构示意图。
在延时预测设备可以包括处理器301以及存储有计算机程序指令的存储器302。
具体地,上述处理器301可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。
存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器302可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器302可在综合网关容灾设备的内部或外部。在特定实施例中,存储器302是非易失性固态存储器。在特定实施例中,存储器302包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器301通过读取并执行存储器302中存储的计算机程序指令,以实现上述实施例中的任意一种延时预测方法。
在一个示例中,延时预测设备还可包括通信接口303和总线310。其中,如图7所示,处理器301、存储器302、通信接口303通过总线310连接并完成相互间的通信。
通信接口303,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
总线310包括硬件、软件或两者,将延时预测设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线310可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
该延时预测设备可以执行本发明实施例中的延时预测方法,从而实现结合图2和图6描述的延时预测方法和装置。
另外,结合上述实施例中的延时预测方法,本发明实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种延时预测方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。
Claims (11)
1.一种延时预测方法,其特征在于,包括:
获取系统的预设起始时刻至当前时刻的第一运行信息及所述系统的历史运行信息;
根据所述第一运行信息及所述系统中应用程序的标杆时刻,确定所述系统中发生延时的应用程序,并将所述发生延时的应用程序作为前置应用程序;其中,所述标杆时刻指所述应用程序的预计运行结束时刻;
根据所述系统中的应用程序的血缘关系,确定所述前置应用程序对应的后置应用程序;
根据所述历史运行信息确定所述后置应用程序的平均运行时长和平均等待时长;
根据所述前置应用程序的实际运行结束时刻及所述后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定所述后置应用程序是否会发生延时。
2.根据权利要求1所述的延时预测方法,其特征在于,所述方法还包括:
若确定所述后置应用程序会发生延时,则确定所述后置应用程序对应的后置应用程序是否会发生延时,直至确定完所有后置应用程序是否会发生延时。
3.根据权利要求1所述的延时预测方法,其特征在于,所述根据所述前置应用程序的实际运行结束时刻及所述后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定所述后置应用程序是否会发生延时,包括:
计算所述前置应用程序的实际运行结束时刻、所述后置应用程序的平均运行时长、所述后置应用程序的平均等待时长的总和;
将计算得到的总和与所述后置应用程序的标杆时刻进行比较,得到比较结果,根据所述比较结果确定所述后置应用程序是否会发生延时。
4.根据权利要求3所述的延时预测方法,其特征在于,所述方法还包括:
若确定所述后置应用程序会发生延时,将所述总和和减去所述后置应用程序的标杆时刻,得到预计延时长;
利用线性拟合法对所述预计延时长进行拟合,确定所述后置应用程序的初始延时几率。
5.根据权利要求4所述的延时预测方法,其特征在于,所述方法还包括:
根据所述历史运行信息,确定所述后置应用程序的延时数据及所述后置应用程序对应的多个前置应用程序的延时数据;
将所述延时数据输入逆传播神经网络,得到每个前置应用程序对所述后置应用程序的影响权重。
6.根据权利要求5所述的延时预测方法,其特征在于,所述方法还包括:
根据每个前置应用程序对所述后置应用程序的初始延时几率,及所述每个前置应用程序对所述后置应用程序的影响权重,确定所述后置应用程序的总延时几率。
7.根据权利要求1所述的延时预测方法,其特征在于,所述后置应用程序包括在预设周期内有运行记录,且在当前时刻未开始运行的应用程序。
8.根据权利要求1所述的延时预测方法,其特征在于,所述方法还包括:
预先设置所述应用程序的标杆时刻;
或者,根据所述历史运行信息,得到所述应用程序的历史运行结束时刻的分布图;
根据所述应用程序的历史运行结束时刻的分布图,基于泊松分布的概率函数和特征函数确定所述应用程序的标杆时刻。
9.一种延时预测装置,其特征在于,所述装置包括:
数据获取模块,用于获取系统的预设起始时刻至当前时刻的第一运行信息及所述系统的历史运行信息;
前置应用程序确定模块,用于根据所述第一运行信息及所述系统中应用程序的标杆时刻,确定所述系统中发生延时的应用程序,并将所述发生延时的应用程序作为前置应用程序;其中,所述标杆时刻指所述应用程序的预计运行结束时刻;
后置应用程序确定模块,用于根据所述系统中的应用程序的血缘关系,确定所述前置应用程序对应的后置应用程序;
运行时长确定模块,用于根据所述历史运行信息确定所述后置应用程序的平均运行时长和平均等待时长;
应用程序延时确定模块,用于根据所述前置应用程序的实际运行结束时刻及所述后置应用程序的平均运行时长、平均等待时长及标杆时刻,确定所述后置应用程序是否会发生延时。
10.一种延时预测设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;
所述处理器执行所述计算机程序指令时实现如权利要求1-8任意一项所述的延时预测方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-8任意一项所述的延时预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910349825.7A CN111858225A (zh) | 2019-04-28 | 2019-04-28 | 延时预测方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910349825.7A CN111858225A (zh) | 2019-04-28 | 2019-04-28 | 延时预测方法、装置、设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111858225A true CN111858225A (zh) | 2020-10-30 |
Family
ID=72966204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910349825.7A Pending CN111858225A (zh) | 2019-04-28 | 2019-04-28 | 延时预测方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858225A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114819778A (zh) * | 2022-07-01 | 2022-07-29 | 埃克斯工业(广东)有限公司 | 进入工艺流程时机生成方法、装置、设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080027888A1 (en) * | 2006-07-31 | 2008-01-31 | Microsoft Corporation | Optimization of fact extraction using a multi-stage approach |
CN107656817A (zh) * | 2016-07-25 | 2018-02-02 | 阿里巴巴集团控股有限公司 | 程序间进行数据传输的方法以及装置 |
-
2019
- 2019-04-28 CN CN201910349825.7A patent/CN111858225A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080027888A1 (en) * | 2006-07-31 | 2008-01-31 | Microsoft Corporation | Optimization of fact extraction using a multi-stage approach |
CN107656817A (zh) * | 2016-07-25 | 2018-02-02 | 阿里巴巴集团控股有限公司 | 程序间进行数据传输的方法以及装置 |
Non-Patent Citations (1)
Title |
---|
潘钢: "一种预测后置应用延迟的方法与实现", 中国信息化 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114819778A (zh) * | 2022-07-01 | 2022-07-29 | 埃克斯工业(广东)有限公司 | 进入工艺流程时机生成方法、装置、设备及可读存储介质 |
CN114819778B (zh) * | 2022-07-01 | 2022-11-11 | 埃克斯工业(广东)有限公司 | 进入工艺流程时机生成方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111459778B (zh) | 运维系统异常指标检测模型优化方法、装置及存储介质 | |
CN111796957B (zh) | 基于应用日志的交易异常根因分析方法及系统 | |
CN106339322A (zh) | 一种基于hmm‑aco的软件行为预测的方法 | |
CN117580046A (zh) | 一种基于深度学习的5g网络动态安全能力调度方法 | |
CN113505879B (zh) | 一种基于多注意力特征记忆模型的预测方法和装置 | |
CN111858225A (zh) | 延时预测方法、装置、设备及计算机存储介质 | |
CN111325255B (zh) | 特定人群圈定方法、装置、电子设备及存储介质 | |
CN117220283A (zh) | 一种光伏发电功率预测方法、装置和设备 | |
CN112463564A (zh) | 确定影响主机状态的关联指标的方法及装置 | |
CN116361974A (zh) | 一种基于公路业务及数据网络的数据源重要性判别方法 | |
CN113285978B (zh) | 基于区块链和大数据的故障识别方法及通用计算节点 | |
CN109670593B (zh) | 一种评估、以及预测深度学习模型中层计算时间的方法 | |
CN112907055A (zh) | 数据处理时效测试方法和装置 | |
CN113343468A (zh) | 一种sarima模型进行多步预测的方法、装置及设备 | |
Kobbacy et al. | Small data sets and preventive maintenance modelling | |
CN118069380B (zh) | 一种算力资源处理方法 | |
CN117354053B (zh) | 一种基于大数据的网络安全保护方法 | |
CN113642198B (zh) | 一种基于可靠性增长的独立运载系统设备可靠性评估方法 | |
CN110942196B (zh) | 预测辐照修正方法及装置 | |
CN110351120B (zh) | 一种通信设备故障判断方法及系统 | |
CN109711535B (zh) | 一种利用相似层预测深度学习模型中层计算时间的方法 | |
CN116108331A (zh) | 工业设备监测数据预测曲线的生成方法及装置 | |
Zhou et al. | A High-Dimensional Timing Data Cleaning Algorithm for Wireless Sensor Networks. | |
CN115438990A (zh) | 一种基于区块链的政务信息化系统绩效评价方法和装置 | |
CN113821344A (zh) | 一种基于机器学习的集群负载预测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |