一种提高大批量并行业务流程服务质量的方法与流程

文档序号:15463115发布日期:2018-09-18 18:39阅读:178来源:国知局

本发明属于并行业务流程检测点范畴,具体涉及一种提高大批量并行业务流程服务质量的方法。



背景技术:

近年来,电子商务和电子政务得到快速发展,政府部门和企业经常出现大量的业务需要在短时间内处理完成。这些业务流程的处理都具有一定的时间界限,例如证券交易的业务需要在当日晚间22点之前清算完毕。这类大批量并行的业务流程若不能在规定的时间内完成,将会降低客户的满意度甚至是经济上的损失。要完成这类大批量并行业务流程的业务处理,需要投入大量的资金进行基础设施的搭建和运行维护。

云计算环境作为一种新的信息技术平台,通过互联网以计费的方式可以为用户提供海量的且廉价的计算、存储和网络资源。在这种模式下,政府部门和企业可以根据当前的实际业务量,动态的从云计算服务上获得所需的软件和硬件资源。同时,云环境支持弹性的资源管理模式,当需要增加或减少云计算资源时,可以申请或释放一定的资源,避免资源的浪费。

但是云计算环境为用户提供的云服务具有与生俱来的不确定性的特点,使得用户在花费尽可能少的费用的前提下,很难确保业务流程在规定的时间内完成。为满足用户对云环境服务质量的需求,需要对这类并行业务流程执行过程中进行检测,分析业务流程运行时的实际执行状态与业务流程创建时的预计执行状态保持一致。

具体来说,对并行业务流程的时序检测包括两个部分,首先是时序检测点的选择,然后是异常处理。因此,对并行业务流程执行过程检测的首要问题是选择合理的时序检测点。检测点确实之后,要对整个业务流程在运行过程中发生的异常进行处理,如在某个业务流程运行过程中,出现重大的延迟,此时就需要增加适当的资源就行有效处理,从而减轻该延迟对该业务流程运行结果所造成的影响。

因此,在整个并行业务流程运行过程中,存在两个难点。

第一,如果时序检测点选择的不合理,比如说检测点过少,在某个检测点,检测到系统已经延迟过多,使系统无法恢复延迟的工作量,最终导致整个业务流程不能按时完成,则会大大降低云环境的服务质量。如果检测点选择的过多,在并行业务流程的执行过程,对业务流程的时序验证则会浪费过多的云服务资源。所以检测点选择在整个并行业务流程系统中至关重要。

第二,对已发生的异常进行处理,所需要的额外服务器资源的数量,如果增加的服务器资源过多,会造成一些不必要的资源浪费和资金浪费,若增加的服务器资源过少,可能导致该业务流程同样不能按时完成,无法满足用户对服务质量的需求。

然而在现有的研究中,都是从被动的角度对并行业务流程进行检测,也就是说,只有在延迟现象发生之后,才把该时刻选择为检测点,然后再进行异常恢复处理。但在现实生活中,有些情况是不允许有延迟出现的,比如天气预报,如果不能在规定的时间内计算出预报结果,那么这个结果就失去了预报的意义。



技术实现要素:

本发明的目的在于提供一种提高大批量并行业务流程服务质量的方法,以提高并行业务流程的按时完成率,满足用户对服务质量的需求。

为此,本发明提供了一种提高大批量并行业务流程服务质量的方法,包括以下步骤:将整个业务流程划分为多类活动,通过历史大数据获取整批并行业务流程中各类活动的历史均值,其中,每一类活动的执行相互独立;在整批并行业务流程中选取一类活动,并且统计该类活动的规模;在该类活动中选取部分活动,策略如下:该部分活动的数量n与活动规模的关系式为其中,x表示该类活动规模,该部分活动执行完的时刻定义为时序检测点,并且统计时序检测点之前的第一类活动中所选取的部分活动的均值;根据类比关系计算整批并行业务流程中其他类活动的预测均值和整批并行业务流程的预测完成时间;以及根据所述预测完成时间确定该业务流程可能发生的延迟量,再依据所述延迟量和设定的服务器的效率确定增添资源的数量。

