数据仓库之Data Vault模型总结

一,Data Vault模型有几个主要的组件,这里先总结一下:

1.Hub组件,是一个数据表,用于记录在业务应用中常用到的业务实体键值,如员工ID,发票号、客户编号、车辆号等。

表内包括几个关键字段:代理主键(Surrorgate Key),即hub表的主键;业务实体主键(Business Key),记录业务键值;装载时间(Load Data/Time Stamp),记录该业务键值的记录时间;数据源(Record Source),记录该业务键值的来源,以追踪数据。

2.Link组件,通过存储相关业务实体间Hub表的SK(Surrorgate Key),以记录一对多、多对多的业务实体间关系,如员工与企业的雇佣关系,账户与客户之间的关系等。

包括以下几个关键字段:代理主键(Surrorgate Key),即Link表的主键;Hub1 SK…Hubn SK,与此Link相关的Hub表SK,记录业务关系;装载时间(Load Data/Time Stamp),记录该业务关系的记录时间;数据源(Record Source),记录该业务关系的来源,以追踪数据。

3.Satellite组件,Hub表中业务主键所对应的业务描述,即业务实体的属性信息,这些信息具有时效性,随时间变化而可能产生变化,因此,Satellite组件内的记录均具有时间维,可记录实体属性的历史变化情况。根据实体属性变化频率的不同,可将一类实体的业务属性分为若干Satellite表,通过向Satellite分表追加记录,以实现在更小粒度下,实现第二类渐变维的保存历史数据特性。

Satellite组件包括以下关键字段:代理主键(Surrorgate Key),即Satellite组件表的主键;Hub或Link表的主键,Satellite联合主键之一,记录该Satellite组件所属Hub或Link;装载时间(Load Data/Time Stamp),Satellite联合主键之一,记录该描述信息在数仓中的有效时间;数据源(Record Source),记录该描述信息的来源,以追踪数据。

4.Point-In-Time辅助表,用于同一Hub的多个Satellite组件间的时间同步。因为同一业务实体的不同类型属性的更新频率不同,因此同一Hub的多个Satellite组件基本不会同步更新,因此,只需要在PIT表中记录在同一时点同时有效的Satellite组件描述信息即可,以保证查询到的数据是查询时点的实体状态。通过PIT表中的记录,可以清晰的分析业务实体属性的变化频率及频率差异。

客户姓名和地址之间的变化情况

PIT表用于解决多Satellite组件统一时点的问题,如果只有一个Satellite组件则不需要PIT表。

二,Data Vault与星型模型比较

1.星型模型容易产生数据孤立,不同主题间的数据不容易产生联系,而且一旦模型确定,想要追加维度,涉及的调整范围较大,灵活性不足;而Data Vault继承了3NF的优点,可以从整体上描述企业的业务数据或信息结构,而且能够实现数据模型的动态架构。

2.Hub组件与星型模型中的维度表非常相似:记录了业务实体的维度信息的键值,但其它描述信息记录在了Satellite组件中。

3.Link组件与星型模型中的事实表非常相似,只是没有度量数据,因此可在原有Link组件的基础上,追加度量数据,以记录事实数据。

=》

4.Satellite组件的设计可以解决星型模型中多事实冗余的问题,由于Link本身具有多维的特性,因此通过在Link上追加度量信息的方式也同步解决了多维事实数据的问题。在向Link追加度量信息时,如果事实数据类型很多时,可以将度量信息按更新频度或类型进行分类,然后分别存储在多个Satellite组件中,以降低由于更新频度不同等原因导致的事实数据冗余。方法是为Link表增加一个Link组件,用于存储不同度量类型的主键关系,然后为建立对应的Satellite组件,以记录事实数据。

5.由于hub和link的设计,可以使Data Vault模型的数据仓库具有很好的扩展性,追加Hub和Link非常方便,也不用考虑粒度问题;Link的优势在于每个Link都是追加在Link组件中的或者是增加一个新的Link来记录新的关联关系,而不需要更新Link的数据结构,这样他的扩展性和灵活性就非常强,这一点与星型模型具有很大的区别。

6.理论上来说,Data Vault模型通过使用Satellite组件,减少了事实表的数据冗余(通过考虑不同变化率的数据而分别存储),大大降低了存储的数据量,能够提升查询性能,但因为Data Vault模型根据3NF对表进行了理细粒度的拆分,使查询过程增加了连接操作,这方面的影响需要验证,是否能够突破理论,实现真实的性能提升,本人再起无法评论,需要实际应用的检验。

三,一些设计原则:

关于Hub:

1.Hub之间不能直接通过外键进行关联,而必须通过Link联接,以保证模型的灵活性和扩展性;

2.两个或两个以上的Hub都可以通过Link相联;

3.Hub的键会出现在其它组件中(Link和Satellite)中,否则Hub数据将被孤立。

关于Link:

1.Link可以与其他Link相联;

2.Hub主键固定,而不会发生变化;

关于Satellite:

1.Satellite必须存在关联的Hub或Link才有意义,否则无效;

2.Satellite问题包含装载时间,以记录历史数据,且没有重复数据;

3.可根据更新频率拆分Satellite;

Data Vault模型是由业务键(Hub)、业务关系(Link)、业务描述(Satellite)组成的

---------------------
作者:junweishiwo
来源:CSDN
原文:https://blog.csdn.net/junweishiwo/article/details/82838407
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/yuluoxingkong/p/10737358.html

