Data Lake
A data lake stores raw structured and unstructured data cheaply in its native format, applying schema on read.
A data lake is a storage repository that holds vast amounts of raw data in its native format until it is needed. Unlike a data warehouse, which requires data to be structured before loading, a data lake accepts everything — tables, logs, JSON, images, video — and defers structure to query time.
How It Works
Data lakes are typically built on inexpensive object storage such as Amazon S3, Azure Data Lake Storage, or Google Cloud Storage. They follow a schema-on-read approach: raw files are stored as-is, and structure is imposed only when the data is queried by engines like Apache Spark, Presto/Trino, or Athena.
Open file and table formats (Parquet, ORC, Avro) provide efficient columnar storage, while metadata catalogs track what data exists. Data scientists and engineers can explore raw data directly, building pipelines that refine it into curated datasets.
Why It Matters
Data lakes offer low-cost, highly scalable storage for the full variety of an organization's data, including the semi-structured and unstructured data that warehouses handle poorly. They are well suited to data science, machine learning, and exploratory analytics.
The risk is governance. Without discipline, a lake degrades into a "data swamp" — undocumented, inconsistent, and hard to trust. Weak schema enforcement and quality controls are the main drawbacks, which the lakehouse architecture set out to fix.
Related Terms
A data lake complements the data warehouse, is merged with it in the data lakehouse, and is commonly populated through ELT pipelines.