首页/数据/数仓建模速查/SCD 维度成员重新激活
维度与事实设计149 条

SCD 维度成员重新激活

已失效成员重新出现时不要复用旧版本行,而是插入新的生效区间并置当前标志;直接改旧行 end_date 会篡改历史。

数仓建模速查数据更新于 2026-10-12
检测成员重新出现在源端
动作插入新版本区间
风险与迟到修订规则混淆

重新激活

重新激活
-- 重新出现:新起一段生效区间(不修改历史行)
INSERT INTO dim_customer
  (customer_id, name, start_date, end_date, is_current)
VALUES (:id, :name, :batch_dt, '9999-12-31', 1);
「重新激活」与「迟到数据修订」要用业务规则区分:源系统是否会恢复已停用记录。

易错点

  • 改动旧行 end_date 复用,历史期间被凭空延长
  • 复活与迟到规则不清,同一成员反复开合

数据来源与参考

  • Kimball Group:缓慢变化维技术
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