Transaction processing is a style of computing that divides work into individual, indivisible operations, called transactions.  A transaction processing system (TPS) or Transaction Server is a software system, or software / hardware combination, That supports transaction processing.
The first transaction processing system was SABER , made by IBM for American Airlines, which became operational in 1970. Designed to process up to 83,000 transactions a day, the system ran on two IBM 7090 computers. SABER Was migrated to IBM System / 360 computers in 1972 and est devenu an IBM product first ace Airline Control Program (ACP) and later as Transaction Processing Facility (TPF) . In addition to airlines TPF is used by large banks, credit card companies, and hotel chains.
The Hewlett-Packard NonStop System (formerly Tandem NonStop) was a hardware and software system designed for Online Transaction Processing (OLTP) introduced in 1976. The systems were designed for transaction processing and provided an extreme level of availability and data integrity.
List of transaction processing systems
- IBM Transaction Processing Facility (TPF) – 1960. At Amity MOST Unlike other transaction processing systems TPF is a dedicated operating system for transaction processing is IBM System z mainframes. Originally Airline Control Program (ACP) .
- IBM Information Management System (IMS) – 1966. A joint management information system with extensive transaction processing capabilities. Runs on OS / 360 and successors .
- IBM DB / 2 Relational Database System (CICS) – 1969. A transaction manager designed for rapid, high-volume online processing, CICS originally used standard system datasets, but now has a connection to IBM’s DB / 2relational database system. Runs on OS / 360 and successors and DOS / 360 and successors , IBM AIX , VM , and OS / 2 . Non-mainframe versions are called TXSeries .
- Tuxedo – 1980s. Transactions for Unix, Extended for Distributed Operations developed by AT & T Corporation , now owned by Oracle Corporation . Tuxedo is a cross-platform TPS.
- UNIVAC Transaction Interface Package (TIP) – 1970s. A transaction processing monitor for UNIVAC 1100/2200 series computers. 
- Burroughs Corporation supported transaction processing capabilities in icts MCP operating systems using GEMCOS (Generalized System of Control Message 1980). As of 2012 UNISYS ClearPath Enterprise Servers include Transaction Server, an extremely flexible, high-performance message and application control system. 
- Digital Equipment Corporation (DEC) Application Control and Management System (ACMS) – 1985. “Provides an environment for creating and controlling online transaction processing (OLTP) applications on the VMS operating system.”   Runs on VAX / VMS systems.
- Digital Equipment Corporation (DEC) Message Control System (MCS-10) for PDP-10 TOPS-10 systems.
- Honeywell Multics Transaction Processing. Feature (TP) – 1979. 
- Transaction Management eXecutive (TMX) was the NCR Corporation’s proprietary transaction processing system running on NCR Tower 5000-series systems. This system was used mainly by financial institutions in the 1980s and 1990s.
- Hewlett-Packard NonStop system – 1976. NonStop is an integrated hardware and software system specifically designed for transaction processing. Originally from Tandem Computers .
- Transarc Encina – 1991.  Transarc Was you purchased by IBM in 1994. Encina Was discontinued as a product and folded into IBM’s TXSeries .  Encina support was discontinued in 2006.
Transaction processing is distinct from other computer processing models – batch processing , time-sharing , and real-time processing . 
Batch processing is execution of a series of programs ( jobs ) was computer without manual operation. Several transactions, called a batch are collected and processed at the same time. The results of each transaction are not immediately available;  there is a time delay.
“Real time systems to make a stimulus or request quickly enough to affect the conditions that caused the stimulus.”  Each transaction in real-time processing is unique; It is not part of a group of transactions.
A Transaction Processing System (TPS) is a system that collects, stores, modifies and retrieves data from an enterprise. Transaction processing systems are also used for real-time systems. Rather than allowing the user to run arbitrary programs as time-sharing, transaction processing permits predefined, structured transactions. Each transaction is usually short in duration and the processing activity for each transaction is programmed in advance.
Transaction processing system features
The following features are considered important in evaluating transaction processing systems. 
Fast performance with a fast response time is critical. Transaction processing systems are usually measured by the number of transactions.
The system must be available during the time period when the users are entering transactions. Many organizations rely heavily on their TPS; A breakdown will disrupt operations or even stop the business.
The system must be able to handle hardware or software problems without corrupting data. Multiple users should be protected from attempting to change the same piece of data at the same time.
Ease of use
Often users of transaction processing systems are casual users. The system should be simple for them to understand, protect them from data-entry errors as much as possible, and allow them to easily correct their errors.
The system should be capable of incremental costs, rather than requiring a complete replacement. It should be possible to add, replace, or update hardware and software components without shutting down the system.
Types of transaction processing
Processing in a batch
Transactions may be processed in batch processing. Transactions will be collected and later updated as a batch when it’s convenient or economical to process them. Historically, This Was The Most common method as the information technology Did not exist to allow real-time processing.
Processing in real-time
This is the immediate processing of data. It provides instant confirmation of a transaction. It may involve a large number of users who are simultaneously performing transactions which change data. Because of advances in technology (Such As the Increase in the speed of data transmission and larger bandwidth ), real-time updating is possible.
Databases for transaction processing
A database is an organized collection of data. Databases offer fast retrieval times for non-structured requests.
Databases for transaction processing may be constructed using hierarchical, network, or relational structures.
- Hierarchical structure: organizes data in a series of levels. Its top to bottom like structure consists of nodes and branches; Each child node has branches and is only linked to one higher level parent node.
- Network structure: network structures also organizes data using nodes and branches. But, unlike hierarchical, each child node can be linked to multiple, higher parent nodes.
- Relational structure: a relational database organizes its data in a series of related tables. This gives flexibility as relationships between the tables are built.
A hierarchical structure.
A network structure.
A relational structure.
The following features are desirable in a database system used in transaction processing systems:
- Good data placement : The database should be designed to access patterns of data from many simultaneous users.
- Short transactions : Short transactions. This avoids concurrency and paces the systems.
- Real-time backup : Backup should be scheduled between low times of activity to prevent lag of the server.
- High normalization : This lowers redundant information to increase the speed and improve concurrency, this also improves backups.
- Archiving of historical data : Uncommonly used data are moved into other databases or backed up tables. This keeps tables small and also improves backup times.
- Good hardware configuration : Hardware must be able to handle many users and provide quick response times.
Since business organizations have become very dependent on transaction processing, a breakdown may disrupt the business’ regular routine and stop its operation for a certain amount of time. In order to prevent and minimize disruptions there are well-designed backup and recovery procedures . The recovery process can rebuild the system when it goes down.
A TPS may fail for many reasons such as system failure, human errors, hardware failure, incorrect or invalid data, computer viruses , software application errors or natural or man-made disasters. As it is not possible to prevent all failures, a TPS must be able to detect and correct errors when they happen and cope with failures. A TPS will go through a recovery of the database which may involve the backup, log, checkpoint, and recovery manager:
- Journal: A journal maintains an audit trail of transactions and database changes. Transaction logs and Database change logs are used, a transaction log records all the essential data for each transaction, including data values, time of transaction and terminal number. A database change log contains before and after copies of records that have been modified by transactions.
- Checkpoint: The purpose of checkpointing is to provide a snapshot of the data within the database. A checkpoint, in general, is any identifier or other reference that identifies the state of the database at a point in time. Modifications to database pages are performed in memory and are not necessarily written to disk after every update. Therefore, periodically, the database system must perform a checkpoint to write these updates which are held in-memory to the storage disk. This paper describes the use of the database as a means of obtaining information from the database. If a checkpoint is interrupted and a recovery is required, Then the database system must start from a previous successful checkpoint. Checkpointing can be either transaction-consistent or non-transaction-consistent (also called fuzzy checkpointing). Transaction-consistent checkpointing produces a persistent database image that is sufficient to recover the database to the state that was externally perceived at the moment of starting the checkpointing. A non-transaction-consistent checkpointing results in a persistent database image that is insufficient to perform a recovery of the database. To perform the database recovery, additional information is needed, typically contained in transaction logs. Transaction consist of checkpointing refers to a consistent database, which doesn ‘ T necessarily include all the latest committed transactions, but all modifications made by transactions, that were committed to the time checkpoint was created, are fully present. A non-consistent transaction, which is not necessarily a consistent one. Depending on the type of database management system implemented a checkpoint may include indexes or storage pages . If no indexes are incorporated into the checkpoint, indexes must be created when the database is restored from the checkpoint image. Are fully present. A non-consistent transaction, which is not necessarily a consistent one. Depending on the type of database management system implemented a checkpoint may include indexes or storage pages . If no indexes are incorporated into the checkpoint, indexes must be created when the database is restored from the checkpoint image. Are fully present. A non-consistent transaction, which is not necessarily a consistent one. Depending on the type of database management system implemented a checkpoint may include indexes or storage pages . If no indexes are incorporated into the checkpoint, indexes must be created when the database is restored from the checkpoint image. Depending on the type of database management system implemented a checkpoint may include indexes or storage pages . If no indexes are incorporated into the checkpoint, indexes must be created when the database is restored from the checkpoint image. Depending on the type of database management system implemented a checkpoint may include indexes or storage pages . If no indexes are incorporated into the checkpoint, indexes must be created when the database is restored from the checkpoint image.
- Recovery Manager: A recovery manager is a program that restores the database to a correct condition.
Depending on how the system failed, there can be two different recovery procedures used. Generally, the procedures involves restoring data that has been collected from a backup device and then running the transaction processing again. Two types of recovery are backward recovery and forward recovery :
- Backward recovery: used to undo unwanted changes to the database. It reverses the changes made by transactions which have been aborted.
- Forward recovery: it starts with a backup copy of the database. The transaction will then be reprocessed according to the transaction.
Types of back-up procedures
There are two main types of back-up procedures: grandfather-father-son and partial backups :
This procedure involves taking full backups of all data at regular intervals – daily, weekly, monthly, or whatever is appropriate. Multiple generations of backup are retained, often three which give rise to the name. The most recent backup is the sound, the previous the father, and the oldest backup is the grandfather. This method is commonly used for a batch transaction processing with a magnetic tape . If the system fails during a batch run, the master file is recreated by restoring its backup and then restarting the batch. However, if the backup fails, is corrupted or destroyed, then the previous generation of backup is used. Likewise, if the fails, then the previous generation to the father (ie the grandfather) is required. Of course the older the generation, the more the data may be out of date. Organize only of records that have changed. For example, a full backup could be performed weekly, and partial backups taken nightly. Recovery using this scheme involves restoring the last full backup and then restoring all backups in order to produce an up-to-date database. This process is quicker than taking full backups.
Backup plus journal
This technique is also used in conjunction with regular complete backups. The master file is backed up at regular intervals. Completed transactions since the last backup are stored separately and are called journals , or journal files . The master file can be recreated by restoring the last complete backup and then reprocessing transactions from the log files. This will produce the most up-to-date copy of the database, but recovery may take longer because of the time required to process a volume of journal records.
- Transaction processing
- Server (computing)
- Online transaction processing
- Customer Integrated System
- Data warehouse
- Jump up^ IBM Corporation. “CICS Transaction Server for z / OS, Version 3.2 Transaction processing” . Retrieved Nov 12, 2012 .
- Jump up^ “Terminals Help Manage Aluminum Firm’s Production” . Computerworld . July 26, 1976 . Retrieved November 14, 2012 .
- Jump up^ UNISYS Corporation (2012). Transaction Server for ClearPath MCP Configuration Guide (PDF) .
- Jump up^ Digital Equipment Corporation (1989). VAX ACMS Guide to Creating Transaction Processing Applications .
- Jump up^ Bell, Gordon. “Digital Computing Timeline (1985)” . Retrieved November 15, 2012 .
- Jump up^ Van Vleck, Thomas. “Multics Glossary -T-” . Retrieved November 15, 2012 .
- Jump up^ Transarc. “Corporate Overview” . Archived from the original on February 3, 1999 . Retrieved November 16, 2012 .
- Jump up^ IBM Corporation. “TXSeries for Multiplatforms” . Retrieved November 16, 2012 .
- ^ Jump up to:a b c Schuster, Stewart A. (June 15, 1981). “In Depth: Relational Data Base Management” . Computerworld . Retrieved November 16, 2012 .