A data lake stores broad data (structured, semi-structured, unstructured) as files on object storage for flexible processing.
A data warehouse stores curated, structured tables optimized for fast SQL analytics and BI (Redshift, BigQuery, Snowflake, Synapse).
Lake: cheap files --> many engines --> flexible / raw+curated Warehouse: governed tables --> SQL/BI --> fast aggregates / marts
Comparison
| | Data lake | Data warehouse | |---|---|---| | Storage | Object store files | Managed tables (often columnar) | | Schema | Schema-on-read common | Schema-on-write / strongly typed | | Users | DE, ML, science | Analysts, BI, SQL | | Strength | Cheap retention, flexibility | Performance, governance for BI | | Weakness | Can become messy | Cost / rigidity for raw dumps |
Modern note
Lakehouse patterns (Delta/Iceberg + warehouse-style SQL) blur the line: warehouse reliability on lake storage.
Interview tip: Lake = flexible cheap landing; warehouse = curated SQL serving. Many stacks use both: lake for raw/replay, warehouse/marts for BI.