维度设计之维度变化

维度变化的描述
与事实表变化相比,维度表变化相对缓慢,如何描述维度表的变化,有以下三种方式:

1)重写维度值:这种方式直接覆盖原数据
2)插入新维度行:可以保留历史数据,但不能将变化前后的事实数据归一化
3)添加维度列:添加一个新列表示当前类目
三种方式根据对历史数据的具体需求,选择相应的方法

快照维表
基于数据仓库的更新周期,每个周期保留一份全量的维度表快照数据,可以随时获取当天的维度数据信息。这种方式使用便捷,但是浪费了极大的存储空间

极限存储
1)历史拉链存储:新增两个时间戳,记录变更起始时间,将所有以天为粒度的变更数据记录下来,起始时间也作为分区字段。假设一个场景,卖家1第一天上架AB商品,第二天下架B商品,上架C商品

使用极限存储的方式每天更新变化数据,获取某一天数据需要限制起始时间,如访问1月1日数据,stat<=20160101 and end>20160101

2)分月做历史拉链表可以减少分区的数量

3)通常使用存有近期数据的全量数据表+历史拉链表配合使用

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值