【数据仓库】简介

一、背景

前段时间刚好从事相关的工作,趁着有空,将相关搜集的资料整合记录分享一下,欢迎大家补充。

 

二、概念

数据仓库(Data Warehouse)  是一种对数据的管理和使用的方式,它是一整套包括了etl、调度、建模在内的完整的理论体系。

[参考]

1. 十问十答,带你了解数据仓库

2. 大数据环境下该如何优雅地设计数据分层

 

三、分层架构

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)

【数据仓库】简介

[参考]

1. 大数据环境下该如何优雅地设计数据分层

2. 书《data warehouse in action》

3. 数据仓库架构原理分析、概念详解和组件介绍-数据仓库入门知识

4. 十问十答,带你了解数据仓库

 

四、数据建模

1.流程

业务建模 → 领域建模 → 逻辑建模 → 物理建模

2.方法

(1)范式建模法(Third Normal Form,3NF):如窄表;

(2)维度建模法

  • 星型模式(Star-schema)
  • 雪花模式(snowflake schema)
  • 事实星座模式(Fact Constellation)或星系模式(galaxy schema)

(3)实体建模法

[参考]

1. 浅谈数据仓库建设中的数据建模方法

2. 数据仓库多维数据模型设计

3. 数据仓库之数据分析

4. 数据仓库之宽表


五、例子

1. 马蜂窝数据仓库的架构、模型与应用实践
2. 大数据环境下该如何优雅地设计数据分层(文章下半部分)