在本发明中,通过提供基于预测的时序检测点位置确定策略,提前预测并行业务流程可能会发生延迟的时刻,根据检测点位置业务流程的运行情况,判断后期执行过程是否会有延迟,若有延迟,根据预测的延迟时间大小,在活动结束前的一段时间内,增加资源,减少过多延迟对整个并行业务流程运行造成的影响,进一步提高并行业务流程的按时完成率,满足用户对服务质量的需求。其中,在活动结束前的这一段时间的大小,是根据预测的延迟时间大小而定。

本发明相比于目前已有的检测点选择方法,检测点的数量少,能满足一定的服务质量,通过采用主动的策略在活动可能发生延迟的点进行检测处理,大幅降低了时序异常处理过程的开销。此外,并行业务流程的按时完成率也能达到用户的要求。

除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。

附图说明

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

图1为实施例1的活动均值差大小变化情况过程示意图;

图2为实施例1的检测点与图像差分关系过程示意图;

图3为不同活动规模的均值与检测点n值的关系示意图;

图4为检测点位置准确性分析结果示意图;

图5为异常处理后结果示意图;

图6为本发明的提高大批量并行业务流程服务质量的方法的流程图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

下面对本发明涉及的技术术语进行解释:

并行业务流程:一个密集型的能够整体或部分自动化执行的业务流程,文本、信息或者是任务能够在不同用户之间传递或执行。

活动:一个业务流程中的任何一步操作。

均值:一个并行业务流程中同一类操作运行时间的平均值。

时序检测点:业务流程在执行过程中的某一时刻。

如图6所示,本发明的提高大批量并行业务流程服务质量的方法包括以下步骤:

S101、将整个业务流程划分为多类活动,通过历史大数据获取整批并行业务流程中各类活动的历史均值,其中,每一类活动的执行相互独立;

S103、在整批并行业务流程中选取第一类活动,并且统计第一类活动的规模;

S105、在第一类活动中选取部分活动,策略如下:该部分活动的数量n与活动规模的关系式为其中,x表示该类活动规模,该部分活动执行完的时刻定义为时序检测点,并且统计时序检测点之前的第一类活动中所选取的部分活动的均值;

S107、根据类比关系计算整批并行业务流程中其他类活动的预测均值和整批并行业务流程的预测完成时间;以及

S109、根据所述预测完成时间确定该业务流程可能发生的延迟量,再依据所述延迟量和设定的服务器的效率确定增添资源的数量。

本发明主动地防范了并行业务流程在运行过程中可能发生的延迟,并确定了检测点选择和并行业务流程规模的关系,以及发生异常时,增加额外资源大小的方式,在减少了检测点数量的同时,还能保证大批量并行业务流程的按时完成率,满足用户对服务质量的要求,一定程度上减少了检测点数量多和申请服务器资源数量不合理而带来的成本开销。

对于整个并行业务流程,每类活动的均值大小和活动规模可以很好的反应出该业务流程所需要的云资源的情况。通过对某类活动子集的均值和整类活动的均值之间的差值进行比较,并对规模不等的并行业务流程进行试验,发现差值大小随着选取活动数量的增多而不断变小,且在选取的活动数量达到某一值时逐渐趋于稳定。

此外,对均值大小进行调整,发现对同一规模的活动,差值趋于稳定的点并没有随着均值大小的变化而变化,而是稳定在某个数值附近。另外,随着并行业务流程规模的不断变化,这个值也随之改变。因此,在用部分活动的均值替代某类活动的实际均值时,选取活动数量的最佳值与均值无关,与规模有关。

检测点位置确定的具体过程如下:

(1.1)设MR为一类活动的实际均值,Mp为选取n个该类活动的部分均值,则

其中N代表该类活动的总个数,也即实例的个数,n代表选取活动的个数。

