WEB开发网
开发学院数据库DB2 按照事务类型分析DB2事物的性能 阅读

按照事务类型分析DB2事物的性能

 2010-06-06 15:01:22 来源:WEB开发网   
核心提示:将事务实例按照类型聚类在上一节中已经生成了关于事务实例的执行信息报告,可以从中得到一个事务实例中各个SQL语句的执行时间以及语句之间的等待时间,按照事务类型分析DB2事物的性能(6),但是在数据库操作中,往往会反复的执行同一个类型的事务,例如,用户给出规则:将含有“select * from account

将事务实例按照类型聚类

在上一节中已经生成了关于事务实例的执行信息报告,可以从中得到一个事务实例中各个SQL语句的执行时间以及语句之间的等待时间。但是在数据库操作中,往往会反复的执行同一个类型的事务。例如一个网上银行系统,登陆、转账等事务会被不同的应用程序不断的调用。这样就会出现一种现象,即一个数据库系统的事务实例报告中,有很多实例属于同一个事务类型。属于同一个类型的实例是由同一段应用程序代码执行的,但是参数值可能有所不同。如登陆事务,每次登陆的用户账号可能不一致。

为了统计同一类型的事务的性能,还需要将事务实例按照类型划分,然后计算其中的SQL语句的平均、最大最小时间。如何判断哪些事务实例属于同一类型是一个比较复杂的问题。由于在系统运行过程中一个事务类型的逻辑会发生变化,例如登陆事务可能会根据密码正确与否执行不同的SQL语句序列,所以很难全自动的将事务实例分类,最好引入一定的规则来作为判断的依据。常见的分类方法有:

自动匹配法。将执行的SQL语句逐一进行字符串匹配,每一个SQL语句都相同的事务实例被划分为同一类事务。这种方法的优点是简单, 缺点是可能把原本属于同一个类型的事务划分成两类。

将含有SQL语句的应用程序源代码作为划分依据。这样可以较为精确的匹配事务实例,并且由于源程序中包含了程序逻辑,即使一个 类型的事务有不同的逻辑也可以被匹配。

用户输入规则作为划分依据。例如,用户给出规则:将含有“select * from accountejb where accounted=?”语句的事务划分为一类。

按照如上方法划分之后,可以得到如表 2 所示的事务性能数据:

表 2. 事务类型性能报告

上一页  1 2 3 4 5 6 

Tags:按照 事务 类型

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接