Explain like I'm five · Database

What are a Data Warehouse and a Data Lake?

A data warehouse and a data lake, told as a story comparing a tidily shelved warehouse with a yard where things just get piled up.

neat boxes and messy piles arrive all at onceeach item has to be either shelved now or piled up for later

Neat boxes and messy piles arrive all at once.Each item has to be either shelved now or piled up for later.

a brand-new kind of item has no rule, so it can't go on the shelfshelving it requires every sorting rule to be set in advance

Shelving an item requires every sorting rule to be set in advance.A brand-new kind of item has no rule, so it can't go on the shelf.

warehouseyard (lake)Warehouse = sorted onto shelves, Lake = piled up exactly as it arrived

A warehouse sorts things onto shelves; a lake piles them up exactly as they arrived.Routine reports use a warehouse and raw storage uses a lake, so you often need both.

Warehouse: sort, then storethat's schema-on-write
Lake: store, then sortthat's schema-on-read
Warehouse: fast routine reportsaggregated straight away with SQL
Lake: keeps all kinds of raw inputphotos and logs kept as-is
Data WarehouseData Lakesort before shelving (schema-on-write)structured, fast SQL reportingnew shapes need a rule firstpile first, sort later (schema-on-read)photos, logs, video — kept as-isunmanaged, it becomes a hard-to-search pilethe key difference is WHEN data gets sorted — on write, or on read

The key difference between a warehouse and a lake is when data gets sorted.A warehouse sorts when data is stored; a lake sorts when data is read.

nobody knows what's in this pilean unmanaged lake turns into a 'data swamp'analysis (OLAP) usually runs on the tidy warehouse side

An unmanaged lake turns into a 'data swamp'.Analysis (OLAP) usually runs on the tidy warehouse side.

In one breath

A data warehouse is a tidy, pre-sorted warehouse; a data lake is a raw storage yard that keeps things exactly as they arrived.

A data warehouse fixes its schema before storing (schema-on-write), holding structured data well-suited to fast aggregation and reporting. A data lake stores first and interprets structure only when needed (schema-on-read), so it can keep anything — structured or not — exactly as it arrived. Left unmanaged, a lake easily becomes a 'data swamp'; a lakehouse approach tries to combine both.

When grown-ups say it

Schema-on-write
Sorting before anything goes in. The approach a warehouse uses.
Schema-on-read
Storing first, sorting when it's used. The approach a lake uses.
Structured/Unstructured Data
Neat boxes vs. messy piles. A lake takes in both kinds.
ETL/ELT
A difference in the order of moving data and tidying it. ETL tidies before the move, ELT after.
Data Swamp
A yard nobody's kept up. Becomes a pile nobody can search.
BI Reporting
The routine aggregate report. What a warehouse is best suited for.
Lakehouse
A yard with a few shelves added in. An approach combining warehouse and lake.
OLAP
Slicing all the data by several axes for analysis. Usually run on warehouse data. → the manager who slices the whole warehouse
Next story
The Manager Who Slices the Whole Warehouse →
Want another term as a picture book? Request →