Architecture: Star schema centralizes measurable events in fact tables; dimensions provide semantic context. Why this design: Facts are append-heavy and grow unbounded; dimensions are smaller and change slowly. Separating them optimizes for different access patterns. Fact grain...
Red Flag: Defining star schema without mentioning grain or surrogate keys. Pro-Move: 'We defined the fact grain as one row per order line; that drove our join strategy and allowed us to backfill without duplicates'—demonstrates schema design ownership.
This hard-level SQL question appears frequently in data engineering interviews at companies like Datametica, Deloitte, Incedo. While less common, it tests deeper understanding that distinguishes strong candidates. Mastering the underlying concepts (join) will help you answer variations of this question confidently.
This is a senior-level question that tests architectural thinking. Lead with the high-level design, then drill into specifics. Discuss trade-offs explicitly - there is rarely one correct answer. Show awareness of scale, fault tolerance, and operational complexity.
Architecture: Star schema centralizes measurable events in fact tables; dimensions provide semantic context. Why this design: Facts are append-heavy and grow unbounded; dimensions are smaller and change slowly. Separating them optimizes for different access patterns. Fact grain defines the entire schema—get it wrong and joins become wrong. Example: sales_fact (quantity, revenue, date_key, product_key, customer_key) at grain one row per transaction. dim_product, dim_customer, dim_date hold attributes. Scalability: Denormalizing dimensions reduces join depth at query time (critical at scale). Trade-off: SCD Type 2 dimensions can grow; balance history retention vs storage. Cost: Surrogate keys enable idempotent loads and avoid string joins; dimension size affects broadcast-join eligibility. Best practice: Grain first; surrogate keys in facts; SCD2 for dimensions where history matters.
This answer is partially locked
Unlock the full expert answer with code examples and trade-offs
Practice real interviews with AI feedback, track progress, and get interview-ready faster.
Pro starts at $19/mo - cancel anytime
Trusted by 10,000+ aspiring data engineers
According to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 3 companies. DataEngPrep.tech maintains a curated database of 1,863+ real data engineering interview questions across 7 categories, verified by industry professionals.