维度建模笔记

1、四步骤:

  • 确定业务过程:客户广告业务
  • 确定最小粒度:每个账户的日消费快照
  • 确定维度表:产品线维度、账户维度、
  • 确定事实表:主键、可加型数值

2、确保建模基于最细粒度,便于增加新的维度。

2、维度表主要包含不可加的分类信息用于筛选记录

维度表可以拆分为多个,是否拆分取决于维度体系的相关性,例如月份与季度关系密切,可以一起放入日期维度表,而日期与行业完全无关,如果放一起就会产生m*n种分类,需要拆分为日期维度表、行业维度表。

维度表随着规范化的深入,依次表现为:星型模型->雪花模型->范式建模,数据冗余逐渐减少,维护更为方便,但查询所需的连接逐渐增加。由于维度表本身体量不大,适当冗余是有意义的。

维度表应倾向于不符合范式。

3、事实表主要包含可加的数值型信息用于汇总计算

事实表不可出现空字段。(在事实表中增加新生效的维度时,需将旧记录的该列设为"不可用"而不是null)

事实表中应尽量避免出现退化维度,维度过多时需要将其按体系相关性整合为独立的维度表。

事实表应倾向于符合范式。

4、维度表和事实表的桥梁应该是代理关键字(符合特定规则的整数编号)而不是实际的账户名称、id等,

代理关键字本身符合范式,优势就在于便于维护和性能

5、事实表的存储:粗粒度长期事实表+细粒度近期事实表

6、事实表三种类型:

  • 事务事实表:时间点、合同号、处理流程(发起/批准/生效/失效),一行数据记录一个事务的信息。(虽然某一个时间点的快照+事务事实表就可以还原任意时间点的情况,但本身过于复杂)
  • 周期快照事实表(最常见):日、账户、消费金额,一行数据记录一个时间段内的汇总值。
  • 累积快照事实表:合同号、发起时间、批准时间、生效时间、失效时间,一行数据对应一个合同的生命周期。(伴随大量update)

7、数据仓库总线架构:企业数据仓库范围内维护一系列维度(时间、客户、产品、行业等),面向不同主题时,取其中的一部分子集作为自己的维度构建数据集市。

优势:1、重用资源,提升前期建设效率;2、接口规范,利于后期打通不同集市中的数据。

总线矩阵:列为维度,行为不同数据集市的主题

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值