时间: 2024-12-20 03:12:20

数据仓库之Data Vault模型总结的相关文章

Cross-Domain Security For Data Vault

Cross-domain security for data vault is described. At least one database is accessible from a plurality of network domains, each network domain having a domain security level. The at least one database includes at least one partitioned data table tha

BI 底座——数据仓库技术(Data Warehouse)

在开始喷这个主题之前,让我们先看看数据仓库的官方定义: 数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented).集成的(Integrate).相对稳定的(Non-Volatile).反映历史变化(Time Variant)的数据集合,用于支持管理决策.以上是数据仓库的官方定义. "操作型数据库"如银行里记账系统数据库,每一次业务操作(比如你存了5元钱),都会立刻记录到这个数据库中,长此以往,满肚子积累的都是零碎的数据,这种干脏活累活还不得闲的数据库

大数据理论体系总结--数据仓库管理与全链路数据体系

前言 就这样,大数据领域蓬勃发展了好几年,有很多伙伴执迷于技术,成为了分布式计算与存储的领域专家.也有很多伙伴执迷于数据,成为了行业的数据研发专家.当然还有很多小伙伴,热衷于工具系统开发,成为了数据技术专家.那么我们回过头来考虑,什么是大数据,什么又是数据仓库,什么又是数据技术.大数据其实是个非常笼统的感念,它是由数据仓库演化而来的数据与技术方法论,那么我们先说一下数据仓库的由来: 早在多年以前在Hadoop.Spark.Storm.Kafka等系列分布式计算与存储.消息中间件还没有成熟的时候,

数仓建模

基本概念: DW (Data Warehouse) 是一个面向主题的(Subject Oriented), 集成的(Integrated), 相对稳定的(Non-Volatile), 反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support). ODS (Operational Data Store) 是一个面向主题的, 集成的, 可变的, 当前细节数据集合. 用于支持企业对于即时性的, 操作性的, 集成的全体信息的需求. 与数据仓库(

程序员1月书讯

12月书讯中奖名单: xu_chenyang<精简:无印良品与品牌理念打造> 松阳<通关!游戏设计之道(第2版)> xiaerwoailuo<Python科学计算基础教程> SunnyYoona<数据架构:大数据.数据仓库以及Data Vault> 丁国华<设计的细节:日本经典设计透析> 好书推荐,在图灵书讯中选出你认为值得推荐的好书加推荐理由或推荐语,在文末评论里回复.下期书讯更新时,会在本期的书讯评论中选出若干优秀评论,获奖者可任选图灵书讯中

大数据的胖哥的方式(9)- 金融业数据仓库的逻辑模型FS-LDM

介绍: 大数据是不是海市蜃楼,来自小橡子只是意淫奥克斯,大数据的发展,而且要从头开始,基于大数据建设国家.项目-level数据中心行业将越来越多,大数据仅供技术,而非溶液,临数据组织模式,数据逻辑模式的问题. 它山之石可以攻玉,本文就数据仓库领域数据逻辑模型建设最负盛名的FS-LDM进行介绍,旨在抛砖引玉.希望可以给大家以启迪.參与交流请加群:347018601 一.概述 (1)什么是LDM 逻辑数据模型LDM是数据仓库的数据建设阶段为解决业务需求而定义的数据仓库模型解决方式,它是指导数据仓库进

数据仓库中的几种模型

数据仓库中常见的模型有:范式建模,雪花模型,星型建模,事实星座模型. 星型模型 星型模型是数据集市维度建模中推荐的建模方法.星型模型是以事实表为中心,所有的维度表直接连接在事实表上,像星星一样.星型模型的特点是数据组织直观,执行效率高.因为在数据集市的建设过程中,数据经过了预处理,比如按照维度进行了汇总,排序等等,数据量减少,执行的效率就比较高. 雪花模型 雪花模型也是维度建模中的一种选择.雪花模型的维度表可以拥有其他维度表的,虽然这种模型相比星型模型更规范一些,但是由于这种模型不太容易理解,维

数据仓库数据库设计方法---关系模型和多维模型比较分析

数据仓库中广泛采用的数据库设计模型有两种:关系型和多维型.普遍认为在数据仓库的设计方法中关系模型是“Inmon”方法而多维模型是“Kimball”方法. 先来看下关系模型,关系型数据以一种称为“标准化”的形式存在.数据标准化是指数据库设计会使数据分解成非常低的粒度级,标准化数据以一种孤立模式 存在,这种情况下对数据表里的数据关系要求很严格.一般遵循3NF范式.采用关系型设计的数据库一般具有较强的灵活性和多功能性(可以支持数据的多种视 图). 再来看下多维模型,多维模型一般有星型模式.雪花模式.混

[数据仓库]-0023-独一无二的数据仓库建模指南系列教程升级版

2018最新最全大数据技术.项目视频.整套视频,非那种淘宝杂七杂八网上能免费找到拼凑的乱八七糟的几年前的不成体系浪费咱们宝贵时间的垃圾,详细内容如下,视频高清不加密,需要的联系QQ:3164282908(加Q注明博客园). 课程名称: 独一无二的数据仓库建模指南系列教程升级版 本课程也有部分免费的视频课程<数据仓库建模指南系列教程>,大家可以前往学习和了解 https://edu.hellobi.com/course/54/lessons [温馨提示:1. 你可以在PC端浏览器或者微信收藏该页