Transaction Processing. Description
A business transaction is an interaction in the real world, usually between an enterprise and a person, in which something, such as money, products, or information, is exchanged (1). It is often called a computer-based transaction, or simply a transaction, when some or the whole of the work is done by computers. Similar to the traditional computer programs, a transaction program includes functions of input and output and routines for performing requested work.
A transaction can be issued interactively by users through a Structured Query Language (SQL) or some sort of forms. A transaction can also be embedded in the application program written in a high-level language such as C, Pascal, or COBOL.
A transaction processing (TP) system is a computer system that processes the transaction programs. A collection of such transaction programs designed to perform the functions necessary to automate given business activities is often called an application program (application software).
Figure 1 shows a transaction processing system. The transaction programs are submitted to clients, and the requests will be scheduled by the transaction processing monitor and then processed by the servers. A TP monitor is a piece of software that connects multiple clients to multiple servers to access multiple data resources (databases) in TP systems. One objective of the TP monitor is to optimize the use of system and network resources when clients and servers execute on different processors.
Figure 1. TP monitor between clients Data resources and data resources
TP is closely associated with database systems. In fact, most earlier TP systems, such as banking and airlines reservation systems, are database systems, in which data resources are organized into databases and TP is supported by database management systems (DBMSs). In traditional database systems, transactions are usually simple and independent, and they are characterized as short duration in that they will be finished within minutes (probably seconds).
Traditional transaction systems have some limitations for many advanced applications such as cooperative work, in which transactions need to cooperate with each other. For example, in cooperative environments, several designers might work on the same project. Each designer starts up a cooperative transaction. Those cooperative transactions jointly form a transaction group. Cooperative transactions in the same transaction group may read or update each other’s uncommitted (unfinished) data. Therefore, cooperative transactions may be interdependent.
Currently, some research work on advanced TP has been conducted in several related areas such as computer-supported cooperative work (CSCW) and groupware, workflow, and advanced transaction models (2-6). In this article, we will first discuss traditional transaction concepts and then examine some advanced transaction models.
Because of recent developments in laptop or notebook computers and low-cost wireless digital communication, mobile computing began to emerge in many applications.
As wireless computing leads to situations where machines and data no longer have fixed locations in the network, distributed transactions will be difficult to coordinate, and data consistency will be difficult to maintain. In this article, we will also briefly discuss the problems and possible solutions in mobile transaction processing.
This paper is organized as follows. First, we will introduce traditional database TP, including concurrency control and recovery in centralized database TP. The next section covers the topics on distributed TP. Then, we discuss advanced TP and define an advanced transaction model and a correctness criterion. Mobile TP is also presented. Finally, future research directions are included.
Date added: 2024-02-27; views: 153;