(1.2)对其中一类活动进行统计,采样这类活动的执行时间,得到n个采样值, a1,a2,a3,...an,然后求得这n个采样值的平均值。可知当n越大,这n个值的均值就越接近这类活动的均值MR,即当n→N时,这n个活动的均值Mp就收敛于这类活动的均值MR,即

(1.3)若统计的活动的数量越多,则剩余活动的数量越少,当在该时刻出现较大的延误时,可能会导致整个业务流程不能按时完成。因此,从这一类活动中选取部分活动,让活动数量尽可能地少,且这部分活动的均值和这类活动的实际均值之间的差值也尽可能地小,假设N′代表最合理的活动选取个数,即n→N',N'<N,使 Mp-MR能足够的小,即这样该部分活动便可以很好的反应这类活动,则该时刻我们定义为检测点。

(1.4)进一步确定均值大小是否会影响n值的大小,均值在[30,3000]中从小到大依次随机取值。对不同的活动规模进行实验,确定n值和活动的均值大小的关系,通过实验发现与n值的大小与均值无关。

(1.5)由于不同的活动规模,n值的大小也不同,为了确定n值和活动规模之间的关系,对活动规模分别为100×10,1000×30,5000×10,10000×20,50000×10进行实验,依次采用添加噪声或者不加噪声的方式进行实验。

假设n表示检测点,x表示活动规模,n和x之间的多项式函数关系可表示为:

n=pn*xn+pn-1*xn-1+...+p1*x+p0--------------------------(3)

根据最小二乘法多项式曲线拟合原理,通过各个规模确定的检测点到该曲线的距离之和,使得偏差平方和:

最小,对每一组规模的数据都满足R2=min,记这m个方程表示为:

为了求得符合条件的p值,对等式求偏导,则有:

即可得到n个方程,求解即可得到pi各个系数值,从而得到最小二乘法拟合多项式。

(1.6)拟合后得到高阶项系数pn,pn-1,...p2的值都为0,表达式可设为 n=p1*x+p2,p1和p2参数通过多次实验进行最小二乘法拟合得到,p1=0.005±0.001,p2=5.5±1.5,由于在该范围中,确定的n值大小比较接近,本实验采取中间值的策略,即p1=0.005,p2=5.5。因此,n的大小与活动规模的关系式可表示为:

确定检测点后,由于每类活动相互独立,利用统计均值和实际均值之间的等比关系便可以确定其他类活动运行的可能均值,从而得出这批并行业务流程的预测完成时间以及每台服务器的效率。根据预测的完成时间和理论完成时间确定该业务流程可能发生的延迟量,依据服务器的效率确定增添资源的数量。

其中,时序异常处理的具体过程如下:

(2.1)在检测点位置选择的过程中,确定了检测点的位置,检测点位置n个活动均值为M1,该类活动的均值为m1,根据前面介绍的这n个活动均值可以很好代替这类活动的均值,所以由于各类活动相互独立,则有从而确定了各类活动的预测均值Mp;

(2.2)根据上一过程的检测点的位置,在该位置计算出完成这批并行业务流程的预测时间其中Mpi为各类活动的预测均值,1.28σi为根据用户满意度90%确定的正态分布的概率区间范围,N为这批并行业务流程的实例个数,M(ai)为活动ai所在该类活动对应的均值。

(2.3)初始服务器数量ServNum是根据用户的需求设定,在预测点根据该业务流程的实际完成时间判断每台服务器的效率其中,表示活动ai所要的执行时间。

(2.4)这批并行业务流程的标准完成时间为预测延迟量即延迟量为预测时间和各个活动ai标准执行时间之和的差值,从而额外所需的服务器数量exServNum=delay/Efficiency;

(2.5)通过增加服务器资源,在该并行业务流程运行完成后统计该业务流程的完成成功率情况。

实施例一

