Section 1 - Instruction

Last time we covered relational design for daily operations. But what happens when you want to analyze that data? Running reports on normalized tables creates a problem.

Complex queries need to join many tables, making them slow and difficult to write.

Engagement Message

Have you ever noticed business reports taking forever to load?

Section 2 - Instruction

Here's the challenge: normalized designs optimize for data entry, not data analysis. A simple sales report might need to join 6+ tables to get customer, product, and order details.

Analytics teams need a different approach - one designed for asking business questions quickly.

Engagement Message

Why might joining many tables slow down analytical queries?

Section 3 - Instruction

Enter dimensional modeling - a design approach that organizes data specifically for analytical queries. Instead of many normalized tables, you create fewer, wider tables optimized for reporting.

This approach trades some storage efficiency for massive query performance gains.

Engagement Message

Which is more important for analytics: fast data entry or fast reporting?

Section 4 - Instruction

Dimensional models use two main table types: fact tables and dimension tables. Fact tables store measurable business events - like sales, orders, or website clicks.

These contain the numeric data you want to analyze: quantities, amounts, counts, and durations.

Engagement Message

What measurable events might an e-commerce company want to analyze?

Section 5 - Instruction

Dimension tables store descriptive information about the "who, what, when, where" of your business events. Think customers, products, dates, and locations.

These provide context for your facts - helping you slice and dice the numbers meaningfully.

Engagement Message

If you're analyzing sales, what descriptive information would help understand the numbers?

Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal