Data Engineering interview question · Most asked
Data warehouse, data lake or lakehouse: what is the difference?
Summary
A warehouse (Snowflake, BigQuery, Redshift) manages storage and SQL compute for structured data. A data lake stores raw files of any format cheaply in object storage. A lakehouse adds a table format (Iceberg, Delta Lake, Hudi) on top of lake files, giving tables, ACID transactions, schema evolution and time travel, queryable by several engines.
Longer Answer
Choose a warehouse for simplicity and strong SQL performance; a lakehouse for open formats, very large or varied data, machine-learning workloads and multiple engines on the same data. Many organisations use both.
Key Points
- Warehouse: managed SQL storage and compute.
- Lake: cheap raw files.
- Lakehouse: table formats over lake files.
- Choose by simplicity vs openness.
Deep dive: ETL and Data Pipelines: Warehouses, Lakehouses and Scan Cost
Explanation
What interviewers look for
Clear distinctions and realistic selection criteria.
More most-asked Data Engineering questions
- Batch or streaming: how do you decide?
- What is the difference between ETL and ELT, and when would you choose each?
- What is change data capture (CDC), and why is log-based CDC preferred over polling?
- What does it mean for a data pipeline to be idempotent, and how do you achieve it?
- How do you implement incremental extraction, and what can go wrong?
- How do you deduplicate events, and what does 'exactly-once' really mean?
- What is a star schema, and why is it used in data warehouses?
- What is the grain of a table, and what is join fan-out?