What?

数据仓库(Data Warehouse), 简称数仓(DW).

数仓的概念:

由Bill Inmon于1990年提出数仓的概念:

数据仓库之父比尔.恩门(Bill Inmon)在1991年出版的“Building the Data Warehouse”(《建立数据仓库》)一书中所提出的定义被广泛接受——数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。

根据这个定义, 我们可以了解数仓的几个特征:

  • 主题性 (即面向主题, 主题是指用户使用数据仓库进行决策时所关心的重点方面, 如收入, 客户, 销售渠道等)
  • 集成性 (数据仓库的数据有来自于分散的操作型数据,将所需数据从原来的数据中抽取出来,进行清洗, 加工与集成,统一与综合之后才能进入数据仓库, 也就是我们平时常听到的ETL)
  • 稳定性
  • 时变性 (反映历史变化)

Why?

为什么要有数仓?

或者这样问: Excel不行吗? 传统dbms不行吗?
为了将业务处理系统 & 分析系统分开, 针对各自不同特点设计不同的架构.

数据仓库 vs. 数据库

其实上面提到的将业务处理系统 & 分析系统分开, 也就是数据库和数据仓库的区别.

数据库-OLTP, 数据仓库-OLAP. 数据库我们最熟悉的就是增删改查的事务处理, 而数仓则侧重分析.

本质区别在于传统的数据库是一个存储引擎,而数据仓库是一套数据组织和应用的方法论,是提升数据到信息转化效率的工具,需要很多的支持系统来协助(存储系统、计算引擎、调度系统、各种大数据组件等),最后达到支持分析决策的目的.

我们也可以理解为, 数据库是数据仓库的数据源之一 (其它数据源还有比如说日志Excel等等).

OLTP vs. OLAP

如果想了解具体 OLTP 和 OLAP 的区别, 可以见另一篇文章:
语雀内容

Untitled picture.png

数仓的存在意义:
为企业提供战略决策支持->到现在为企业的各个level提供数据支持, 数据驱动的服务, 分析, 进行趋势预测, 还可以提供海量数据给算法模型做训练, 数据分析师取数进行业务分析等等


数仓 vs. 数据中台

数据中台通常是包装成统一对外提供的服务
数据中台是包含数仓的, 数仓是服务于数据中台的其中一个核心模块

阿里的一个数据架构图:
Untitled picture.png


数仓的模型设计

可以参考另一篇文章
语雀内容


More details

数仓的分层:
(tbc…)


References:
数据仓库-百度百科: https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E4%BB%93%E5%BA%93/381916?fr=aladdin
网易云课堂-数据科学之企业级数据仓库 南头居士: https://study.163.com/course/courseMain.htm?courseId=1209564814&share=1&shareId=1404202659