您当前的位置: 首页 > 

宝哥大数据

暂无认证

  • 2浏览

    0关注

    1029博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

缓慢变化维解决方法

宝哥大数据 发布时间:2020-08-04 22:21:02 ,浏览量:2

还有视频讲解在我的B站-宝哥chbxw, 希望大家可以支持一下,谢谢!

  维度建模的数据仓库中,有一个概念叫Slowly Changing Dimensions,中文一般翻译成“缓慢变化维”,经常被简写为SCD。缓慢变化维的提出是因为在现实世界中,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。这种随时间发生变化的维度我们一般称之为缓慢变化维,并且把处理维度表的历史变化信息的问题称为处理缓慢变化维的问题,有时也简称为处理SCD的问题。

缓慢变化维的几种常见解决方法: 第一种方法,直接在原来维度的基础上进行更新,不会产生新的记录:
更新前:
emp_rid(代理键)  emp_id(自然键)   emp_name  position
101212            12345           Jack      Developer

更新后:
emp_rid(代理键)  emp_id(自然键)   emp_name  position
101212           12345             Jack     Manager
第二种方法,不修改原有的数据,重新产生一条新的记录,这样就可以追溯所有的历史记录:
 更新前:
emp_rid(代理键)  emp_id(自然键)   emp_name  position   start_date   end_date
101212           12345             Jack     Developer  2010-2-5    2012-6-12

更新后:
emp_rid(代理键)  emp_id(自然键)   emp_name  position   start_date   end_date
201245           12345             Jack      Manager   2012-6-12  
第三种方法,直接在原来维度的基础上进行更新,不会产生新的记录但是只会记录上一次的历史记录:
 更新前:
emp_rid(代理键)  emp_id(自然键)   emp_name  position   old_position   
101212           12345            Jack      Developer  null

更新后:
emp_rid(代理键)  emp_id(自然键)   emp_name  position   old_position
101212           12345            Jack      Manager     Developer
关注
打赏
1587549273
查看更多评论
立即登录/注册

微信扫码登录

0.1140s