【数据仓库】简介
一、背景
前段时间刚好从事相关的工作,趁着有空,将相关搜集的资料整合记录分享一下,欢迎大家补充。
二、概念
数据仓库(Data Warehouse) 是一种对数据的管理和使用的方式,它是一整套包括了etl、调度、建模在内的完整的理论体系。
[参考]
三、分层架构
1.概念
(1)数据仓库分层是什么?
(2)好处:易维护 / 清晰的数据结构 / 减少重复开发 / 统一数据口径 / 简化 / 灵活化和可扩展化 等等。
2.主要分类
(1)单层体系结构
(2)双层体系结构
(3)三层体系结构:这是最常用的,接下对此进行展开介绍;
3.三层结构
(1)数据来源层:ODS(Operational Data Store)
(2)数据仓库层:DW(Data Warehouse)
可细分为(可选):
- 明细层:DWD(Data Warehouse Detail)
- 中间层:DWM(Data WareHouse Middle)
- 汇总层:DWS(Data WareHouse Servce)
(3)应用层:APP(Application)
[参考]
2. 书《data warehouse in action》
四、数据建模
1.流程
业务建模 → 领域建模 → 逻辑建模 → 物理建模
2.方法
(1)范式建模法(Third Normal Form,3NF):如窄表;
(2)维度建模法
- 星型模式(Star-schema)
- 雪花模式(snowflake schema)
- 事实星座模式(Fact Constellation)或星系模式(galaxy schema)
(3)实体建模法
[参考]
2. 数据仓库多维数据模型设计
3. 数据仓库之数据分析
4. 数据仓库之宽表
五、例子
1. 马蜂窝数据仓库的架构、模型与应用实践
2. 大数据环境下该如何优雅地设计数据分层(文章下半部分)