数据仓库中常见的一些表:
全量表:记录每天的所有的最新状态的数据,
增量表:记录每天的新增数据,增量数据是上次导出之后的新数据。
快照表:按日分区,记录截止数据日期的全量数据
切片表:切片表根据基础表,往往只反映某一个维度的相应数据。其表结构与基础表结构相同,但数据往往只有某一维度,或者某一个事实条件的数据
拉链表:记录每条信息的生命周期,当一条记录的生命周期结束,就会重新开始一条新的记录,并把当前日期放入生效开始日期。如果当前信息至今有效,则在生效结束日期中填入一个极大值(如9999-99-99),一般在数仓中通过增加start_date ,end_date 两列来表示。
这里重点介绍一下拉链表:
1、为什么要做拉链表?
拉链表适合于:数据会发生变化,但是大部分是不变的。比如常见的订单表,里面的订单信息的订单状态字段会从未支付、已支付、未发货、已完成等状态经历一周甚至更长的时间,但实际上大部分时间是不变的。
在实际生产环境中,如果数据量规模较大,那么按照每日全量的方式保存效率就会很低了