Skip to content

Transactional vs Analytical Data Modeling

OLTP vs OLAP — why the same data needs different shapes for different jobs.

15 min readdata-strategy, oltp, olap, normalization, denormalization

You've built a beautiful, normalized database. Every table has a single responsibility. Foreign keys connect everything. No data is duplicated. It's a work of art.

Then someone from the business team asks: "Can you show me total revenue by product category by month for the last two years, compared against customer acquisition cost?" And your perfectly normalized database grinds to a halt. Seven table joins. Minutes to execute. Your application times out.

The problem isn't your data. The problem is that you're asking a transactional database to do an analytical job. These are fundamentally different workloads, and they need fundamentally different data shapes.

Two Worlds, Same Data

OLTP (Online Transaction Processing) is what your application does all day. A user places

This lesson is part of the Guild Member curriculum. Plans start at $29/mo.