美文网首页
数仓建模基本类型

数仓建模基本类型

作者: 浮zai梦里 | 来源:发表于2019-08-12 22:43 被阅读0次

主要的建模思想大致有三类,三范式,纬度建模,还有datavalt。

三范式

熟悉关系型数据库的都知道,三范式建模主要可以避免数据冗余。如果数据仓库中采用这种建模方式,还有另外的好处就是可以直接将关系型数据库中数据直接导入数仓,减少了很多的建模工作。三范式建模的一个显而易见的缺点就是查询性能,因为需要跨表查询。如今存储成本已经不再是限制大数据发展的主要因素了,所以个人认为增加冗余而减少查询开销是有必要的。

Inmon 坚持三范式建模的原因还有:

  1. 数据仓库中的数据应该不违反任务业务规则
  2. 数仓本身使用的技术包括建模应该越通用越好
  3. 必须尽可能将数据装入数据仓库,因此冗余性降低利于提高速度

维度建模

维度建模是大师kimball的观点,和关系型建模相反,维度建模通过增加冗余来增加查询速度,他将业务主题对应的多个实体冗余记录,将共有维度,变化缓慢的属性抽出形成维度表。与关系型建模面向实体,维度建模主要面向业务。在数仓建模中,维度建模用的最多。
一般的建模流程:

  1. 选择业务流程
  2. 确定粒度
  3. 确定事实
  4. 确定维度

有些时候,会对维度进一步的细化,就成了雪花模型

Data Vault

DataVault相当于上面两种建模的折中。用的比较少,至少我没接触过。
DataVault包含3种类型的表,中心表,链接表,附属表(描述表,在我看来就是维度表)。

和关系型建模相比,每个中心表对应业务的每个实体,这点没有变。但是中心表不再包含属性键值,属性键被写到附属表,只包含业务主键。实体之间的联系不再由外键约束,而是在链接表定义。将关系型数据导出也很方便,不需要做太多建模工作,只需要3中表抽出即可。

个人比较喜欢维度建模,简单易懂,当然还需要针对不同场景区分

相关文章

  • 数仓建模基本类型

    主要的建模思想大致有三类,三范式,纬度建模,还有datavalt。 三范式 熟悉关系型数据库的都知道,三范式建模主...

  • 数仓与数仓建模

    一、数据仓库 **英文名称为Data Warehouse,可简写为[DW]或DWH。是为企业[https://ba...

  • 从0开始研究数据仓库的一些想法

    研究方向 数仓理论:分层设计理论、维度建模理论基于OLAP数仓:adb/clickhouse/greenplum/...

  • 数仓建模—指标体系

    数据仓库系列文章 数仓架构发展史[https://www.ikeguang.com/?p=1582] 数仓建模方法...

  • 数仓入门基础-6-数仓建模

    个人博客:https://renwula.github.io/,本系列基于互联网公司数仓,使用hive搭建数仓 ...

  • 数仓建模—数据集市

    数据仓库系列文章(持续更新) 数仓架构发展史[https://mp.weixin.qq.com/s/lwv1P8P...

  • 数仓建模—ID Mapping

    早晨起床的时候,发现自己尿分叉,我没有多想,简单洗洗就匆忙出门。路过早餐店,我看到师傅熟练的拉扯一小块面团,拉至细...

  • 平台工具+数仓构建数据产品(二)

    @阿泱 一个热爱数据产品的工具人。 “数据人创作者联盟”成员。 接:业务数仓建模,平台工具+数仓构建数据产品[ht...

  • 传统数据仓库在大数据平台上的进化

    模型的进化 一、传统数仓的3NF模型&维度模型 数据仓库建模中维度建模和3NF建模并不是OR的关系,它们更像是上下...

  • 数仓建模 - 维度 vs 关系

    数据仓库模型建设 模型概念 维度建模 关系建模 建模实现对比 模型选择 Data Vault 简介 数据仓库模型建...

网友评论

      本文标题:数仓建模基本类型

      本文链接:https://www.haomeiwen.com/subject/dqqfdctx.html