基于电力物联网负反馈机制的性能动态调整方法及系统与流程
未命名
09-24
阅读:51
评论:0
1.本发明涉及一种基于电力物联网负反馈机制的性能动态调整方法及系统,属于电力系统数据处理技术领域。
背景技术:
2.电力系统承载着庞大的输配电电力网络以及海量复杂信息的处理,随着我国电网数字化转型的不断推进,新型电力系统对电网数字化提出了感知更广、交互更密、时效更高、安防更优的新要求。
3.为解决传统电网业务系统垂直建设、信息模型及数据相互割裂等问题,面向感知数据共享的智慧物联体系应运而生。电力智慧物联共性技术架构涵盖电力物联网云边端的统一架构模型、数据高效共享交互、边缘计算与安全接入等研究内容,是感知数据高效采、传、存、用的重要基础。
4.物联管理平台在智慧物联体系中处于承上启下的核心位置,满足多样化设备接入,提供设备端到企业中台及上层应用的信息交互通道,实现数据共用,构建开放共享的应用生态。数据进入物联管理平台需要经过mqtt转发单元、消息队列、数据库等多个节点。由于电力物联网领域设备数据巨大,消息处理不及时会产生数据堆积,影响系统整体性能,因此需要研究一种性能动态调整技术,能够在系统运行过程中通过统计和预测消息队列中的消息堆积数量动态调整处理线程数,提升平台整体运行效率。
技术实现要素:
5.本发明所要解决的技术问题是克服现有技术的缺陷,提供一种基于电力物联网负反馈机制的性能动态调整方法及系统。
6.为解决上述技术问题,本发明提供一种基于电力物联网负反馈机制的性能动态调整方法,包括:
7.从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的写入消息队列时间;
8.获取该数据的处理时间,根据写入消息队列时间和处理时间计算获得时间差;
9.根据时间差以及在该时间差内处理的数据量计算数据消费流量;
10.将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;
11.根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;
12.获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;
13.根据所述下一时间差时间段的线程数量进行业务数据处理。
14.进一步的,所述时间序列预测模型采用arima时间序列预测模型,表达式为:
[0015][0016]
式中:为为第i个任务模块对t时刻的原平均消费流量做d次差分运算得到的结果,表示预测的下一个时间差时段的平均消费流量;为为第i个任务模块前j个时间差时间段内的平均消费流量;μ为常数项;γi、θi为相关系数;εi和ε
i-j
为误差项,εi和ε
i-j
为均值为0,方差为σ2>0的高斯白噪声,p为自回归阶数,q为移动平均阶数,d为差分的次数。
[0017]
进一步的,所述负载均衡机制的表达式为:
[0018][0019]
式中,wii是第i个任务模块ri最初的权值,wi是第i个任务模块ri当前的权值,其中bi是第i个任务模块ri的线程数,i=1,
…
,n,n表示任务模块总数,wi/wii为定值;
[0020]
根据负载均衡机制的表达式得到:当第i个任务模块ri的实际消费流量li增加时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的增加;当实际消费流量为li降低时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的减少;
[0021]
通过所述负载均衡机制的表达式确定对第i个任务模块ri的线程数bi增加或者减少。
[0022]
进一步的,所述获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量,包括:
[0023]
根据时间差以及在该时间差内的拉取数据量计算数据消费流量l(k);
[0024]
根据所述消费流量l(k)利用arima时间序列预测模型进行下一时间差时间段的消费流量l(k+1)的预测,得到预测值predl(k+1);
[0025]
获取当前任务模块中的上一时间差时间段的数据堆积数量u(k-1)、单个线程处理数据量的能力capb以及当前任务模块的线程数b(k);
[0026]
若u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间差时间段内堆积量为u(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;
[0027]
若u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间差时间段消费队列中的数据,则计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0028][0029]
若u(k)+predl(k+1)-capb
×
b(k)≤0,则当前线程数量能够处理队列中的所有数据,计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0030]
[0031]
round()为四舍五入取整操作函数。
[0032]
一种基于电力物联网负反馈机制的性能动态调整装置,包括:
[0033]
获取模块,用于从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的写入消息队列时间,获取该数据的处理时间;
[0034]
第一计算模块,用于根据写入消息队列时间和处理时间计算获得时间差;
[0035]
第二计算模块,用于根据时间差以及在该时间差内处理的数据量计算数据消费流量;
[0036]
预测模块,用于将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;
[0037]
判断模块,用于根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;
[0038]
第三计算模块,用于获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;
[0039]
处理模块,用于根据所述下一时间差时间段的线程数量进行业务数据处理。
[0040]
进一步的,所述时间序列预测模型采用arima时间序列预测模型,表达式为:
[0041][0042]
式中:为为第i个任务模块对t时刻的原平均消费流量做d次差分运算得到的结果,表示预测的下一个时间差时段的平均消费流量;为为第i个任务模块前j个时间差时间段内的平均消费流量;μ为常数项;γi、θi为相关系数;εi和ε
i-j
为误差项,εi和ε
i-j
为均值为0,方差为σ2>0的高斯白噪声,p为自回归阶数,q为移动平均阶数,d为差分的次数。
[0043]
进一步的,所述负载均衡机制的表达式为:
[0044][0045]
式中,wii是第i个任务模块ri最初的权值,wi是第i个任务模块ri当前的权值,其中bi是第i个任务模块ri的线程数,i=1,
…
,n,n表示任务模块总数,wi/wii为定值;
[0046]
根据负载均衡机制的表达式得到:当第i个任务模块ri的实际消费流量li增加时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的增加;当实际消费流量为li降低时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的减少;
[0047]
通过所述负载均衡机制的表达式确定对第i个任务模块ri的线程数bi增加或者减少。
[0048]
进一步的,所述第三计算模块,用于
[0049]
根据时间差以及在该时间差内的拉取数据量计算数据消费流量l(k);
[0050]
根据所述消费流量l(k)利用arima时间序列预测模型进行下一时间差时间段的消费流量l(k+1)的预测,得到预测值predl(k+1);
[0051]
获取当前任务模块中的上一时间差时间段的数据堆积数量u(k-1)、单个线程处理数据量的能力capb以及当前任务模块的线程数b(k);
[0052]
若u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间差时间段内堆积量为u(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;
[0053]
若u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间差时间段消费队列中的数据,则计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0054][0055]
若u(k)+predl(k+1)-capb
×
b(k)≤0,则当前线程数量能够处理队列中的所有数据,计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0056][0057]
round()为四舍五入取整操作函数。
[0058]
一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行所述的方法中的任一方法。
[0059]
一种计算机设备,包括,
[0060]
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行所述的方法中的任一方法的指令。
[0061]
本发明所达到的有益效果:
[0062]
本发明结合时间序列预测模型、负载均衡机制以及自适应动态调整策略可以实现电力物联网中海量数据的高效,极大程度地减少消息堆积,降低数据处理延时,提高系统的运行效率。
附图说明
[0063]
图1为本发明的流程示意图;
[0064]
图2为系统模型示意图;
[0065]
图3为平台正常运行时消息堆积数量及优化后线程数变化示意图;
[0066]
图4为物联管理平台上线时段消息堆积量及优化后线程数量变化示意图。
具体实施方式
[0067]
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
[0068]
实施例1
[0069]
如图1所示,本实施例介绍一种基于电力物联网负反馈机制的性能动态调整方法,包括:
[0070]
从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的
写入消息队列时间;
[0071]
获取该数据的处理时间,根据写入消息队列时间和处理时间计算获得时间差;
[0072]
根据时间差以及在该时间差内处理的数据量计算数据消费流量;
[0073]
将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;
[0074]
根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;
[0075]
获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;
[0076]
根据所述下一时间差时间段的线程数量进行业务数据处理。
[0077]
负载均衡机制包括:
[0078]
设在时刻t,消息队列中消息堆积的数量为m
t
,消费者模块消费的消息写入kafka的时间为ti,在ti时刻时消息队列中消息堆积的数量为mi,则此时的消费流量为:
[0079]
l=(m
t-mi)/(t-ti)(1)
[0080]
设第i个任务模块ri的实际消费流量为li;为了保持系统的消费平衡状态,第i个任务模块ri的消费流量为l
ib
,bi为消费者模块的线程数,ui为消费者模块i的消费利用率,us为平台整体的消费利用率。由消费平衡定义有:
[0081][0082]
设wii是ri最初的权值(反映ri的初始流量),wi是ri当前的权值(反映t时刻ri的实际负载能力)。当l
ib
》li时,ri处于轻负载状态,wi大于wii;当l
ib
《li时,ri处于重负载状态,wi小于wii。
[0083]
用公式来描述这种关系。由
[0084][0085]
由上述公式可以得出,当实际消费流量li增加时,为保持系统的消费平衡状态,因此该消费者模块的线程数bi需相应的增加;当实际消费流量li降低时,为保持系统的消费平衡状态,因此该消费者模块的线程数bi需相应的减少。
[0086]
arima时间序列预测模型包括:
[0087]
设时间间隔为ti,第i个任务模块ri在时刻t-ti至当前时刻t的平均消费流量为lai。通过利用arima模型,可对任务模块的平均消费流量进行预测分析。平均消费流量的一阶时间序列的差分运算数学表达式为:
[0088]
▽
(1)
lai=la
i(1)
=la
i-la
i-1
ꢀꢀꢀ
(4)
[0089]
n阶差分运算表示式为:
[0090][0091]
自回归差分移动模型的具体表达式为:
[0092][0093]
式中:为对t时刻的原平均消费流量做d次差分运算得到的结果,可用来预测下一个时段的平均消费流量;lai为当前t时刻的平均消费流量值;μ为常数项,通常用历史数据的均值来代替;γj、θj为相关系数;εi为误差项,并假设误差项是均值为0,方差为σ2>0的高斯白噪声。
[0094]
自适应动态调整包括:
[0095]
当第i个任务模块ri处于重负载时,wi小于wii,为保证入口流量li和消费流量lj保持稳定且不产生大量堆积,线程管理器根据最近n个批次的平均流量变化趋势,动态预测、调整线程数bi,以达到消费平衡状态,在最小化资源利用率的情况下,降低消息在平台的总体转发延时。
[0096]
获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量,包括:
[0097]
根据时间差以及在该时间差内数据拉取模块中处理的数据量计算数据消费流量l(k);
[0098]
根据之前计算得到的消费流量l(k)利用arima时间序列预测模型进行下一时间段的消费流量l(k+1)的预测值predl(k+1);
[0099]
如果数据拉取模块中的上一时间段的数据堆积数量u(k-1)与消费流量l(k)的和大于单个线程处理数据量的能力capb与当前任务模块的线程数b(k)的乘积,即u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间段内堆积量为u(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;
[0100]
若当前时间段内的数据堆积数量u(k)与预测得到的下一时间段的消费流量预测值predl(k+1)的和减去单个线程处理数据量的能力capb与当前任务模块的线程数b(k)的乘积大于0,即u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间段消费队列中的数据,则需增加线程数进行处理,使数据减少堆积,即否则,则当前线程数量可以处理队列中的所有数据,处于轻负载状态,则需减少线程数以降低资源开销,即其中,b(k+1)为下一时间段的线程数,round为四舍五入取整操作函数。
[0101]
实施例2
[0102]
与实施例1基于相同的发明构思,本实施例介绍一种基于电力物联网负反馈机制的性能动态调整装置,包括:
[0103]
获取模块,用于从电力物联网中终端设备上报数据的消息队列中拉取数据并解析
获得该数据的写入消息队列时间,获取该数据的处理时间;
[0104]
第一计算模块,用于根据写入消息队列时间和处理时间计算获得时间差;
[0105]
第二计算模块,用于根据时间差以及在该时间差内处理的数据量计算数据消费流量;
[0106]
预测模块,用于将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;
[0107]
判断模块,用于根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;
[0108]
第三计算模块,用于获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;
[0109]
处理模块,用于根据所述下一时间差时间段的线程数量进行业务数据处理。
[0110]
进一步的,所述时间序列预测模型采用arima时间序列预测模型,表达式为:
[0111][0112]
式中:为为第i个任务模块对t时刻的原平均消费流量做d次差分运算得到的结果,表示预测的下一个时间差时段的平均消费流量;为为第i个任务模块前j个时间差时间段内的平均消费流量;μ为常数项;γi、θi为相关系数;εi和ε
i-j
为误差项,εi和ε
i-j
为均值为0,方差为σ2>0的高斯白噪声,p为自回归阶数,q为移动平均阶数,d为差分的次数。
[0113]
进一步的,所述负载均衡机制的表达式为:
[0114][0115]
式中,wii是第i个任务模块ri最初的权值,wi是第i个任务模块ri当前的权值,其中bi是第i个任务模块ri的线程数,i=1,
…
,n,n表示任务模块总数,wi/wii为定值;
[0116]
根据负载均衡机制的表达式得到:当第i个任务模块ri的实际消费流量li增加时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的增加;当实际消费流量为li降低时,为保持消费平衡状态,第i个任务模块ri的线程数bi需相应的减少;
[0117]
通过所述负载均衡机制的表达式确定对第i个任务模块ri的线程数bi增加或者减少。
[0118]
进一步的,所述第三计算模块,用于
[0119]
根据时间差以及在该时间差内的拉取数据量计算数据消费流量l(k);
[0120]
根据所述消费流量l(k)利用arima时间序列预测模型进行下一时间差时间段的消费流量l(k+1)的预测,得到预测值predl(k+1);
[0121]
获取当前任务模块中的上一时间差时间段的数据堆积数量u(k-1)、单个线程处理数据量的能力capb以及当前任务模块的线程数b(k);
[0122]
若u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间差时间段内堆积量为u
(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;
[0123]
若u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间差时间段消费队列中的数据,则计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0124][0125]
若u(k)+predl(k+1)-capb
×
b(k)≤0,则当前线程数量能够处理队列中的所有数据,计算下一时间差时间段的线程数量b(k+1),计算公式为:
[0126][0127]
round()为四舍五入取整操作函数。
[0128]
实施例3
[0129]
与实施例1基于相同的发明构思,本实施例介绍一种基于电力物联网负反馈机制的性能动态调整系统,该系统将消息处理模块分为数据拉取模块、任务模块和业务系统消息队列三部分,如图2所示。数据拉取模块从电力物联网中终端设备上报数据的消息队列中拉取数据,并在拉取的时候解析该数据写入消息队列时的时间,与处理时间进行时间差计算;数据在任务模块进行处理时,任务模块根据数据拉取模块对该数据计算的写入和处理的时间差以及该任务模块的当前线程数量等数据进行计算,得到该模块基于数据堆积程度所需动态调整的线程数量,以达到性能的动态调整的目的;经过任务模块处理后的数据推送至业务系统消息队列,以供不同的业务系统解析处理。
[0130]
实施例4
[0131]
与其它实施例基于相同的发明构思,本实施例介绍一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行所述的方法中的任一方法。
[0132]
实施例5
[0133]
一种计算机设备,包括,
[0134]
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行所述的方法中的任一方法的指令。
[0135]
如图2和图3所示,在性能动态调整实验中分别使用物联管理平台正常运行时的消息数量时间序列以及平台初始上线时的消息数量时间序列进行实验,通过消息队列中消息堆积数量衡量性能效果。根据试验结果可知通过本发明可以实现电力物联网中海量数据的高效,极大程度地减少消息堆积,降低数据处理延时,提高系统的运行效率。
[0136]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0137]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程
图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0138]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0139]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0140]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
技术特征:
1.一种基于电力物联网负反馈机制的性能动态调整方法,其特征在于,包括:从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的写入消息队列时间;获取该数据的处理时间,根据写入消息队列时间和处理时间计算获得时间差;根据时间差以及在该时间差内处理的数据量计算数据消费流量;将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;根据所述下一时间差时间段的线程数量进行业务数据处理。2.根据权利要求1所述的基于电力物联网负反馈机制的性能动态调整方法,其特征在于,所述时间序列预测模型采用arima时间序列预测模型,表达式为:式中:为为第i个任务模块对t时刻的原平均消费流量做d次差分运算得到的结果,表示预测的下一个时间差时段的平均消费流量;为为第i个任务模块前j个时间差时间段内的平均消费流量;μ为常数项;γ
i
、θ
i
为相关系数;ε
i
和ε
i-j
为误差项,ε
i
和ε
i-j
为均值为0,方差为σ2>0的高斯白噪声,p为自回归阶数,q为移动平均阶数,d为差分的次数。3.根据权利要求1所述的基于电力物联网负反馈机制的性能动态调整方法,其特征在于,所述负载均衡机制的表达式为:式中,wi
i
是第i个任务模块r
i
最初的权值,w
i
是第i个任务模块r
i
当前的权值,其中b
i
是第i个任务模块r
i
的线程数,i=1,
…
,n,n表示任务模块总数,w
i
/wi
i
为定值;根据负载均衡机制的表达式得到:当第i个任务模块r
i
的实际消费流量l
i
增加时,为保持消费平衡状态,第i个任务模块r
i
的线程数b
i
需相应的增加;当实际消费流量为l
i
降低时,为保持消费平衡状态,第i个任务模块r
i
的线程数b
i
需相应的减少;通过所述负载均衡机制的表达式确定对第i个任务模块r
i
的线程数b
i
增加或者减少。4.根据权利要求3所述的基于电力物联网负反馈机制的性能动态调整方法,其特征在于,所述获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量,包括:根据时间差以及在该时间差内的拉取数据量计算数据消费流量l(k);根据所述消费流量l(k)利用arima时间序列预测模型进行下一时间差时间段的消费流
量l(k+1)的预测,得到预测值predl(k+1);获取当前任务模块中的上一时间差时间段的数据堆积数量u(k-1)、单个线程处理数据量的能力capb以及当前任务模块的线程数b(k);若u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间差时间段内堆积量为u(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;若u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间差时间段消费队列中的数据,则计算下一时间差时间段的线程数量b(k+1),计算公式为:若u(k)+predl(k+1)-capb
×
b(k)≤0,则当前线程数量能够处理队列中的所有数据,计算下一时间差时间段的线程数量b(k+1),计算公式为:round()为四舍五入取整操作函数。5.一种基于电力物联网负反馈机制的性能动态调整装置,其特征在于,包括:获取模块,用于从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的写入消息队列时间,获取该数据的处理时间;第一计算模块,用于根据写入消息队列时间和处理时间计算获得时间差;第二计算模块,用于根据时间差以及在该时间差内处理的数据量计算数据消费流量;预测模块,用于将所述数据消费流量输入到预先获取的时间序列预测模型得到下一时间差时间段的数据消费流量预测值;判断模块,用于根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;第三计算模块,用于获取当前任务中的线程数量,根据当前任务中的线程数量以及所述负载情况利用预先设置的自适应动态调整策略计算下一时间差时间段的线程数量;处理模块,用于根据所述下一时间差时间段的线程数量进行业务数据处理。6.根据权利要求5所述的基于电力物联网负反馈机制的性能动态调整装置,其特征在于,所述时间序列预测模型采用arima时间序列预测模型,表达式为:式中:为为第i个任务模块对t时刻的原平均消费流量做d次差分运算得到的结果,表示预测的下一个时间差时段的平均消费流量;为为第i个任务模块前j个时间差时间段内的平均消费流量;μ为常数项;γ
i
、θ
i
为相关系数;ε
i
和ε
i-j
为误差项,ε
i
和ε
i-j
为均值为0,方差为σ2>0的高斯白噪声,p为自回归阶数,q为移动平均阶数,d为差分的次数。7.根据权利要求5所述的基于电力物联网负反馈机制的性能动态调整装置,其特征在于,所述负载均衡机制的表达式为:
式中,wi
i
是第i个任务模块r
i
最初的权值,w
i
是第i个任务模块r
i
当前的权值,其中b
i
是第i个任务模块r
i
的线程数,i=1,
…
,n,n表示任务模块总数,w
i
/wi
i
为定值;根据负载均衡机制的表达式得到:当第i个任务模块r
i
的实际消费流量l
i
增加时,为保持消费平衡状态,第i个任务模块r
i
的线程数b
i
需相应的增加;当实际消费流量为l
i
降低时,为保持消费平衡状态,第i个任务模块r
i
的线程数b
i
需相应的减少;通过所述负载均衡机制的表达式确定对第i个任务模块r
i
的线程数b
i
增加或者减少。8.根据权利要求7所述的基于电力物联网负反馈机制的性能动态调整装置,其特征在于,所述第三计算模块,用于根据时间差以及在该时间差内的拉取数据量计算数据消费流量l(k);根据所述消费流量l(k)利用arima时间序列预测模型进行下一时间差时间段的消费流量l(k+1)的预测,得到预测值predl(k+1);获取当前任务模块中的上一时间差时间段的数据堆积数量u(k-1)、单个线程处理数据量的能力capb以及当前任务模块的线程数b(k);若u(k-1)+l(k)>capb
×
b(k),则数据存在堆积,本次时间差时间段内堆积量为u(k)=u(k-1)+l(k)-capb
×
b(k),否则,数据不存在堆积,本次时间段内堆积量u(k)=0;若u(k)+predl(k+1)-capb
×
b(k)>0,则当前线程数量不足以在下一时间差时间段消费队列中的数据,则计算下一时间差时间段的线程数量b(k+1),计算公式为:若u(k)+predl(k+1)-capb
×
b(k)≤0,则当前线程数量能够处理队列中的所有数据,计算下一时间差时间段的线程数量b(k+1),计算公式为:round()为四舍五入取整操作函数。9.一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据权利要求1至4所述的方法中的任一方法。10.一种计算机设备,其特征在于,包括,一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1至4所述的方法中的任一方法的指令。
技术总结
本发明公开了一种基于电力物联网负反馈机制的性能动态调整方法及系统,从电力物联网中终端设备上报数据的消息队列中拉取数据并解析获得该数据的写入消息队列时间;计算获得时间差;根据时间差以及在该时间差内处理的数据量计算数据消费流量;预测下一时间差时间段的数据消费流量预测值;根据所述数据消费流量预测值以及预先设置的负载均衡机制判断下一时间差时间段的负载情况;计算下一时间差时间段的线程数量;根据所述下一时间差时间段的线程数量进行业务数据处理。优点:本发明结合时间序列预测模型、负载均衡机制以及自适应动态调整策略可以实现电力物联网中海量数据的高效,极大程度地减少消息堆积,降低数据处理延时,提高系统的运行效率。提高系统的运行效率。提高系统的运行效率。
技术研发人员:孟婕 侯继鑫 乔柱 刘庆 王文彬 王晓超 吴子栋 延毓 张浩奇 孙雨楠 刘琛 范迎 于殿君 徐明 赵莹
受保护的技术使用者:国电南瑞科技股份有限公司
技术研发日:2023.03.31
技术公布日:2023/9/22
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种用于碳中和的废气处理装置 下一篇:一种开关柜防凝露装置的制作方法