在本实施例中,对并行业务流程中0%,10%,20%,30%的活动数量添加噪声,噪声的大小为该类活动的均值的10%,20%,30%,以无噪声和10%的活动数量添加噪声,噪声大小10%的该类活动的均值为例。

检测点位置确定过程如下:

部分活动均值代替整类活动均值。通过一组实验对选取n个活动的该部分均值和这批活动的实际均值之间的关系统计,得到它们之间差值和活动规模的散点图。通过对同样规模活动的并行业务流程进行了多组实验,同一位置取多组实验均值差的平均值,便得到了较为平滑的散点图。

选取活动的部分均值与实际均值的差值之间的关系图如图2所示,图中,横轴表示求部分均值的活动个数,纵轴表示部分均值与实际均值的差值。图1(a)为没有添加噪声的情况,图1(b)为按照要求添加噪声的情况。从图中可以看出,随着选取活动数量的增多,均值差逐渐变小,且噪声对部分均值与实际均值的一致性影响不大。由于不可能将所有活动都选取完作为一个监测点的位置,所以需要从均值差变化波动最大处分析。

我们对均值差变化的波动性分析采用一阶差分的方法。一阶差分是离散函数中连续相邻两项之差,若设diff为部分均值与实际均值的均值差,则 Y(n)=diff(n+1)-diff(n),一阶差分可以很好的反应数据的波动情况,当数据趋于平稳时,Y(n)→0。

对图1的数据进行拟合后,求一阶差分值。为了进一步确定均值大小是否会影响 n值的大小,均值在[30,3000]中从小到大依次随机取值。通过实验发现,在活动规模为100×10时,即该业务流程包含100实例,每个实例有10个活动,一阶差分所确定的n值基本相近,在5附近,在活动规模为1000×10时,一阶差分所确定的活动的n 值也基本相近,在20附近。

图3为活动规模为100×10和1000×10的实验结果。图3的实验结果验证了本策略确定的n值和活动的均值大小无关。当活动的规模确定后,n值的大小分布在一定的区间范围内。即使对仿真的数据随机添加噪声,n的值会分布在另一个区间范围内,并不会随均值的增大线性增加。

采取一阶差分作为检测点选择的标准,通过n个活动的均值和整类活动的实际均值的百分比小于0.27%即|MP-MR|/MR≤0.27%时对应的n值作为选取的检测点的位置。这n个活动的部分均值对应的3σ区间与这类活动实际均值确定的3σ区间重叠率达到了99.46%以上,也就是说由这n个活动所确定的部分均值可以很好的反应整类活动的实际均值。

异常处理过程如下:

实验中通过给定一个并行业务流程的规模,带入到公式(4)中,得到对应的选取活动的数量。对并行业务流程活动规模为100×20,500×10,1000×30,5000×10的数据进行计算,则其对应的选取活动的数量为6,8,11,41。

根据公式(1)分别计算出部分活动均值MP和实际活动均值MR,为了更好的表示n值的准确性,这里利用部分活动均值与实际活动均值的差值百分比来进行分析,即得到实验结果如图4所示,图中横轴表示并行业务流程的活动规模,纵轴表示部分活动均值与实际活动均值的差值百分比。

为了验证并行业务流程的按时完成率是否达标,这里假设用户对服务质量的满意度为90%,即只要该并行业务流程的按时完成率达到90%以上,便可认为达到用户对服务质量的要求。通过在第一阶段在检测点的预测,计算出需要增加的服务器资源,减轻当前业务流程的延迟量对整批业务流程的影响,通过比较该业务流程最终的实际完成时间和标准时间,得到该业务流程的完成情况,实验结果如图5所示。

根据本发明的方法,主动地防范了并行业务流程在运行过程中可能发生的延迟,并确定了检测点选择和并行业务流程规模的关系,以及发生异常时,增加额外资源大小的方法,在减少了检测点数量的同时,还能保证大批量并行业务流程的按时完成率,满足用户对服务质量的要求,一定程度上减少了检测点数量多和申请服务器资源数量不合理而带来的成本开销。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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