9 功能替代性对实时数据库系统性能的影响
实时事务具备功能替代性使得事务的成功执行有多条路径,当事务的一个替代夭折时,如果时间许可,还可以运行该事务的其他替代,由此提高了系统成功率;但分析和选择替代,以及已夭折替代的无效执行都会花费系统时间,在一定程度上降低了系统效率。因此,必须综合评估功能替代对实时系统性能的影响。本章利用灰色聚类分析理论解决这个问题,评估功能替代在不同系统负载情况下对系统性能的影响,从而确认功能替代的价值。
系统性能分析一直是一个重要的研究项目,传统的方式是就某个特定性能指标来评价系统的性能优劣,由于衡量系统性能的指标很多,彼此之间又往往没有可比性,某项性能较好的系统,有可能在另外一些性能上不尽人意。例如,高成功率的系统可能具有较低的事务捕获率,这样的系统应用于实时处理会遗失大量的事务,如果被遗失的事务正好是硬实时事务,将导致系统灾难。所以,综合评价系统的各个性能指标,是系统性能研究的关键。
在我们研制的实时数据库系统中,事务模型支持功能替代,即一个实时事务具有多个功能等价的替代,只要一个替代能成功执行,该实时事务就能提交;换言之,某个替代失败后,只要时间允许,可以选择另一个替代执行。可见,替代可以提高事务的成功率,然而,替代的预处理也要占用CPU时间。实验显示,在不同的系统负载下,支持功能替代的系统成功率明显高于不支持功能替代的系统成功率,但捕获率正好相反。本书运用灰色聚类理论对抽样测试结果进行分析,从而对系统性能进行综合评价,以决定功能替代的价值和意义。
在实时数据库系统中,衡量系统性能的指标通常有:系统成功率、CPU有效率和捕获率。它们的含义分别为:
系统成功率:成功提交的事务与系统接纳的事务之比。
CPU有效率:系统处理已提交事务所花费的CPU时间与总CPU时间之比。
捕获率:系统捕获的事务与到达系统的事务之比。
实验系统中,一台服务器作为专用数据库处理机,所有对数据库的操作都在此进行,另外20台客户机将所有数据库操作都变成对服务器的请求。性能测试结果如表9.1和表9.2所示。
表9.1 系统不支持功能替代时的性能测试结果
表9.2 系统支持功能替代时的性能测试结果
灰色聚类需选定n个聚类指标,利用测试得到的指标值,通过构造白化权函数,对m个聚类对象进行聚类分析,从而确定聚类对象所属的灰类。
1’指标 2’指标 n’指标
构造白化权函数fjk,j∈{1,2,…n},k∈{1,2,…m},有:F:OPfjk(dij)→σik∈[0,1],
计算灰向量:σi=(σi1,σi2,…,σin),
其中:,γjk为fjk的阈值。
当时,称聚类对象i属于k*类。
我们将聚类指标定为系统成功率1’、CPU有效率2’和事务捕获率3’,这3个指标都是极大性指标。聚类对象定为:支持功能替代的系统性能1*和不支持功能替代的系统性能2*,设定三个灰类:性能优\良和差,根据经验构造白化权函数。
下面我们针对系统负载的不同情况分析功能替代性对系统性能的影响:
(1)高系统负载时的性能评价
系统高负载时,样本矩阵为d1:
系统成功率1’ CPU利用率2’ 事务捕获率3’
设定白化权函数如图9.1至图9.3所示:
图9.1 白化权函数
图9.2 白化权函数
图9.3 白化权函数
第一步:求高性能类i的ηjk,
第二步:求灰向量
同理:σ21=f11(40.6)*0.32143+f21(47)*0.33927+f31(66.16)*0.33927=0.5491
σ12=f12(d11)η12+f22(d12)η22+f32(d31)η32=0.9101
σ22=f12(d21)η12+f22(d22)η22+f32(d23)η32=0.8312(www.xing528.com)
σ13=f13(d11)η13+f23(d12)η23+f33(d13)η33=0.9011
σ23=f13(d21)η13+f23(d22)η23+f33(d23)η33=0.9929
因此,得各对象灰类向量为:
σ1=(σ11,σ12,σ13)=(0.6191,0.9101,0.9011)
σ2=(σ21,σ22,σ23)=(0.5491,0.8312,0.9929)
第三步:灰聚类
σ1k*max{σ11,σ12,σ13}=0.9101=σ12, k*=2,
所以,第1对象属于第2类,即如果系统支持功能替代,在系统高负载时性能良。
σ2k*=max{(σ21,σ22,σ23}=0.9929=σ13 k*=3
所以,第2对象属于第3类,即如果系统不支持功能替代,在系统高负载时性能差。
(2)中系统负载时的性能评价
构造系统中负载时性能评价的样本矩阵为d2:
设定白化权函数依然如图9.1至图9.3所示,得:
σ11=0.8768;σ21=0.8303;σ12=0.8703;σ22=0.9595;σ13=0.5121;σ23 =0.5909;
因此,得各对象灰类向量为:
σ1=(σ11,σ12,σ13)=(0.8768,0.8703,0.5121)
σ1kmax{σ11,σ12,σ13}=0.8768=σ11, k*=1,
所以,第1对象属于第1类,即如果系统支持功能替代,在系统中负载时性能优。
σ2=(σ21,σ22,σ23)=(0.8308,0.9595,0.5909)
σ2k*=max{(σ21,σ22,σ23}=0.9595=σ22 k*=2
所以,第2对象属于第2类,即如果系统不支持功能替代,在系统中负载时性能良。
(3)低系统负载时的性能评价
构造系统低负载时性能评价的样本矩阵为d3:
设定白化权函数依然如图9.1至图9.3所示,得:
σ11=0.9893;σ21=0.9999;σ12=0.7397;σ22=0.7189;σ13=0.2849;σ23=0.2626;
因此,得各对象灰类向量为:
σ1=(σ1,σ12,σ13)=(0.9893,0.7397,0.2849)
σlk=max{σ11,σ12,σ13}=0.9893=σ11, k*=1,
所以,第1对象属于第1类,即如果系统支持功能替代,在系统低负载时性能优。
σ2=(σ21,σ22,σ23)=(0.9999,0.7189,0.2626)
σ2k*=max{σ21,σ22,σ23}=0.9999=σ21 k*=1
所以,第2对象属于第1类,即如果系统不支持功能替代,在系统低负载时性能优。
由以上聚类分析可得表9.3所示结论。
表9.3 聚类分析结果
在系统高负载时,由于资源竞争激烈,冲突较多,导致系统成功率较低,CPU有效率随之降低,同时,高负载意味着事务到达间隔小,对事务的捕获率降低,不管系统是否支持功能替代,系统整体性能都下降。但是,如果系统支持功能替代,则这种下降趋势较小,系统综合性能为良,好于不支持功能替代的系统性能,这是由于系统支持功能替代时,由于多个替代可供调度,单个事务的成功率相对较高,虽然因为处理替代花费了CPU时间,但用于处理成功事务的CPU时间相对较多,CPU有效率也高。当然处理替代导致事务捕获率略微降低,然而系统的整体性能依然表现较好。同理,系统负载为中时,如果系统支持功能替代,则性能为优,好于不支持功能替代的系统性能。当系统负载较低时,由于资源竞争导致的冲突较少,系统支持功能替代体现不出优越性,相反,由于必须对替代进行预分析,花费一定的CPU时间,导致CPU有效率和事务捕获率略低,但系统成功率依然略高。
由此,对于较高负载的实时系统,我们应该使系统支持功能替代,提高系统性能,而对于低负载的实时系统,不需要支持功能替代。
灰色聚类理论利用系统各项性能指标的测试数据来推断系统综合性能,遵循客观事实,但白化函数比较灵活,由主观来决策,该方法将难以量化的灰内涵转化为白内涵,按客观事实对系统性能做出整体评价。本书将灰色聚类理论引入实时数据库系统性能的综合评价,解决了性能评价的瓶颈问题;在系统支持和不支持功能替代的情况下,分别测试了系统的主要性能指标;对测试结果进行灰色聚类分析。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。