Вы находитесь на странице: 1из 2

Online transaction processing

From Wikipedia, the free encyclopedia


This article relies largely or entirely upon a single source. Relevant discussion may
be found on the talk page. Please help improve this article by introducingcitations to
additional sources. (March 2013)

Online transaction processing, or OLTP, is a class of information systems that facilitate and


manage transaction-oriented applications, typically for data entry and retrieval transaction
processing. The term is somewhat ambiguous; some understand a "transaction" in the context of
computer or database transactions, while others (such as the Transaction Processing Performance
Council) define it in terms of business or commercial transactions.[1] OLTP has also been used to
refer to processing in which the system responds immediately to user requests. An automated teller
machine (ATM) for a bank is an example of a commercial transaction processing application. Online
transaction processing applications are high throughput and insert or update-intensive in database
management. These applications are used concurrently by hundreds of users. The key goals of
OLTP applications are availability, speed, concurrency and recoverability. [2] Reduced paper trails and
the faster, more accurate forecast for revenues and expenses are both examples of how OLTP
makes things simpler for businesses. However, like many modern online information technology
solutions, some systems require offline maintenance, which further affects the cost-benefit analysis
of online transaction processing system.

Contents
  [hide] 

 1 What Is an OLTP System?


 2 Online Transaction Processing Systems Design
 3 Contrasted to
 4 See also
 5 References
 6 External links

What Is an OLTP System?[edit]


OLTP system is a popular data processing system in today's enterprises. Some examples of OLTP
systems include order entry, retail sales, and financial transaction systems. [3] Online transaction
processing system increasingly requires support for transactions that span a network and may
include more than one company. For this reason, modern online transaction processing software
use client or server processing and brokering software that allows transactions to run on different
computer platforms in a network.
In large applications, efficient OLTP may depend on sophisticated transaction management software
(such as CICS) and/ordatabase optimization tactics to facilitate the processing of large numbers of
concurrent updates to an OLTP-oriented database.
For even more demanding decentralized database systems, OLTP brokering programs can
distribute transaction processing among multiple computers on a network. OLTP is often integrated
into service-oriented architecture (SOA) and Web services.
Online Transaction Processing (OLTP) involves gathering input information, processing the
information and updating existing information to reflect the gathered and processed information. As
of today, most organizations use a database management system to support OLTP. OLTP is carried
in a client server system.
Online Transaction Process concerns about concurrency and atomicity. Concurrency controls
guarantee that two users accessing the same data in the database system will not be able to change
that data or the user has to wait until the other user has finished processing, before changing that
piece of data. Atomicity controls guarantee that all the steps in transaction are completed
successfully as a group. That is, if any steps between the transaction fail, all other steps must fail
also.[4]

Online Transaction Processing Systems Design[edit]


To build an OLTP system, designer must know that the large number of concurrent users does not
interfere with the system's performance. To increase the performance of OLTP system, designer
must avoid the excessive use of indexes and clusters.
The following elements are crucial for the performance of OLTP systems:[5]

 Rollback segments
Rollback segments are the portions of database that record the actions of transactions in the
event that a transaction is rolled back. Rollback segments provide read consistency, roll back
transactions, and recover the database.[6]

 Clusters
A cluster is a schema that contains one or more tables that have one or more columns in
common. Clustering tables in database improves the performance of join operation.[7]

 Discrete transactions
All changes to the data are deferred until the transaction commits during a discrete
transaction. It can improve the performance of short, non-distributed transaction. [8]

 Block (data storage) size


The data block size should be a multiple of the operating system's block size within the
maximum limit to avoid unnecessary I/O.[9]

 Buffer cache size
To avoid unnecessary resource consumption, tune SQL statements to use the database
buffer cache.[10]

 Dynamic allocation of space to tables and rollback segments


 Transaction processing monitors and the multi-threaded server
A transaction processing monitor is used for coordination of services. It is like an operating
system and does the coordination at a high level of granularity and can span multiple
computing devices.[11]

 Partition (database)
Partition increases performance for sites that have regular transactions while still maintain
availability and security.[12]

 database tuning
With database tuning, OLTP system can maximize its performance as efficiently and rapidly
as possible.

Вам также может понравиться