On-Line Transaction Processing

On-Line Transaction Processing (OLTP) systems are computer systems that enable organizations to rapidly process transactional data. Typical transactional workloads include order-entry (sales), stock-trading (financial), package management (logistics) and manufacturing. These workloads represent the core operations of many business models. A typical OLTP system is characterized by a very high rate of transaction rate initiated by a large number of concurrent userss, a relatively simple database schema, a working set which largely fits into memory, and an overall data set that includes recent historical data.

The TPC has developed four OLTP benchmarks; TPC-A, TPC-B, TPC-C and TPC-E, which reflect the evolution of transaction processing requirements over the past three decades. The first two, now obsolete, focused on a system's ability to process simple database transactions concurrently from multiple user or batch sessions. TPC-C and TPC-E are the current OLTP benchmarks offered by the TPC.

TPC-C implements an order-entry workload, with more complex real-time and batch transactions, and introduced the notion of a client/server model with response time constraints. TPC-E implements a stock-trading workload, with multi-stage trading transactions and a significant body of read-only transactions, representing a shift towards mixed environments. While there are many commonalities in the workloads implemented in TPC-C and TPC-E, there are also significant differences. TPC-E requires RAID protection of the entire disk subsystem, TPC-C requires RAID protection of the database logs only. In addition, TPC-E requires test sponsors to report how long recovery takes following catastrophic failures. TPC-E implements a richer database schema and transactions. TPC-E has 33 tables and 10 transactions with tables populated with pseudo-real data instead of random numbers and string fragments. TPC-C has nine database tables and five transactions. The primary metrics of TPC-E and TPC-C are similar. Both performance metrics report transactions per time unit and both price performance metrics report price per performance. TPC-E’s performance metric is tpsE, and price performance metric is $/tpsE while the corresponding metrics in TPC-C are tpmC and $/tpmC.