InterviewStack.io LogoInterviewStack.io

Data Warehouse and Dimensional Modeling Questions

Design and model scalable analytical data systems using dimensional modeling principles and data warehouse architecture patterns. Core concepts include fact and dimension tables, defining and enforcing grain, surrogate keys, degenerate and role playing dimensions, conformed dimensions, and handling slowly changing dimensions including Type One, Type Two, and Type Three. Understand schema choices and trade offs such as star schema versus snowflake schema, normalization versus denormalization, and fact table types including transactional, periodic snapshot, and accumulating snapshot. Apply design decisions to meet query patterns and performance goals by considering partitioning, indexing, compression, columnar storage, and aggregation strategies. Be able to design schemas for different business domains, reason about data integration and consistency, and optimize for common analytical workloads and reporting requirements.

MediumSystem Design
74 practiced
Design a star schema to support order analytics for an e-commerce system. Requirements: analyze order revenue by customer segment, product categories, sales channel and day. Provide the grain, list the fact table columns (including measures) and at least five dimensions with key attributes. Explain surrogate key choices and how you would model returns/refunds.
MediumTechnical
140 practiced
What is a factless fact table? Provide two real-world examples (e.g., student_attendance, ad_impression) and explain how factless facts support analytical queries such as coverage analysis, enforcement checks, or funnel steps. Explain how you choose the grain for a factless fact.
MediumTechnical
98 practiced
You have streaming event facts and daily account_state snapshots. Explain how to reconcile both data sources to avoid double-counting (for example, an event that is reflected in both the event stream and snapshot). Propose an architecture and processes (deduplication windows, event_apply_window, reconciliation jobs, canonical keys) to combine events and snapshots into a single analytic layer consistently.
EasyTechnical
76 practiced
Explain what a degenerate dimension is in a star schema and provide two concrete examples (e.g., invoice_number, transaction_id). Discuss why you might keep such attributes in the fact table rather than creating a separate dimension and any downsides of keeping them in the fact.
MediumTechnical
99 practiced
Explain additive, semi-additive, and non-additive measures with examples (e.g., sales_amount is additive, account_balance is semi-additive, conversion_rate is non-additive). For each type describe how aggregations across time or other dimensions should be handled and modeling strategies to report them correctly.

Unlock Full Question Bank

Get access to hundreds of Data Warehouse and Dimensional Modeling interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.