What are OLTP and OLAP and the difference between them?

These are terms relating to different kinds of business information processing systems.

OLTP stands for “on-line transaction processing” and typically describes systems that support the fundamental operations of business – such as creating, modifying, and executing orders in an e-commerce or financial trading setting, for example. OLTP systems are usually designed to handle large numbers of relatively simple individual operations quickly and reliably.

OLAP stands for “on-line analytical processing” and describes systems that analyse data for summarization or decision-making purposes. Examples include calculating the average customer spend on an e-commerce platform, or analysing transaction data to identify instances of fraud. OLAP systems are normally optimized to process large, complex queries that involve many individual data instances, as quickly as possible.

It is often useful to distinguish these two types of processing because the optimizations they require dictate different architectural choices in data-storage layout and processing strategy. Under the hood these two capabilities use different data stores and different update mechanisms – one optimized for high-speed, high-fidelity capture of individual records, and the other optimized for summarizing and combining large data sets.