数据仓库(Data Warehouse)是面向分析决策的数据存储系统,将来自各业务系统的数据整合、清洗、建模后,为 BI 报表、数据分析、机器学习提供统一的数据基础。
为什么需要数据仓库
| 问题 | 数据仓库解决方案 |
|---|
| 数据散落在各系统(MySQL、MongoDB、日志) | 统一汇聚到一处 |
| 业务库不适合跑复杂查询 | 面向分析优化(列式存储、预计算) |
| 指标口径不统一 | 通过建模统一指标定义 |
| 历史数据查不到 | 全量/增量保留历史快照 |
数据仓库 vs OLTP 数据库
| 对比 | OLTP(如 MySQL) | OLAP / 数据仓库 |
|---|
| 目的 | 在线事务处理 | 分析决策 |
| 数据量 | GB 级 | TB~PB 级 |
| 查询模式 | 单行 CRUD | 全表扫描、聚合 |
| 数据更新 | 频繁 | 批量加载 |
| 建模方式 | 三范式 | 维度建模(星型/雪花) |
知识体系全景
文档导航
| 文档 | 核心内容 | 面试频率 |
|---|
| 维度建模 | 星型模型、雪花模型、事实表、维度表 | ⭐⭐⭐⭐⭐ |
| 分层架构 | ODS/DWD/DWS/ADS 四层分层 | ⭐⭐⭐⭐⭐ |
| 缓慢变化维 | SCD Type 1/2/3、拉链表 | ⭐⭐⭐⭐ |
| 数据仓库设计 | 宽表、主题域、数仓规范 | ⭐⭐⭐⭐ |
| 离线数仓 vs 实时数仓 | Lambda/Kappa 架构、流批一体 | ⭐⭐⭐⭐ |
| 数仓工具对比 | Hive/Spark/dbt/ClickHouse 选型 | ⭐⭐⭐ |
相关链接