事务处理系统软件的深入解析
1. 事务类型与需求的增长
简单事务是执行一次并产生永久结果的原子工作单元,但对于复杂的长事务,这个定义过于简单。直到最近,事务处理监视器(TPM)大多是为相对简单的事务编写的。在探讨实现技术时,简单事务类型是主要关注点,但后续会逐渐过渡到复杂事务。
在线事务的执行需要一个程序,它能代表特定请求访问共享数据库。事务处理软件通常具备以下功能:
- 实时接收请求。
- 执行必要的管理功能(如读取、写入、添加、删除)。
- 向请求实体返回反映执行结果的响应。
复杂事务远不止是多个简单原子事务的算术总和。即使是最简单的情况,也估计有几百种不同的事务类型,从非常简单到中等复杂度,通常涉及 5 到 30 次磁盘访问。非常复杂的在线事务可能达到 1000 次数据库访问。
随着在线应用环境的发展,事务处理模式也在改变。事务应用可能涉及执行 10000 到 100 万条指令,简单情况下有 2 到 20 条消息,长事务则超过 100 条消息。在线终端数量可能只有几百个,但大型网络中可能达到 50000 个或更多。在存储方面,1000 个磁盘的配置开始成为一种衡量单位。系统的数据负载早已超过 1000 TPS,如今的挑战是达到 3000 TPS 及更高。重要的不仅仅是事务的绝对数量,更在于其复杂性。
性能要求通常可以用每秒每笔交易的成本来衡量,但也有其他衡量标准。响应时间对大多数应用来说非常重要。成本、响应时间和可用性应综合考虑,通常衡量一个系统的能力包括:
- 每秒处理 n 笔事务。
- 90% 的响应时间在亚秒级。
- 在任何条件下 99.9% 的可用性。