OLTP | Online Transaction Processing
- The management of transactional data using computer systems is referred to as online transaction processing (OLTP). OLTP systems record business interactions as they occur in the day-to-day operation of the organization, and support querying of this data to make inferences.
OLTP used to be restricted in the past to transactions taking place in the real world where something was traded, such as money, goods, information, requests for services, etc.
But throughout time, particularly with the invention of the internet, the definition of a transaction has been broadened to include any type of digital interaction or engagement with a company that may be initiated from any location in the world and via any web-connected sensor. It also includes any type of interaction or action that may be important for a company to record in order to better serve their consumers, such as watching a certain video, downloading PDFs from a website, or leaving comments on social media platforms.
Transactional data is information that tracks the interactions related to an organization’s activities. These interactions are typically business transactions, such as payments received from customers, payments made to suppliers, products moving through inventory, orders taken, or services delivered.
Implementing and using an OLTP system can create a few challenges:
- OLTP systems are not always good for handling aggregates over large amounts of data, although there are exceptions, such as a well-planned SQL Server-based solution.
- OLTP systems can be slow to execute and can cause a slow-down by blocking other transactions in the database.
We should use OLTP solutions when:
- we need to efficiently process and store business transactions and immediately make them available to client applications in a consistent way.
- any tangible delay in processing would have a negative impact on the day-to-day operations of the business.
OLTP systems are designed to efficiently process and store transactions, as well as query transactional data.
The goal of efficiently processing and storing individual transactions by an OLTP system is partly accomplished by data normalization — that is, breaking the data up into smaller chunks that are less redundant.
This supports efficiency because it enables the OLTP system to process large numbers of transactions independently, and avoids extra processing needed to maintain data integrity in the presence of redundant data.