一种工业分布式数据采集系统中的任务调度方法与流程

文档序号:15444992发布日期:2018-09-14 23:15阅读:269来源:国知局
本发明涉及数据采集
技术领域
,尤其涉及一种工业分布式数据采集系统中的任务调度方法。
背景技术
:随着工业大数据环境的到来,工业过程中数据源日渐多样化、数据规模增大,面对工业大规模高频数据的采集,以及一些新的应用需求,为了保证数据采集的时序性、实时性和可靠性,越来越多的企业开始考虑采用分布式系统来进行工业数据采集。在分布式数据采集系统的设计过程中,任务调度策略是最为关键的环节,它将直接影响分布式系统的性能。好的任务调度方案能够降低采集任务的采集时间,提高系统的采集效率。在分布式环境下,由于各采集节点可以灵活地加入或退出,各采集节点所采集的数据不再对应固定的生产环节,而具有一定的灵活性,由于网络的突发性和不稳定性以及采集节点本身的原因,可能出现某些采集节点故障、过载、采集节点上某个采集数据组或数据项采集失败、采集时间超过设定的采集周期等异常情况,如何根据各个采集节点的资源使用情况进行动态任务调度和迁移,使得异常情况下,各生产环节的数据仍能实现正常采集,且各采集节点间仍保持负载均衡,从而保证采集的可靠性和高效性,并保证迁移的任务量尽可能少,保证任务迁移的单调性,从而尽可能节省任务迁移时的系统开销,是分布式数据采集系统设计亟待解决的一个问题,另外,由于工业上重要生产环节的数据可靠性要求较为严格,有时同一生产环节的不同数据重要程度也不尽相同,对于重要数据的采集任务通常需要进行备份,备份任务只进行采集,不进行存储,仅在主任务采集失败时才进行存储,在分布式环境下,如何在保证主任务合理调度和迁移,满足负载均衡和单调性的前提下,对备份任务也实现合理的调度和迁移,以尽可能保证任务迁移的单调性,同时保证主任务及其对应的备份任务不会迁移至同一个采集节点,是工业数据采集中需要考虑的又一问题。目前在工业分布式数据采集系统任务调度方面的专利主要有专利号为cn105527948a的一种基于工业过程的大规模分布式数据采集系统及方法、专利号为cn201610522950.x的一种大规模分布式数据采集系统及方法、专利号为cn201610736266.1的一种基于工业云的大规模分布式智能数据采集系统及方法、专利号为201610622589.8的基于一致性哈希算法的任务调度机制及系统。专利cn105527948a和专利cn201610522950.x在采集客户端故障时,采用将采集任务重新分配给剩余采集客户端的方式实现任务调度,该调度方案虽然满足了各节点间的负载均衡,但任务的重新分配导致各节点上均有大量任务需要进行迁移,无法满足任务迁移的单调性,任务迁移开销过大,导致资源利用率降低,且上述两个专利所述任务调度方案不够全面,对于采集节点上任务采集失败等情况未给出相应解决方案;专利cn201610736266.1虽然较为全面地给出了采集节点故障、过载、采集任务采集失败、采集时间不满足采集周期要求时的任务调度方案,但对于调度时具体迁移多少任务、迁移哪几个任务未进行详细说明,且该专利所述调度方案未考虑到调度过程各节点负载均衡、任务迁移开销等问题,从而容易影响数据采集的效率和实时性;专利201610622589.8通过将任务和对应执行单元的哈希值映射到同一个哈希环上,按照任务执行次数和选取的查找方向在哈希圆环上建立任务与若干个执行单元的映射关系,当新增、删除执行单元或新增任务时,通过修正映射关系实现动态任务调度,该调度方法能够实现任务迁移的单调性,且能实现任务和执行单元的灵活匹配。上述专利中的技术方案虽然都能实现节点故障的任务调度,但其调度方案仅针对所有任务均为重要任务,均需要备份的场合,或者所有任务都未实现备份的场合,而实际工业生产过程中,并不是所有任务都存在备份,为了提高资源利用率,常常是仅对其中部分重要数据所对应的采集任务进行备份,现有专利中的任务调度方式在这种情况下不适用。技术实现要素:本发明要解决的技术问题是针对上述现有技术的不足,提供一种工业分布式数据采集系统中的任务调度方法,以达到提高工业数据采集系统资源利用率、采集效率和采集可靠性的目的。为解决上述技术问题,本发明所采取的技术方案是:一种工业分布式数据采集系统中的任务调度方法,包括以下步骤:步骤1、建立各采集节点采集资源和采集任务的对应关系,具体过程为:步骤1.1、单独对每个采集节点分配采集任务,改变采集任务个数,测量大量不同采集任务条件下,第i个采集节点上消耗的采集任务个数ti及其采集资源利用率数据ui,以及该采集节点上分配的全部采集任务所需要的采集时间数据timei;步骤1.2、对步骤川所得第i个采集节点上的采集任务数据ti和对应资源消耗数据进行拟合,求得两者的函数关系式步骤2、建立各采集节点采集时间和采集任务以及节点资源利用率的对应关系,对步骤1.1所得采集任务个数ti和对应采集资源利用率数据ui、采集时间数据timei进行拟合,求得第i个采集节点上采集时间数据timei与采集任务个数ti和资源利用率数据ui的函数关系式timei=g(ti,ui);步骤3、建立各采集节点上任务迁移所消耗的资源与迁移任务个数的对应关系;步骤4、建立各采集节点之间任务迁移的通信开销与迁移任务的对应关系;步骤5、确定初始工作的最小采集节点个数并开启对应采集节点,其余采集节点资源作为共享资源备用;步骤6、将初始采集任务和其中部分初始任务中重要任务的冗余任务分配给步骤5确定的各个采集节点;判断是否存在采集节点故障,若是,则执行步骤7;判断是否存在采集节点过载或采集节点上采集时间不满足采集周期要求的情况,若是,则执行步骤8;判断是否存在采集节点上重要采集任务采集失败的情况,若是,则执行步骤9;若上述情况均不存在,则任务调度结束;步骤7、当存在采集节点故障时,进行采集节点故障后任务调度,具体调度方法为:步骤7.1、当前采集周期,将故障采集节点上初始任务中重要任务对应的冗余任务的采集结果从其对应的采集节点存入数据采集系统的数据库;步骤7.2、下一采集周期,从冗余热备的采集节点中寻找和故障采集节点资源剩余情况最相近的节点,作为新加入的采集节点,将故障采集节点上的全部初始任务和冗余任务迁移至新加入的采集节点进行采集;步骤8、当存在采集节点过载或存在采集节点上采集时间不满足采集周期要求时,进行采集节点过载后任务调度,具体调度方法为:步骤8.1、根据步骤1到步骤4的对应关系,建立新加入采集节点个数的优化模型,确定新加入的采集节点个数的最小值m,优化模型如下:minms.ttij×tji=0i=1,2...n;j=1,2...n,j≠i(1-1)其中,timei≤timei=1,2...n(1-7)其中,其中,timej≤timej=n+1,n+2...n+m(1-12)其中,其中,式(1-1)表示若存在任务从节点i迁移到节点j,则不存在任务从节点j迁移到节点i,从而保证任务迁移的单调性,tij表示从第i个节点迁移到第j个节点的任务个数,tji表示从第j个节点迁移到第i个节点的任务个数;式(1-2)表示一个节点不能既迁出任务又迁入任务,n表示新加入节点前工作的采集节点个数;式(1-3)表示任务迁移过程中以及任务迁移完成后初始工作采集节点中第i个采集节点的资源利用率不能超过用户所设置的资源利用率上限,ui0表示初始工作采集节点中第i个节点未分配任务前的资源利用率,ri表示初始工作采集节点中第i个采集节点上配置的可用资源总量,uh表示用户设置的节点资源利用率上限,uw表示用户设置的节点资源利用率阈值带宽,ti表示任务迁移前初始工作采集节点中第i个节点上的采集任务个数,表示任务迁移后初始工作采集节点中第i个节点上采集任务执行所消耗的资源,表示任务迁移后初始工作采集节点中第i个节点上采集任务迁移所消耗的资源,和的取值分别由式(1-4)和式(1-5)确定,具体函数关系由步骤1和步骤3确定;式(1-6)表示任务迁移完成后初始工作采集节点中第i个节点的资源利用率;式(1-7)表示任务迁移后初始工作采集节点中第i个采集节点上执行一次全部采集任务的采集时间timei不能超过用户设定的采集周期time,timei表示任务迁移后初始工作采集节点中第i个节点上执行一次全部采集任务的采集时间,timei的取值由式(1-8)确定,具体函数关系由步骤2确定;式(1-9)表示新加入节点中第j个采集节点的资源利用率不能超过用户所设置的资源利用率上限,uj表示任务迁移完成后新加入节点中第j个节点的资源利用率,uj0表示新加入节点中第j个节点未分配任务前的资源利用率,rj表示新加入节点中第j个采集节点上配置的可用资源总量,表示任务迁移后新加入节点中第j个节点上采集任务执行所消耗的资源,表示任务迁移后新加入节点中第j个节点上采集任务迁移所消耗的资源,和的取值分别由式(1-10)和式(1-11)确定,具体函数关系由步骤1和步骤3确定;式(1-12)表示任务迁移后新加入节点中第j个采集节点上执行一次全部采集任务的采集时间不能超过用户设定的采集周期time,timej表示任务迁移后新加入节点中第j个节点上执行一次全部采集任务的采集时间,timej的取值由式(1-13)确定,具体函数关系由步骤2确定;步骤8.2、求解步骤8.1中的优化模型,求得新加入的最小采集节点个数,并从冗余热备的采集节点中选择相应个数的采集节点,加入采集工作;步骤8.3、建立采集节点任务迁移优化模型,模型如下:其中,s.ttij×tji=0i=1,2...n;j=1,2...n,j≠i(1-18)其中,timei≤timei=1,2...n(1-23)其中,其中,timej≤timej=n+1,n+2...n+m(1-27)其中,其中,其中,式(1-14)表示最小化任务迁移过程中各节点的资源和通信开销以及任务迁移完成后各采集节点间的负载差的和δu,p(tij)表示节点i和节点j之间任务迁移的通信开销,具体函数关系由步骤4确定,δu表示任务迁移完成后各采集节点间的负载差的和,其取值由式(1-17)确定;式(1-29)表示第i个节点迁移到第j个节点的任务个数等于第i个节点迁移到第j个节点的初始任务个数与冗余任务个数之和,taskk,i,j表示从第i个节点迁移到第j个节点编号为k的初始任务,表示从第i个节点迁移到第j个节点编号为l的冗余任务;式(1-30)表示taskk,i,j的取值,当编号为k的初始任务位于第i个节点上,其对应的冗余任务不位于第j个节点上,且需要将其迁移至第j个节点时,taskk,i,j=1,否则taskk,i,j=0,taski表示任务迁移前第i个采集节点上的采集任务序号集合,taskj表示任务迁移前第j个采集节点上的采集任务序号集合,taskij表示第i个采集节点迁移到第j个采集节点的任务序号集合;式(1-31)表示的取值,当编号为l的冗余任务位于第i个节点上,其对应的冗余任务不位于第j个节点上,且需要将其迁移至第j个节点时,否则步骤8.4、求解步骤8.3中的优化模型,得到第i个采集节点迁移到第j个采集节点的任务序号集合taskij;步骤8.5、按照步骤8.4所得结果进行采集节点间的任务迁移;步骤9、当存在采集节点上重要采集任务采集失败时,将其对应的冗余任务的采集结果从对应的采集节点上存入数据采集系统的数据库。采用上述技术方案所产生的有益效果在于:本发明提供的工业分布式数据采集系统中的任务调度方法,综合考虑采集节点资源利用率、采集效率、负载均衡、采集可靠性、异构采集节点、节点间动态任务迁移的资源和通信开销等多重因素,建立一系列基于仿真的优化模型,实现了工业分布式数据采集系统中采集节点故障、过载、采集时间大于采集周期、部分采集任务采集失败后,既包含1∶1冗余任务又包含非冗余任务的任务动态调度问题,满足了工业大数据环境下工业分布式数据采集对采集实时性、可靠性、资源有效利用等的需求。附图说明图1为本发明实施例提供的工业分布式数据采集系统中的任务调度方法流程图。具体实施方式下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。本实施例中,共设置4个采集节点,分别编号为1、2、3、4。4个采集节点的内存配置情况分别为4g、8g、4g、16g,初始分配时刻,4个采集节点的资源利用率分别为10%、15%、13%、27%。本实施例中,设置f1-f35这35个初始采集任务,分别对应f1-f35这35台风机上数据的采集,每个采集任务包含404个采集数据项,其中singlefloat型数据31个、doublefloat型数据52个、boolean型数据319个、unsignedinteger型数据2个。其中f11-f22为重要任务,需要进行冗余。对f1-f35这35个任务分别编号为1-35,f11-f22的冗余任务编号分别为11*,12*,13*,14*,15*,16*,17*,18*,19*,20*,21*,22*。本实施例的一种工业分布式数据采集系统中的任务调度方法,如图1所示,具体方法如下所述。步骤1、建立各采集节点采集资源与采集任务的对应关系。步骤1.1、单独对每个采集节点分配采集任务,改变采集任务个数,测量采集大量不同个数的采集任务时,第i个采集节点上消耗的采集任务个数ti及其采集资源利用率数据ui,以及该采集节点上分配的全部采集任务所需要的采集时间数据timei;本实施例中,所述的采集资源数据指的是内存资源。本实施例中,分别对1、2、3、4号采集节点分配采集任务,测量采集不同个数的采集任务时所消耗的内存资源及其内存使用率和采集时间,测量得到的数据分别如表1、表2、表3,表4所示。表11号采集节点采集任务个数、内存使用率及采集时间数据采集任务个数123456消耗内存资源(g)0.190.370.550.760.971.15内存使用率(%)14.7519.2523.752934.2538.75采集时间(ms)305330357390427469采集任务个数789101112消耗内存资源(g)1.331.531.721.912.112.29内存使用率(%)43.2548.255357.2562.7567.25采集时间(ms)508559607661728788表22号采集节点采集任务个数、内存使用率及采集时间数据表33号采集节点采集任务个数、内存使用率及采集时间数据采集任务个数123456消耗内存资源(g)0.180.380.590.770.981.17内存使用率(%)17.522.527.7532.2537.542.25采集时间(ms)319346380415454498采集任务个数789101112消耗内存资源(g)1.341.521.721.882.092.27内存使用率(%)46.551566065.2569.75采集时间(ms)539589647694763824表44号采集节点采集任务个数、内存使用率及采集时间数据步骤1.2、对步骤1.1所得第i个采集节点上的采集任务数据ti和对应资源消耗数据进行拟合,求得和ti的函数关系式本实施例中,拟合得到的1号采集节点和t1的函数关系式为2号采集节点和t2的函数关系式为3号采集节点和t3的函数关系式为3号采集节点和t4的函数关系式为步骤2、建立各采集节点采集时间与采集不同个数采集任务所对应的资源利用率的对应关系,对步骤1.1所得各节点上采集ti个采集任务所对应的采集资源利用率ui、采集时间timei进行拟合,求得第i个采集节点上采集时间timei与该节点上采集ti个采集任务所对应的采集资源利用率ui的函数关系式timei=g(ui)。本实施例中,采用最小二乘法对步骤1.1所得数据进行拟合,拟合得到的1号采集节点time1和u1的函数关系式为time1=0.0869u12+2.0390u1+257.6073,2号采集节点time2和u2的函数关系式为time2=0.1370u22-0.2669u2+161.6201,3号采集节点time3和u3的函数关系式为time3=0.0880u32+2.0146u3+256.5218,4号采集节点time4和u4的函数关系式为time4=0.3159u42-10.3928u4+190.3659。步骤3、建立各采集节点上任务迁移所消耗的资源与迁移任务个数的对应关系。本实施例中,由于各节点之间迁移任务的资源开销相较于任务执行的资源开销来说十分小,可忽略不计。步骤4、建立各采集节点之间任务迁移的通信开销与迁移任务个数的对应关系。本实施例中,由于各节点间采用光纤通信,任务迁移的通信开销十分小,可忽略不计。步骤5、确定初始工作的最小采集节点个数并开启对应采集节点,其余采集节点资源作为共享资源备用。本实施例中,初始工作的采集节点个数为2个,分别为3号和4号采集节点,1号和2号采集节点作为共享资源备用。共享资源备用的目的是节约数据采集的服务器资源,提高整个资源利用率,当采集任务发生变化或者需要增加资源的时候,再向系统提出资源申请。步骤6、将初始采集任务和其中部分初始任务中重要任务的冗余任务分配给步骤5确定的各个采集节点。本实施例中,分配给3号采集节点的任务集合为{11-16,17*-22*},分配给4号采集节点的任务集合为{1-10,11*-16*,17-35}。步骤7、当存在采集节点故障时,进行采集节点故障后任务调度。本实施例中,假设3号采集节点故障,则采集节点故障后的任务调度方法如下。步骤7.1、当前采集周期,将故障采集节点上初始任务中重要任务对应的冗余任务的采集结果从其对应的采集节点存入数据采集系统的数据库;视数据采集系统自带的数据库类型而定,可以是sqlserver数据库或hbase数据库等;本实施例中,在故障当前采集周期,将3号采集节点上的11-16号采集任务对应的冗余任务,即11*-16*号采集任务从4号采集节点存入数据库;步骤7.2、下一采集周期,从冗余热备的采集节点中寻找和故障采集节点资源剩余情况最相近的节点,作为新加入的采集节点,将故障采集节点上的全部初始任务和冗余任务迁移至新加入的采集节点进行采集;本实施例中,在故障后下一采集周期,从1号和2号采集节点中选择与故障的3号采集节点资源剩余情况相近的1号采集节点作为新加入的采集节点,将3号采集节点上的全部初始任务{11-16}和冗余任务{17*-22*}迁移至1号采集节点进行采集。步骤8、当存在采集节点过载或存在采集节点上采集时间不满足采集周期要求时,进行采集节点过载后任务调度;本实施例中,假设3号采集节点过载,则采集节点过载后任务调度方法如下。步骤8.1、根据步骤1到步骤4的仿真结果,建立新加入采集节点个数的优化模型,确定新加入的采集节点个数的最小值m,优化模型如下:minms.ttij×tji=0i=1,2...n;j=1,2...n,j≠i(1-1)其中,timei≤timei=1,2...n(1-7)其中,其中,timej≤timej=n+1,n+2...n+m(1-12)其中,其中,式(1-1)表示若存在任务从节点i迁移到节点j,则不存在任务从节点j迁移到节点i,从而保证任务迁移的单调性,tij表示从第i个节点迁移到第j个节点的任务个数,tji表示从第j个节点迁移到第i个节点的任务个数;式(1-2)表示一个节点不能既迁出任务又迁入任务,n表示新加入节点前工作的采集节点个数;式(1-3)表示任务迁移过程中以及任务迁移完成后初始工作采集节点中第i个采集节点的资源利用率不能超过用户所设置的资源利用率上限,ui0表示初始工作采集节点中第i个节点未分配任务前的资源利用率,ri表示初始工作采集节点中第i个采集节点上配置的可用资源总量,uh表示用户设置的节点资源利用率上限,uw表示用户设置的节点资源利用率阈值带宽,ti表示任务迁移前初始工作采集节点中第i个节点上的采集任务个数,表示任务迁移后初始工作采集节点中第i个节点上采集任务执行所消耗的资源,表示初始工作采集节点中第i个节点上采集任务迁移所消耗的资源,和的取值分别由式(1-4)和式(1-5)确定,具体函数关系由步骤1和步骤3确定;式(1-6)表示任务迁移完成后初始工作采集节点中第i个节点的资源利用率;式(1-7)表示任务迁移后初始工作采集节点中第i个采集节点上执行一次全部采集任务的采集时间不能超过用户设定的采集周期time,timei表示任务迁移后初始工作采集节点中第i个节点上执行一次全部采集任务的采集时间,timei的取值由式(1-8)确定,具体函数关系由步骤2确定;式(1-9)表示新加入节点中第j个采集节点的资源利用率不能超过用户所设置的资源利用率上限,uj表示任务迁移完成后新加入节点中第j个节点的资源利用率,uj0表示新加入节点中第j个节点未分配任务前的资源利用率,rj表示新加入节点中第j个采集节点上配置的可用资源总量,表示任务迁移后新加入节点中第j个节点上采集任务执行所消耗的资源,表示新加入节点中第j个节点上采集任务迁移所消耗的资源,和的取值分别由式(1-10)和式(1-11)确定,具体函数关系由步骤1和步骤3确定;式(1-12)表示任务迁移后新加入节点中第j个采集节点上执行一次全部采集任务的采集时间不能超过用户设定的采集周期time,timej表示任务迁移后新加入节点中第j个节点上执行一次全部采集任务的采集时间,timej的取值由式(1-13)确定,具体函数关系由步骤2确定;本实施例中,r1=4g,r2=8g,r3=4g,r4=16g,uh=80%,uw=5%,u10=10%,u20=15%,u30=13%,u40=27%,time=1000ms,m=47,则优化模型具体为:minms.tt43×t34=0(2-1)其中,其中,time3≤1000(2-10)其中,time3=0.0880u32+2.0146u3+256.5218(2-11)time4≤1000(2-12)其中,time4=0.3159u42-10.3928u4+190.3659(2-13)其中,其中,time1≤1000(2-18)其中,time1=0.0869u12+2.0390u1+257.6073(2-19)time2≤1000(2-20)其中,time2=0.1370u22-0.2669u2+161.6201(2-21)步骤8.2、求解步骤8.1中的优化模型,求得新加入的最小采集节点个数,并从冗余热备的采集节点中选择相应的采集节点,加入采集工作;本实施例中,求解所得的最小采集节点个数为1,选择的新加入的采集节点为1号采集节点;步骤8.3、建立采集节点任务迁移优化模型,模型如下:其中,s.ttij×tji=0i=1,2...n;j=1,2...n,j≠i(1-18)其中,timej≤timei=1,2...n(1-23)其中,其中,timej≤timej=n+1,n+2...n+m(1-27)其中,其中,其中,式(1-14)表示最小化任务迁移过程中各节点的资源和通信开销以及任务迁移完成后各采集节点间的负载差的和δu,表示任务迁移后初始工作采集节点中第i个节点上采集任务迁移所消耗的资源,表示任务迁移后新加入节点中第j个节点上采集任务迁移所消耗的资源,和的取值分别由式(1-15)和式(1-16)确定,具体函数关系由步骤3确定,p(tii)表示节点i和节点j之间任务迁移的通信开销,具体函数关系由步骤4确定,δu表示任务迁移完成后各采集节点间的负载差的和,其取值由式(1-17)确定;式(1-18)表示若存在任务从节点i迁移到节点j,则不存在任务从节点j迁移到节点i,从而保证任务迁移的单调性,tij表示从第i个节点迁移到第j个节点的任务个数,tji表示从第j个节点迁移到第i个节点的任务个数;式(1-19)表示一个节点不能既迁出任务又迁入任务,n表示新加入节点前工作的采集节点个数;式(1-20)表示任务迁移过程中以及任务迁移完成后初始工作采集节点中第i个采集节点的资源利用率均不能超过用户所设置的资源利用率上限,ui0表示初始工作采集节点中第i个节点未分配任务前的资源利用率,ri表示初始工作采集节点中第i个采集节点上配置的可用资源总量,uh表示用户设置的节点资源利用率上限,uw表示用户设置的节点资源利用率阈值带宽,ti表示任务迁移前初始工作采集节点中第i个节点上的采集任务个数,表示任务迁移后初始工作采集节点中第i个节点上采集任务执行所消耗的资源,的取值由式(1-21)确定,具体函数关系由步骤1确定;式(1-22)表示任务迁移后初始工作采集节点中第i个节点的资源利用率;式(1-23)表示任务迁移后初始工作采集节点中第i个采集节点上执行一次全部采集任务的采集时间timei不能超过用户设定的采集周期time,timei的取值由式(1-24)确定,具体函数关系由步骤2确定;式(1-25)表示新加入节点中第j个采集节点的资源利用率不能超过用户所设置的资源利用率上限,uj表示任务迁移完成后新加入节点中第j个节点的资源利用率,uj0表示新加入节点中第j个节点未分配任务前资源利用率,rj表示新加入节点中第j个采集节点上配置的可用资源总量,表示任务迁移后新加入节点中第j个节点上采集任务执行所消耗的资源,的取值由式(1-26)确定,具体函数关系由步骤1确定;式(1-27)表示任务迁移后新加入节点中第j个采集节点上执行一次全部采集任务的采集时间timej不能超过用户设定的采集周期time,timej的取值由式(1-28)确定,具体函数关系由步骤2确定;式(1-29)表示第i个节点迁移到第j个节点的任务个数等于第i个节点迁移到第j个节点的初始任务个数与冗余任务个数之和,taskk,i,j表示从第i个节点迁移到第j个节点编号为k的初始任务,表示从第i个节点迁移到第j个节点编号为l的冗余任务;式(1-30)表示taskk,i,j的取值,当编号为k的初始任务位于第i个节点上,其对应的冗余任务不位于第j个节点上,且需要将其迁移至第j个节点时,taskk,i,j=1,否则taskk,i,j=0,taski表示任务迁移前第i个采集节点上的采集任务序号集合,taskj表示任务迁移前第j个采集节点上的采集任务序号集合,taskij表示第i个采集节点迁移到第j个采集节点的任务序号集合;式(1-31)表示的取值,当编号为l的冗余任务位于第i个节点上,其对应的冗余任务不位于第j个节点上,且需要将其迁移至第j个节点时,否则本实施例中,优化模型如下:mincost=δu(2-22)其中,s.tt43×t34=0(2-24)(t31+t34)×t43=0(2-25)(t41+t43)×t34=0(2-26)其中,其中,time3≤1000(2-33)其中,time3=0.0880u32+2.0146u3+256.5218(2-34)time4≤1000(2-35)其中,time4=0.3159u42-10.3928u4+190.3659(2-36)其中,time1≤1000(2-39)其中,time1=0.0869u12+2.0390u1+257.6073(2-40)其中,步骤8.4、求解步骤8.3中的优化模型,得到第i个采集节点迁移到第j个采集节点的任务序号集合taskij;本实施例中,求解所得的一种可行迁移方案为:第3号采集节点迁移到第1号采集节点的任务序号集合task31={11,12},第4号采集节点迁移到第1号采集节点的任务序号集合task41={1,2,3,4,5,6,7,8};步骤8.5、按照步骤8.4所得结果进行采集节点间的任务迁移。本实施例中,按照步骤8.4所得结果,将3号采集节点上的11、12号采集任务迁移至新加入的1号采集节点,将4号采集节点上的1-8号采集任务迁移至新加入的1号采集节点。步骤9、当存在采集节点上重要采集任务采集失败时,将其对应的冗余任务的采集结果从对应的采集节点上存入数据库;本实施例中,假设3号采集节点上的11号采集任务采集失败,将其对应的冗余任务11*从4号采集节点存入数据库。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1