Data warehouse
A database built for analysis: years of history, from many sources, in one place.
A data warehouse is a database designed to answer business questions, not to run an app. The app's own database is busy recording each sale as it happens; the warehouse receives copies of that data, plus data from the CRM, the payments provider and the ad platforms, and keeps years of history in one place, cleaned and organized so the pieces fit together.
The difference shows in the questions. An app asks 'what is in Ana's cart right now?', touching one row. An analyst asks 'how did sales per region change month by month over the last three years?', reading hundreds of millions of rows. Warehouses store data column by column and spread the work across many machines, so that second kind of question takes seconds. Amazon Redshift, Snowflake and Google BigQuery are well-known ones, and you talk to all of them in SQL.
Data usually arrives through ETL pipelines that run every night or every few minutes, and the tables are modeled around the business: facts (each sale) surrounded by dimensions (customer, product, date). Dashboards, monthly reports and forecasts are built on top. The warehouse becomes the single source of truth: when two teams disagree about a number, it is where they go to settle it.
Keep in mind
- Built for analysis over a long history, not for the app's moment-to-moment work.
- Stores data by columns and spreads each query over many machines.
- Fed by ETL pipelines from many sources, and queried with SQL.
- Amazon Redshift, Snowflake and Google BigQuery are common examples.