2.4.2 输入吞吐量指标的选择
衡量任何一个业务系统的运行性能,可以从两个基本方面来进行考察:访问特征和访问能力。
访问特征体现了业务系统运行的负载特征,主要用来衡量吞吐量。当一个业务系统的访问特征发生了变化,特别是其访问特征预期在吞吐量突变点之上时,可以判断业务系统的性能将会发生变化。或者说业务系统的访问特征发生了明显的变化,可以猜测以下两点正在发生:
1)有新的业务正在加入,需要引起关注。
2)原有业务的访问特征发生了变化,可能会引起重大的性能问题。
访问能力体现了业务系统运行的响应时间特性,主要用来衡量响应时间。一个性能表现良好的系统,响应时间或者访问能力必须控制在可接受的范围之内,否则就表示业务系统性能不佳。
数据库应用系统在考虑数据库黑盒子的情况下,可以用两个基本性能指标来衡量访问特征和访问能力:LIO(逻辑I/O)和PIO(物理I/O)。Craig A. Shallahamer就是选择了LIO和PIO作为输入吞吐量操作单元,尤其是LIO输入指标。一般来说,数据库应用运算量很小,绝大部分数据库应用的运算转换消耗可以忽略不计,LIO基本可以代表CPU资源的消耗运行。
任何业务系统在不考虑运行和网络交互的情况下,都可以归类为两类基本的操作:LIO和PIO。每个业务系统不管其业务模式如何变化,SQL语句如何多变,其最终有效性都可以通过这两个指标来衡量。以每秒或者每分钟多少个LIO和PIO来衡量业务特征,LIO和PIO的数量和两者之间的比例就构成了现有业务系统的运行特征,而LIO和PIO具有相互转换的关系甚至可以归结为一个衡量业务系统运行的指标。
在引入LIO和PIO两个核心输入吞吐量指标之后,就可以构建UOWTBA响应时间分析方法论的基本形态。
访问特征:每秒运行的LIO和PIO数量。
访问能力:每个LIO和PIO的响应时间。
辅助描述:Transactions,User Calls,Execute数量。
响应时间(LIO)=服务时间+等待时间
响应时间(PIO)=服务时间+等待时间
对于PIO来说,可以进一步分解为:响应时间(PIO)=服务时间+I/O服务时间+其他等待时间。
再次查看吞吐量和响应时间曲线,以及图2-4基于输入吞吐量PIO的响应时间曲线。
图2-4 基于输入吞吐量PIO的响应时间曲线
可以看出,UOWTBA和TBA最根本的区别在于,UOWTBA分析对吞吐量的描述比标准TBA分析更加清晰,使基于业务的TBA分析可以简单地转化为基于技术的TBA分析。