CN117009057A - 一种基于动态价值的并发事务调度方法 - Google Patents
一种基于动态价值的并发事务调度方法 Download PDFInfo
- Publication number
- CN117009057A CN117009057A CN202310981024.9A CN202310981024A CN117009057A CN 117009057 A CN117009057 A CN 117009057A CN 202310981024 A CN202310981024 A CN 202310981024A CN 117009057 A CN117009057 A CN 117009057A
- Authority
- CN
- China
- Prior art keywords
- transaction
- value
- particle
- dynamic value
- scheduling
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000002245 particle Substances 0.000 claims abstract description 89
- 238000005265 energy consumption Methods 0.000 claims abstract description 43
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims abstract description 12
- 230000006870 function Effects 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 8
- 230000001133 acceleration Effects 0.000 claims description 5
- 238000013468 resource allocation Methods 0.000 abstract description 3
- 230000004044 response Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 239000002253 acid Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013209 evaluation strategy Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于动态价值的并发事务调度方法,其步骤包括:1)估算每个事务的当前的动态价值F,所述动态价值F包括完成时间动态价值W1、资源利用率动态价值W2和能耗动态价值W3;2)根据各事务的当前的动态价值F,确定各事务的执行顺序;其中每个粒子的位置都表示一组候选的并发事务组合,利用粒子群算法确定各事务的执行顺序;3)根据事务的执行顺序进行事务调度,并在每个事务执行完成后更新未执行事务的当前的动态价值F。本发明充分考虑了任务动态价值的相关特征参数并分析事务未来的价值趋势,通过矩阵模拟事务并发调度的序列,确定事务的全局最优调度顺序,更好地适应数据库的并发访问,确保了资源分配及负载均衡。
Description
技术领域
本发明属于计算机软件技术领域,涉及一种基于动态价值的并发事务调度方法。
背景技术
数据库的事务是访问并操作其中各种数据的数据库操作集合,包含了事务开始到结束所执行的全部操作。事务是并发控制的基本单位,多个事务的并发操作可能会破坏事务的ACID特性,为了保证事务的隔离性和一致性,数据库管理系统(DBMS,DatabaseManagement System)必须对并发操作进行正确调度,一个高效且负载均衡的并发事务调度方法已成为重要的研究课题之一。
传统的并发事务调度方法有很多算法,EDV调度方法(Earliest Due DateValue):根据事务的截止日期对事务进行排序,优先处理最早截止日期的事务,EDF调度方法(Earliest Deadline First):根据事务的截止时间减去当前时间的剩余时间对事务进行排序,优先处理剩余时间最短的事务。HVF调度方法(Highest Value First):根据事务的价值对事务进行排序,优先处理价值最高的事务。但以上调度方法均只考虑了单一目标属性评估事务的优先性,忽略了事务重要性及其他属性的同时,只考虑了局部最优,同时未考虑到事务价值下一时刻的动态变化对此时并发调度的影响,不能保证整体调度价值的最大化,可能导致紧急程度高的事务被延迟,这些事务无法得到有效的执行调度。
装备在应用过程中,会产生大量实时数据查询、存储等操作,如导航应用中航路点、导航预设参数、飞行计划等数据的实时查询,或故障诊断系统中传感器数据的存储、异常监测数据响应等数据操作,大量的并发操作会带来数据库中数据的冲突、数据并发访问效率低等问题,导致数据可靠性和数据响应时效性低。事务的并发调度是解决该问题的关键方法,传统的并发调度方法未考虑到多目标下事务属性价值的动态变化及调度序列周期内的价值变化趋势,未充分考虑事务的关键程度,可能导致调度顺序不合理,从而影响数据库资源分配不均,导致响应时间延长,系统效率下降。
发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种基于动态价值的并发事务调度方法。本方法能够基于多个事务属性目标动态变化的价值对并发事务进行调度,通过考虑影响事务优先级的多个目标属性,结合动态变化的价值趋势,探索整个搜索空间寻找更优的事务,通过自适应权重及PSO算法等技术,有效地处理多目标动态价值调度问题,寻找数据库中并发事务调度最合适的调度序列,保证紧急事务得到实现的同时,更好地适应不同的负载情况,提高数据库系统的灵活性和适应性。
本方法是首次采用基于动态价值的多目标调度方法进行数据库并发事务处理,现有技术大多是通过根据事务的价值对事务进行排序,优先处理价值最高的事务的方式解决并发的问题,而忽略了动态价值,或仅考虑了事务的单一目标属性,忽略了事务重要性及其他属性,只考虑了局部最优,可能导致紧急程度高的事务被延迟或无法得到有效的执行调度。而通过基于动态价值的多目标调度算法解决调度的问题,该方法具有适应性强、多目标优化、动态价值趋势分析等优点,可以更好地应用于并发调度问题的解决。
本发明在对动态价值进行调度时,采样粒子群算法,并充分考虑了动态价值的相关特征参数,通过适应度函数优化事务完成时间、资源利用率、能耗等进行优化平衡找到最优解,并分析事务未来的价值趋势,通过矩阵模拟事务并发调度的序列,确定事务的全局最优调度顺序,更好地适应数据库的并发访问,确保了复杂并发事务下有效的资源分配及负载均衡,是现有技术中没有充分考虑过的。
本发明的技术方案为:
一种基于动态价值的并发事务调度方法,其步骤包括:
1)估算每个事务的当前的动态价值F,所述动态价值F包括完成时间动态价值W1、资源利用率动态价值W2和能耗动态价值W3;
2)根据各事务的当前的动态价值F,确定各事务的执行顺序;其中每个粒子的位置表示一组候选的并发事务组合,利用粒子群算法确定各事务的执行顺序,其方法为:
21)初始化粒子群,随机生成每一粒子的初始位置和速度;Xij表示第i个粒子在第j个维度上的位置,vij表示第i个粒子在第j个维度上的速度;粒子群包括N个粒子;
22)将事务的当前的动态价值F作为粒子群算法的优化目标,将事务随时间t而不断变化的预估完成时间、资源利用率及能耗确定适应度函数;
23)第k轮迭代时,保存t时刻每个粒子的最优解和粒子群的群体最优解,并根据第k轮迭代结果得到一最优调度序列;以及根据事务的预估完成时间、资源利用率和能耗,通过线性插值法求解适应度函数从事务的初始时刻至事务的预估完成时刻T的事务价值序列,预测事务在全局范围内未来价值趋势Fs(t);设置矩阵At,用于维护由粒子群算法所得到的并发事务所组成的并发事务调度序列,用0、1分别表示并发事务的调度选择,其中如果第i个事务为并发时间内的最优价值事务则其在矩阵At中对应的元素取值为1,否则为0,所有1组成的序列代表周期内的最优调度序列;通过粒子群迭代不断的优化矩阵At,使得整个并发调度过程事务总体价值全局最优;对每个事务执行的次数进行缓存,在时间片内的约束内,每一事务的执行次数不超过最大阈值K;FAt(t)代表在t时刻的事务总体价值,在时间T内,通过全局最大化获得不同事务组合序列最优的价值,得到第k轮迭代的全局最优调度序列;
24)第k+1轮迭代时,根据前k轮迭代的计算结果得到每一粒子的粒子历史最优解和粒子群历史最优解;并更新t+1时刻每个粒子的位置和速度;
25)当达到设定条件时停止迭代,输出全局最优调度序列作为各事务的执行顺序;
3)根据事务的执行顺序进行事务调度,并在每个事务执行完成后更新未执行事务的当前的动态价值F。
进一步的,所述完成时间动态价值W1=(1-(事务完成时间-最早完成时间)/(最晚完成时间-最早完成时间))*事务基础价值;资源利用率动态价值W2=(1-(事务所需资源量-可用资源量)/事务所需资源量)*事务基础价值;所述能耗动态价值W3=(1-(事务能耗-最小能耗)/(最大能耗-最小能耗))*事务基础价值。
进一步的,所述事务的动态价值F=α*(1/W1)+β*W2+γ*(1/W3);其中,α、β、γ分别为各因素的权重。
进一步的,粒子的速度更新公式为 粒子的位置更新公式为/>其中,/>表示粒子i在t时刻的速度,/>表示粒子i在t+1时刻的速度,/>表示粒子i在t时刻的位置,/>表示粒子i在t+1时刻的位置,w为惯性权重,c1、c2为加速常量学习因子,r1、r2为随机数。
进一步的,c1、c2为0到2之间的加速常量学习因子,r1、r2为0到1之间的随机数;c1表示每个事务相对该事务的历史最优价值的权重,c2表示每个事务相对整个群体历史最优价值的权重。
一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上述方法中各步骤的指令。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明的优点如下:
本方法提出了一种基于动态价值的多目标调度方法(Dynamic Value Multi-Objective Scheduling,DVMOS),旨在解决并发事务的竞争和资源限制下的调度问题。在多目标调度方面,本发明根据事务的关键属性,评估多个目标以确定事务的关键程度。在动态价值方面,本发明考虑到了事务价值的动态变化以及动态价值的变化趋势对这一时刻并发调度的影响,并通过适应度函数进行动态优化,不断的调整并发调度顺序。DVMOS能够有效地处理多目标动态价值调度问题,通过粒子群的更新迭代,寻找数据库中并发事务调度全局最优的调度序列,使得并发事务得到充分有效的执行调度,更好地适应不同的负载情况,提高数据库系统的并发性和适应性。
附图说明
图1为本发明基于动态价值的并发事务调度方法流程图。
图2为动态价值多目标评估架构图
图3为多目标评估方法示意图。
具体实施方式
下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
在许多现实的应用中,不同的事务具有不同的价值或不同的关键程度。价值或者价值函数的概念已经用于一般的实时系统中,如基于价值的事务调度、综合价值与截止期的事务调度算法等。本专利提供了一种基于动态价值的多目标调度方法(Dynamic Value-based Multi-Objective Scheduling,DVMOS),其目的是通过多目标优化后的事务动态价值及未来的价值趋势调整并发事务的调度顺序,从而提高系统的响应能力及性能。
基于动态价值的多目标调度方法(DVMOS)是一种用于解决动态平衡价值多目标调度问题的方法,通过对事务关键属性的动态价值进行计算,采用pso算法实现对多个目标的优化,寻找空间范围内的最优解,该算法考虑多个目标,并根据这些目标之间的权衡进行事务调度。
具体实现步骤如下:
步骤一:定义事务的动态价值:事务的动态价值反映了它对系统的贡献及影响程度,其对系统吞吐量和响应时间的影响,主要包括事务完成时间、事务需要占用的资源以及资源利用率等。事务的合理调度和资源管理能够最大化地利用系统资源,提高系统的吞吐量和效率。事务的执行时间和效率直接关系到系统的响应时间和性能。通过优化事务的执行过程、减少事务的等待时间和延迟,可以提高系统的响应速度和用户体验。
(1)确定事务的优化目标,事务的完成时间、资源利用率、能耗。完成时间、资源利用率、能耗在并发调度中的动态变化是影响调度的关键因素。
W1:事务完成时间的动态价值`
W2:事务资源利用率的动态价值
W3:事务能耗的动态价值
步骤二:计算事务的动态价值:根据定义好的动态价值计算公式,计算每个事务的动态价值,动态价值基于多个因素进行计算,根据计算结果,将事务排序,确定执行顺序。在并发调度中,事务的动态价值是通过对完成时间、资源利用率和能耗的动态变化进行评估得出的。完成时间不一定需要等到事务执行完才能得到,可以采用不同的评估策略,例如:完成时间的动态变化可以通过监控任务的执行进度和剩余工作量来估计。根据事务的实际执行情况,可以对事务的完成时间进行实时更新和调整。这样可以更准确地评估事务的价值,并在需要的情况下做出调度优化。
(1)对于每个事务,计算其当前的动态价值。动态价值是根据事务的实时状态和所处的环境来计算的。
事务完成时间:完成事务所需的时间越短,其价值就越高,其中,最早完成时间和最晚完成时间分别表示事务的最早和最晚截止日期。可以采用以下公式计算事务完成时间的动态价值:
CompletTime 事务预估完成时间
EarCompletTime 最早完成时间
LateCompletTime 最晚完成时间
Value 事务基础价值
完成时间动态价值W1=(1-(事务完成时间-最早完成时间)/(最晚完成时间-最早完成时间))*事务基础价值,即:
资源利用率:资源利用率指的是事务完成所需的资源与可用资源之间的比率,资源利用率越高,其价值越高,其中,可用资源量表示当前可用的资源量,事务所需资源量表示完成事务所需的总资源量。可以采用以下公式计算事务的资源利用率动态价值:
ResourceRequired:事务预估所需资源量
AvailableRequired:可用资源量
Value:事务基础价值
基础价值Value可以根据事务的重要性、价值评估标准、业务需求等因素进行设定;基础价值可以是一个固定的数值,也可以是一个范围或权重,具体取决于事务价值的度量方式和需求。
资源利用率动态价值W2=(1-(事务所需资源量-可用资源量)/事务所需资源量)*事务基础价值,即
能耗:能耗指的是事务完成所需的能量,能耗越低,其价值越高,其中,最小能耗和最大能耗分别表示事务能耗的最小值和最大值。可以采用以下公式计算事务的能耗动态价值:
TaskConsumption:事务预估能耗
MaxConsumption:最大能耗
MinConsumption:最小能耗
Value:事务基础价值
可以通过对事务执行过程中能量消耗的监测和分析来获取任务能耗的实际值;最小能耗可以是事务在最佳情况下(如使用最优算法或最节能的配置)所需的能耗值;最大能耗可以是任务在最差情况下(如使用最低效算法或最消耗能量的配置)可能达到的能耗值。
能耗动态价值W3=(1-(事务能耗-最小能耗)/(最大能耗-最小能耗))*事务基础价值,即
动态价值计算公式,可以采用加权平均法:
事务的动态价值F=α*(1/W1)+β*W2+γ*(1/W3),即:
W1:完成时间动态价值、W2:资源利用率动态价值、W3:能耗动态价值,其中α、β、γ分别为各因素的权重。
步骤三:确定事务执行顺序:根据事务的动态价值,选择合适的执行顺序,动态价值较高的事务应该优先执行,这样可以最大程度地提高系统的性能。因此,调度器应该根据事务的动态价值选择合适的执行顺序,以便让系统达到最佳的性能水平。
(1)根据事务的动态价值和优化目标,进行事务调度。DVMOS算法采用多目标优化的方式,可以采用粒子群算法优化算法来实现事务调度。每个事务都有一个动态价值,这个价值会根据事务在调度过程中的执行情况而变化。动态调整事务的完成时间和资源分配及能耗,以形成最大化事务动态价值。
粒子群算法(Particle Swarm Optimization,PSO):粒子群算法是一种群体智能算法,通过模拟鸟群寻找食物的过程来优化问题。在DVMOS中,粒子代表多样化的求解空间,利用粒子群算法来确定多目标调度的最优解,通过适应度函数优化事务的执行时间、资源利用率以及功耗之间的平衡,粒子在搜索空间中的迭代移动来寻找全局最优解,以确定最终的事务调度顺序。根据多目标并发事务调度对传统粒子群算法进行调整,包括适应度计算、粒子历史最优位置和整个粒子群历史最优位置;其中适应度函数的计算是根据动态价值的影响因素进行计算的,多目标的调度是由At序列矩阵进行维护的,通过全局最大获得不同并发事务序列的最优价值,进而对事务进行调度排序。
1)初始化粒子群
随机生成初始位置和速度:
对于第i个粒子,其初始位置和速度分别为:
Xij=[Xi1,Xi2,...,Xin];i=1,2,...,N
vij=[vi1,vi2,.....,vin];i=1,2,...,N
其中n表示问题的维度即为N维的目标搜索空间,Xij表示第i个粒子在第j个维度上的位置,vij表示第i个粒子在第j个维度上的速度。一般情况下,由N个粒子组成一个粒子群,在该方法中事务的优化目标为完成时间、资源利用率、能耗,因此j≤3。Xij和vij是在搜索空间内进行均匀分布的随机抽样得到的。
2)适应度计算
该方法的优化目标是由用户定义的随时间t而不断变化的完成时间、资源利用率及能耗,适应度函数由优化目标确定。
适应度函数F=α*(1/完成时间W1)+β*资源利用率W2+γ*(1/能耗W3)
即:
Fi(t)表示事务粒子i在t时刻的适应度函数计算公式,W1(t)i,W2(t)i,W3(t)i分别表示事务粒子i在t时刻的优化目标,其中α+β+γ=1,α∈[0,1],β∈[0,1],γ∈[0,1]。每个粒子保存个体最优解,即适应度函数值最小的位置,同时整个粒子群应该保存群体最优解,即所有粒子个体最优解中适应度函数值最小的位置,这些最优解可以在算法迭代过程中更新,找出全局最优的调度序列。
同时,将事务的完成时间、资源利用率和能耗作为输入,通过线性插值法求解适应度函数初始时刻至完成时刻的事务价值序列,输出函数的预测值,预测事务在全局范围内未来价值趋势Fs(t)。
3)粒子历史最优位置和整个粒子群历史最优位置
设置At矩阵,At矩阵不断维护由粒子群算法所得到的并发事务组成并发事务调度序列,用0、1分别表示并发事务的调度选择,其中1代表第i个事务的个体最优即为并发时间内的最优价值事务,0代表此事务并非被选择的最优并发调度事务,所有1组成的序列代表周期内的最优调度序列。通过粒子群迭代不断的优化At序列,使得整个并发调度过程事务总体价值全局最优。对每个事务执行的次数进行缓存,在时间片的约束内,该事务的执行次数不超过最大阈值K。
FAt(t)代表在t时刻的价值,在时间T内,由于事务的价值是动态变化的,在求解空间内,通过全局最大化获得不同事务组合序列最优的价值,即全局最优而非个体事务价值最优,从而对事务进行调度。
Pbestij=[Pbest1j,Pbest2j,…,Pbestnj]
gbestij=[gbest1j,gbest2j,…,gbestnj]
其中,i=1,2,…,n,Pbestij表示第i个粒子在维度j的空间里的个体最优解,gbestij表示整个粒子群里的群体粒子最优解。Pbestij和gbestij都是在搜索空间内的一个点,其值可以是适应度函数值最小的位置。在迭代过程中,需要不断更新Pbestij和gbestij。
4)粒子群迭代更新
PSO的粒子表示一个调度方案,通过不断更新粒子的位置和速度来优化适应度函数。
速度更新公式:
位置更新公式:
其中,和/>分别表示事务粒子i在j维空间t时的速度和位置,其中,/>表示事务粒子i在j维空间下一个时间步t+1时的位置,逐步寻找最优价值的事务粒子,w为惯性权重,c1和c2为0到2之间的加速常量学习因子,表示每个事务相对历史最优价值和整个群体历史最优价值的权重,r1和r2为0到1之间的随机数,具体而言,在迭代过程中不断维护两个向量,Pbestij事务历史最优价值,gbestij为整个群体历史最优价值,对得到的最优解进行排序,形成调度策略。
5)约束条件:
要达到并发事务调度的最大目标,在已知周期内粒子群的迭代更新过程达到预定的最大迭代次数K停止迭代更新。同时,当个体最优解和群体最优解的变化趋于稳定或变化较小时,适应度函数值的变化越小,即粒子群已经趋于收敛。
步骤四:更新动态价值:在每个事务执行完成后,由于系统中的事务是不断变化的,它们的动态价值也会随之变化,需要重新计算所有事务的动态价值。可以根据当前系统状态的变化,重新计算每个事务的动态价值。因此,调度器需要不断地监测事务的动态价值,并根据变化情况动态地调整事务的执行顺序。
(1)不断地更新事务的动态价值和调度顺序,使得事务的执行效率和优化目标不断得到改进,通过步骤三中的适应度函数及未来价值不断调整整个调度器中事务的执行顺序。
PSO通过适应度函数来优化事务的执行时间和资源利用率、功耗之间的平衡。适应度函数可以将事务的动态价值、执行时间、功耗和资源利用率等因素考虑在内,以评估一个调度方案的优劣。
在步骤三考虑多目标优化调度算法时采用粒子群调度算法,也可以考虑使用优化算法库中的其它算法如蚁群优化算法,但粒子群算法在搜索过程中可以快速地向全局最优解逼近,因此相比蚁群算法具有更快的收敛速度,可以更快地得到最优解,易于实现和优化,在面对高维和复杂的搜索空间时更加适应。
尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (7)
1.一种基于动态价值的并发事务调度方法,其步骤包括:
1)估算每个事务的当前的动态价值F,所述动态价值F包括完成时间动态价值W1、资源利用率动态价值W2和能耗动态价值W3;
2)根据各事务的当前的动态价值F,确定各事务的执行顺序;其中每个粒子的位置表示一组候选的并发事务组合,利用粒子群算法确定各事务的执行顺序,其方法为:
21)初始化粒子群,随机生成每一粒子的初始位置和速度;Xij表示第i个粒子在第j个维度上的位置,vij表示第i个粒子在第j个维度上的速度;粒子群包括N个粒子;
22)将事务的当前的动态价值F作为粒子群算法的优化目标,将事务随时间t而不断变化的预估完成时间、资源利用率及能耗确定适应度函数;
23)第k轮迭代时,保存t时刻每个粒子的最优解和粒子群的群体最优解,并根据第k轮迭代结果得到一最优调度序列;以及根据事务的预估完成时间、资源利用率和能耗,通过线性插值法求解适应度函数从事务的初始时刻至事务的预估完成时刻T的事务价值序列,预测事务在全局范围内未来价值趋势FS(t)设置矩阵At,用于维护由粒子群算法所得到的并发事务所组成的并发事务调度序列,用0、1分别表示并发事务的调度选择,其中如果第i个事务为并发时间内的最优价值事务则其在矩阵At中对应的元素取值为1,否则为0,所有1组成的序列代表周期内的最优调度序列;通过粒子群迭代不断的优化矩阵At,使得整个并发调度过程事务总体价值全局最优;对每个事务执行的次数进行缓存,在时间片内的约束内,每一事务的执行次数不超过最大阈值K;FAt(t)代表在t时刻的事务总体价值,在时间T内,通过全局最大化获得不同事务组合序列最优的价值,得到第k轮迭代的全局最优调度序列;
24)第k+1轮迭代时,根据前k轮迭代的计算结果得到每一粒子的粒子历史最优解和粒子群历史最优解;并更新t+1时刻每个粒子的位置和速度;
25)当达到设定条件时停止迭代,输出全局最优调度序列作为各事务的执行顺序;
3)根据事务的执行顺序进行事务调度,并在每个事务执行完成后更新未执行事务的当前的动态价值F。
2.根据权利要求1所述的方法,其特征在于,所述完成时间动态价值W1=(1-(事务完成时间-最早完成时间)/(最晚完成时间-最早完成时间))*事务基础价值;资源利用率动态价值W2=(1-(事务所需资源量-可用资源量)/事务所需资源量)*事务基础价值;所述能耗动态价值W3=(1-(事务能耗-最小能耗)/(最大能耗-最小能耗))*事务基础价值。
3.根据权利要求2所述的方法,其特征在于,所述事务的动态价值F=α*(1/W1)+β*W2+γ*(1/W3);其中,α、β、γ分别为各因素的权重。
4.根据权利要求1或2或3所述的方法,其特征在于,粒子的速度更新公式为 粒子的位置更新公式为 其中,/>表示粒子i在t时刻的速度,/>表示粒子i在t+1时刻的速度,/>表示粒子i在t时刻的位置,/>表示粒子i在t+1时刻的位置,w为惯性权重,c1、c2为加速常量学习因子,r1、r2为随机数。
5.根据权利要求4所述的方法,其特征在于,c1、c2为0到2之间的加速常量学习因子,r1、r2为0到1之间的随机数;c1表示每个事务相对该事务的历史最优价值的权重,c2表示每个事务相对整个群体历史最优价值的权重。
6.一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1至5任一所述方法中各步骤的指令。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310981024.9A CN117009057B (zh) | 2023-08-04 | 2023-08-04 | 一种基于动态价值的并发事务调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310981024.9A CN117009057B (zh) | 2023-08-04 | 2023-08-04 | 一种基于动态价值的并发事务调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117009057A true CN117009057A (zh) | 2023-11-07 |
CN117009057B CN117009057B (zh) | 2024-03-22 |
Family
ID=88572265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310981024.9A Active CN117009057B (zh) | 2023-08-04 | 2023-08-04 | 一种基于动态价值的并发事务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117009057B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699446A (zh) * | 2013-12-31 | 2014-04-02 | 南京信息工程大学 | 基于量子粒子群优化算法的多目标工作流动态调度方法 |
US20200019435A1 (en) * | 2018-07-13 | 2020-01-16 | Raytheon Company | Dynamic optimizing task scheduling |
CN114846458A (zh) * | 2019-10-30 | 2022-08-02 | 华为技术有限公司 | 分布式可串行化并发控制方案 |
CN115809547A (zh) * | 2022-11-17 | 2023-03-17 | 南京理工大学 | 基于非支配排序的改进粒子群算法的多智能体协同任务分配方法 |
-
2023
- 2023-08-04 CN CN202310981024.9A patent/CN117009057B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699446A (zh) * | 2013-12-31 | 2014-04-02 | 南京信息工程大学 | 基于量子粒子群优化算法的多目标工作流动态调度方法 |
US20200019435A1 (en) * | 2018-07-13 | 2020-01-16 | Raytheon Company | Dynamic optimizing task scheduling |
CN114846458A (zh) * | 2019-10-30 | 2022-08-02 | 华为技术有限公司 | 分布式可串行化并发控制方案 |
CN115809547A (zh) * | 2022-11-17 | 2023-03-17 | 南京理工大学 | 基于非支配排序的改进粒子群算法的多智能体协同任务分配方法 |
Non-Patent Citations (2)
Title |
---|
ZHIXIANG JI ET.AL: "Research on task scheduling and concurrent processing technology for energy internet operation platform", 《GLOBAL ENERGY INTERCONNECTION DEVELOPMENT AND COOPERATION ORGANIZATION》, vol. 5, no. 6, 1 December 2022 (2022-12-01), pages 579 - 589 * |
赵英: "并行高性能耗散粒子动力学程序开发及其应用", 《中国博士学位论文全文数据库工程I辑》, no. 8, 15 August 2009 (2009-08-15), pages 1 - 121 * |
Also Published As
Publication number | Publication date |
---|---|
CN117009057B (zh) | 2024-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110737529B (zh) | 一种面向短时多变大数据作业集群调度自适应性配置方法 | |
US5675739A (en) | Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types | |
US5473773A (en) | Apparatus and method for managing a data processing system workload according to two or more distinct processing goals | |
Nurmi et al. | QBETS: Queue bounds estimation from time series | |
CN110321222B (zh) | 基于决策树预测的数据并行作业资源分配方法 | |
US20050086029A1 (en) | Mechanism for on-line prediction of future performance measurements in a computer system | |
WO2019050952A1 (en) | SYSTEMS, METHODS, AND MEDIA FOR DISTRIBUTING DATABASE INTERROGATIONS THROUGH A PAYING VIRTUAL NETWORK | |
US8966493B1 (en) | Managing execution of multiple requests in a job using overall deadline for the job | |
CN111124689A (zh) | 一种集群中容器资源动态分配方法 | |
EP0725340A2 (en) | Apparatus and method for managing a distributed data processing system workload by limiting the processing capacity consumption | |
WO2020109937A1 (en) | Data center infrastructure optimization method based on causal learning | |
CN118069380B (zh) | 一种算力资源处理方法 | |
CN112398700B (zh) | 一种服务降级方法及装置、存储介质、计算机设备 | |
CN105744006A (zh) | 一种面向多类型服务的粒子群优化用户请求调度方法 | |
CN112632615B (zh) | 基于混合云环境的科学工作流数据布局方法 | |
CN115168027A (zh) | 一种基于深度强化学习的算力资源度量方法 | |
CN113535387B (zh) | 一种异构感知的gpu资源分配与调度方法及系统 | |
CN116225708A (zh) | 一种gpu资源调度方法及装置 | |
Yang et al. | Design of kubernetes scheduling strategy based on LSTM and grey model | |
CN117009057B (zh) | 一种基于动态价值的并发事务调度方法 | |
Zhang et al. | Application of chaotic cat swarm optimization in cloud computing multi objective task scheduling | |
CN112035234A (zh) | 分布式批量作业分配方法及装置 | |
CN115454585A (zh) | 一种面向边缘设备深度学习模型推理的自适应批处理和并行调度系统 | |
Fan | Intelligent Job Scheduling on High Performance Computing Systems | |
El Danaoui et al. | A Cost-Effective Query Optimizer for Multi-tenant Parallel DBMSs |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |