A company maintains a database of customer orders that are updated frequently. They also store aggregated monthly sales reports that are generated once and then only read. Which statement correctly distinguishes these two types of data workloads?
In OLTP systems, transactional data is workload-optimized for high-frequency write operations using row-based storage, normalization to minimize redundancy, and fast lookup indexes to support ACID-compliant record-level changes. In contrast, analytical data in OLAP systems is structured for complex read patterns, using columnar storage, denormalized schemas, and pre-aggregated measures to speed up queries across large volumes. This fundamental separation drives the design of data pipelines and database engines.
Why this answer
Transactional workloads (like the frequently updated customer orders) are optimized for write-heavy operations, ensuring ACID compliance and data integrity, while analytical workloads (like the read-only monthly sales reports) are optimized for read-heavy operations, often using columnar storage or pre-aggregated data to speed up queries. This distinction aligns with the core difference between OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) systems in Azure, such as Azure SQL Database for transactional data and Azure Synapse Analytics for analytical data.
Exam trap
The trap here is that candidates confuse the typical characteristics of OLTP and OLAP, mistakenly thinking analytical data requires real-time processing or that transactional data is read-only, when in fact the opposite is true for each.
How to eliminate wrong answers
Option B is wrong because transactional data can be stored in both relational databases (e.g., Azure SQL Database) and non-relational databases (e.g., Azure Cosmos DB), and analytical data is often stored in relational or specialized columnar stores (e.g., Azure Synapse), not exclusively in one type. Option C is wrong because analytical data typically uses batch processing (e.g., nightly ETL jobs) rather than real-time processing, while transactional data requires real-time or near-real-time processing for individual write operations. Option D is wrong because transactional data is frequently updated (write-heavy), not read-only, and analytical data is typically read-only or updated in bulk during refresh cycles, not frequently updated.