Reviewed by Aditya Kumar · Last reviewed 2026-03-24
**Star**: Central fact table with denormalized dimensions; one join per dimension. **Snowflake**: Normalized dimensions with hierarchies (e.g., region → country → city). **Why choose Star**: Query simplicity drives performance—fewer joins mean faster execution; BI tools generate...
This medium-level SQL question appears frequently in data engineering interviews at companies like BCG. While less common, it tests deeper understanding that distinguishes strong candidates. Mastering the underlying concepts (join, snowflake, sql) will help you answer variations of this question confidently.
Break this problem into components. Identify the core trade-offs involved, then walk the interviewer through your reasoning step by step. Demonstrate awareness of edge cases and production considerations - this is what separates good answers from great ones.
Star: Central fact table with denormalized dimensions; one join per dimension. Snowflake: Normalized dimensions with hierarchies (e.g., region → country → city). Why choose Star: Query simplicity drives performance—fewer joins mean faster execution; BI tools generate simpler SQL; caching works better. Why choose Snowflake: Storage cost at scale—when dim_product has 50M rows with repeated category names, normalization saves 40%+ storage; strict governance requires single source of truth for attributes. Scalability trade-off: Star wins for read-heavy analytics; Snowflake wins when dimension tables exceed memory or storage budget. Cost: Star = higher storage, lower compute; Snowflake = lower storage, higher join cost. At MAANG scale, hybrid is common: Star for hot tier, Snowflake for cold/historical.
Red Flag: Dogmatically insisting on one schema for all use cases. Pro-Move: 'We started with Star for Q1 dashboards, then normalized dim_product to Snowflake when it hit 80M rows and storage costs exceeded $50K/month.'
Some links below are affiliate links. If you buy through them we may earn a small commission at no extra cost to you — it helps keep DataEngPrep free.
According to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.