数据仓库 之拉链表、增量表、全量表

简单了解概念版本:https://blog.csdn.net/houfengfei668/article/details/79619215

一、拉链表

记录每个订单状态的历史变化

  1. dw_begin_date表示该条记录的生命周期开始时间,dw_end_date表示该条记录的生命周期结束时间;
  2. dw_end_date = ‘9999-12-31’表示该条记录目前处于有效状态,是最新状态。

如何记录变化?

举例:order1在20号创建,21号支付,则创建记录的end_date => 20号;支付记录的begin_date => 21号,end_date为9999

适用条件

  • 数据量比较大;
  • 变化的比例和频率不是很大,比如,总共有1000万的会员,每天新增和发生变化的有10万左右;
  • 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态
  • 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;

好处

  • 满足反应数据的历史状态,又可以最大程度的节省存储

详情参考链接:http://lxw1234.com/archives/2015/04/20.htm

 二、历史状态拉链表如何更新

详细参考链接:http://lxw1234.com/archives/2015/08/473.htm

 

posted @ 2020-11-11 12:25  PEAR2020  阅读(519)  评论(0编辑  收藏  举报