Surrogate keys are system-generated unique IDs (e.g., auto-increment) for dimension rows. **Why they matter**: Natural keys change (customer ID rebrand, source system merge); surrogates are stable. (1) **SCD Type 2**: Same natural key, multiple rows (versions)—surrogate...
This hard-level SQL question appears frequently in data engineering interviews at companies like Microsoft. While less common, it tests deeper understanding that distinguishes strong candidates. Mastering the underlying concepts (etl, 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.
Surrogate keys are system-generated unique IDs (e.g., auto-increment) for dimension rows. Why they matter: Natural keys change (customer ID rebrand, source system merge); surrogates are stable. (1) SCD Type 2: Same natural key, multiple rows (versions)—surrogate distinguishes them. (2) Join performance: Integer joins are faster than string/UUID. (3) Integration: Consistent IDs across sources with different natural key formats. Scalability trade-offs: Surrogate generation must be deterministic in distributed ETL (hash-based or sequence). Cost implications: Smaller keys = less storage and faster joins. Best practice: Use in all dimension tables; generate in ETL; never reuse—even for "same" entity after change.
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 $24/mo - cancel anytime
Get the most asked SQL questions with expert answers. Instant download.
No spam. Unsubscribe anytime.
Paste your answer and get instant AI feedback with a FAANG-level improved version.
Analyze My Answer — FreeAccording to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 1 company. DataEngPrep.tech maintains a curated database of 1,863+ real data engineering interview questions across 7 categories, verified by industry professionals.