ETL面临的问题

ETL面临的问题

一, 数据同步
二, 数据关联

 

一, 数据同步

业务系统的数据库变化了, 怎么同步到DW中, 常见方法如下

 

1, 全部删除, 重新导入
   优点 : 简单
   缺点 : 无法保存历史记录, 时间代价大

 

2, 时间戳增量更新
   优点 : 简单, 快速
   缺点 : 必须有时间戳字段

 

3, 全表对比增量更新
   优点 : 限制条件少
   缺点 : 时间代价昂贵, 处理复杂

 

二, 数据关联

 
数据仓库中保存维度数据的历史版本, 如同一个公司, 在2008年名称叫"股份A公司", 2009年1月1日升级了叫"集团A公司", 原来的版本1, 现在版本2; 很显然2008年以前的交易数据, 我希望看到的收款公司 应该是 "股份A公司", 2009年产生的交易, 里面的收款公司 应该是 "集团A公司".

 

前提是:业务系统没有版本的概念, 就记录现在的.

 

怎么才能使ETL抽取的数据正确关联恰当的公司名称?

 

采用扩展ID 就是:

 

扩展ID == ID * 1000 + version

 

一般来时 一个公司能变更的次数不可能超过999次, 如此公司存在100年, 一年就要变更10次, 这也太夸张了.

采用扩展ID后, 数据就能正确关联到相应的数据了.

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值