OLTP is an initialism for Online Transaction Processing. This is a type of software program that is designed to support transaction-oriented application processing.
Online transaction processing systems are used in business for handling processes like financial transactions, order entries, customer relationship management, and retail sales. OLTP is characterized by numerous short online transactions that involve inserting, updating, and deleting data belonging to individual records in a database.
Online transaction processing is mainly used in industries that rely on the efficient processing of a large number of client transactions, such as airlines, banks, and retailers. Other examples of OLTP transactions include:
- Online banking
- Online purchases
- Order entry
- Telemarketing
- Call centers
In terms of databases, a transaction is a sequence of operations that are performed as a single logical unit of work. A transaction will only be successful if the entire sequence is successful. If any aspect of the transaction fails, the whole transaction will fail. This property, called atomicity, requires that an OLTP system be able to fully rollback a transaction if it does not complete successfully.
For example, if a customer books a seat on a flight, atomicity allows both the reservation of the seat and the sale of the seat, which must happen simultaneously. Database systems that use OLTP are typically decentralized to avoid single points of failure, which spreads the query volume among several servers.
OLTP databases need to be ACID-compliant as well. ACID refers to a standardized set of properties that guarantee database transactions are processed reliably, accurately, and consistently. Other examples of OLTP application characteristics include:
- Transactions that involve small amounts of data
- Indexed data access
- Multiple users
- Frequent updates and queries
- Fast response times
OLTP differs from OLAP (Online Analytic Processing), which is analytical and used to provide input data to data warehouses. OLAP analytics are often derived from data capture via an OLTP application. Because of this, OLTP and OLAP may work with the same data sets, but for different purposes.
OLTP can provide a snapshot of current business processes, whereas OLAP offers multi-dimensional views of business metrics over time. Because OLAP involves querying tens of thousands or millions of database records for analytical use, OLAP databases and systems are designed to optimize queries, not transactions.