拉链表,记录每条信息的生命周期,一旦一条记录的生命周期结束,就重新开始一条新的记录,并把当前时间放入生效开始日期。如果当前信息至今有效,在生效结束日期中填一个极大值(如9999-99-99)。
拉链表适合于:数据会发生变化,但是变化频率并不高的维度。
比如:用户信息会发生变化,但是每天变化的比例不高。如果数据量有一定的规模,按照每日全量的方式保存效率很低(一个用户一段时间内状态没有发生过变化,重复的信息保存了很多份,每日全量表不管用户状态有木有变化全都保存了下来)。
通过 生效开始日期 <= 某个日期 且 生效结束日期 >= 某个日期,能够得到某个时间点的数据全量切分。