数据集市,Inmon架构及Kimball架构(维度建模)
在数据仓库持续演进的过程中,逐渐产生了不少的架构方法,主要有Inmon架构,Kimball架构,数据集市架构及混合架构等。

一 数据集市
先说说数据集市吧,数据集市也不是之前单独按照每个部门去搭建的,都是出自搭建好的企业级数据仓库。属于从属数据集市,可以有效消除各部门数据不一致的情况。
早期数据集市:

从属数据集市:

二 Inmon架构
我们先来看下面一张图

可以发现:
-
Inmon架构的数据仓库存储的是最细粒度的数据
-
Inmon架构的数据仓库是符合三范式的
-
Inmon架构的数据只能从数据集市获取,不能跨过数据集市直接从企业级数据仓库中获取。
三 Kimball架构

如上图所示,可以发现kimball架构使用多维模型设计,所以分为事实表和维表,我们在使用数据的时候,可以直接查询数据仓库里面的数据,kimball架构的数据仓库是没有实际存在数据集市的,如果非要区分,可以通过主题域划分获取自己的数据集市。
对于kimball架构而言,大体上又分为以下3类

3.1 星型模型

3.2 雪花模型

3.3 星座模型

3.4 星型模型与雪花模型区别
-
星型模型不需要多次join操作,减少查询时间,提升查询性能
-
星型模型存储数据有冗余,浪费存储,不过也是以空间换时间的表现
四 Inmon架构与kimball架构区别
-
Inmon是自上而下的瀑布流开发方式,以数据源为导向,偏向三范式数据仓库建设,数据存储为最细粒度,而Kinball架构是自下而上的开发方式,以需求为导向,一般使用维度建模方式,数据存储粒度来说,最细粒度及汇总数据都是可以提供的
-
Inmon架构存在真实数据集市,而Kimball数据架构不存在真实数据集市,只有通过主题域构建的虚拟数据集市。
-
Inmon数据仓库数据的读取只能通过数据集市,不能直接读取数据仓库的数据,但是Kimball数据架构的数据仓库数据可以直接对外提供。

转载:https://mp.weixin.qq.com/s/H7Y2DdfbXCktI54g9l54XQ

浙公网安备 33010602011771号