-
在做分析的时候,所有的表都要考虑到增量的情况
-
维度
- 数据量少,直接覆盖即可
- 数据量大,根据时间来抽取最新的即可
有的表,本质上是实时表,但是可能做维度的作用。
比如看板4 的 itcast_clazz表,是学生的报名信息表。
本质上是一个学生报名某个校区某个学科产生的事实时间,本质上是事实表的属性
但是在看板4中,是维度的作用。
对于这个表,放入DIMEN层,或者ODS层都可以。
做增量的时候,对于
任何有事实属性的表
,都要考虑到它的增量采集问题,也就是-
选择SCD的模式,比如选择SCD2(保留全部的历史状态)
- 选项SCD的实现模式,比如SCD2
- 通过增加表来实现(每一次采集都产生一个新表)
- 通过增加列来实现(在表中增加对行数据的有效期做判断)(比如valid_start_from和valid_end_from)
- 选项SCD的实现模式,比如SCD2
-
事实
考虑到它的增量采集问题,也就是
1. 选择SCD的模式,比如选择SCD2(保留全部的历史状态) 2. 选项SCD的实现模式,比如SCD2 1. 通过增加表来实现(每一次采集都产生一个新表) 2. 通过增加列来实现(在表中增加对行数据的有效期做判断)(比如valid_start_from和valid_end_from)
-
不是所有的事实表都需要做历史信息的判断处理。
就是指这个事实表中的事件,它的
状态就1个
,也就是生命周期从开始,就结束
了。比如:打卡按指纹考勤,这种事件,从开始,就结束了。因为这个事件不会有状态的变更。只有一个状态就是:几点几分谁打卡了。