The fundamental difference between operational systems and data warehousing systems is that operational systems are designed to support transaction processing whereas data warehousing systems are designed to support online analytical processing (or OLAP, for short).
Based on this fundamental difference, data usage patterns associated with operational systems are significantly different than usage patterns associated with data warehousing systems. As a result, data warehousing systems are designed and optimized using methodologies that drastically differ from that of operational systems.
The table below summarizes many of the differences between operational systems and data warehousing systems.
OLTP vs. OLAP
We can divide IT systems into transactional (OLTP) and analytical (OLAP). In general we can assume that OLTP systems provide source data to data warehouses, whereas OLAP systems help to analyze it.
- OLTP (On-line Transaction Processing) is characterized by a large number of short on-line transactions (INSERT, UPDATE, DELETE). The main emphasis for OLTP systems is put on very fast query processing, maintaining data integrity in multi-access environments and an effectiveness measured by number of transactions per second. In OLTP database there is detailed and current data, and schema used to store transactional databases is the entity model (usually 3NF).
- OLAP (On-line Analytical Processing) is characterized by relatively low volume of transactions. Queries are often very complex and involve aggregations. For OLAP systems a response time is an effectiveness measure. OLAP applications are widely used by Data Mining techniques. In OLAP database there is aggregated, historical data, stored in multi-dimensional schemas (usually star schema).
The following table summarizes the major differences between OLTP and OLAP system design.
|
OLTP System Online Transaction Processing (Operational System)
|
OLAP System Online Analytical Processing (Data Warehouse)
|
Source of data
|
Operational data; OLTPs are the original source of the data.
|
Consolidation data; OLAP data comes from the various OLTP Databases
|
Purpose of data
|
To control and run fundamental business tasks
|
To help with planning, problem solving, and decision support
|
What the data
|
Reveals a snapshot of ongoing business processes
|
Multi-dimensional views of various kinds of business activities
|
Inserts and Updates
|
Short and fast inserts and updates initiated by end users
|
Periodic long-running batch jobs refresh the data
|
Queries
|
Relatively standardized and simple queries Returning relatively few records
|
Often complex queries involving aggregations
|
Processing Speed
|
Typically very fast
|
Depends on the amount of data involved; batch data refreshes and complex queries may take many hours; query speed can be improved by creating indexes
|
Space Requirements
|
Can be relatively small if historical data is archived
|
Larger due to the existence of aggregation structures and history data; requires more indexes than OLTP
|
Database Design
|
Highly normalized with many tables
|
Typically de-normalized with fewer tables; use of star and/or snowflake schemas
|
Backup and Recovery
|
Backup religiously; operational data is critical to run the business, data loss is likely to entail significant monetary loss and legal liability
|
Instead of regular backups, some environments may consider simply reloading the OLTP data as a recovery method
|
|