ETL数据加载策略

本文所提到的数据加载策略为OLTP系统作为源系统,并进行
ETL数据加载到OLAP系统中所采用的一般数据加载策略。
根据该方式的特定性,此时ETL数据加载一般存在以下四种方
案:
1、        时戳方式
需要在OLTP系统中业务表中统一添加时间字段作为时戳(如表中已有相应的时间字段,可以不必添加),每当OLTP系统中更新修改业务数据时,同时修改时戳字段值。当作ETL加载时,通过系统时间与时戳字段的比较来决定进行何种数据抽取。
优点:ETL系统设计清晰,源数据抽取相对清楚简单,速度快。可以实现数据的递增加载。
缺点:时戳维护需要由OLTP系统完成,需要修改原OLTP系统中业务表结构;且所有添加时戳的表,在业务系统中,数据发生变化时,同时更新时戳字段,需要对原OLTP系统业务操作程序作修改,工作量大,改动面大,风险大。
2、        日志表方式

在OLTP系统中添加系统日志表,当业务数据发生变化时,更新维护日志表内容,当作ETL加载时,通过读日志表数据决定加载那些数据及如何加载。
          优点:不需要修改OLTP表结构,源数据抽取清楚,速度较快。可以实现数据的递增加载。
          缺点:日志表维护需要由OLTP系统完成,需要对OLTP系统业务操作程序作修改,记录日志信息。日志表维护较为麻烦,对原有系统有较大影响。工作量较大,改动较大。有一定风险。

3、        全表比对方式
          在ETL过程中,抽取所有源数据,并进行相应规则转换,完成后先不插入目标,而对每条数据进行目标表比对。根据主键值进行插入与更新的判定,目标表已存在该主键值的,表示该记录已有,并进行其余字段比对,如有不同,进行Update操作,如目标表没有存在该主键值,表示该记录还没有,即进行Insert操作。
        优点:对已有系统表结构不产生影响,不需要修改业务操作程序,所有抽取规则由ETL完成,管理维护统一,可以实现数据的递增加载。没有风险。
        缺点:ETL比对较复杂,设计较为复杂,速度较慢
4、        全表删除插入方式
          每次ETL操作均删除目标表数据,由ETL全新加载数据。
        优点:ETL加载规则简单,速度快
        缺点:对于维表加代理键不适应,当OLTP系统产生删除数据操作时,OLAP层将不会记录到所删除的历史数据。不可以实现数据的递增加载。

   当作系统数据加载策略方案时,基于以上所列方法,及现有系统
考虑:
(1)、如果所集成OLTP系统为其他产商产品,则应尽量的降低因ETL而对现有系统产生的影响,及系统风险性。而性能的影响则可以通过两方面解决,一部分由硬件的升级进行解决,因为ETL除读表及写表操作外,所有转换均由ETL服务器在内存中完成,故高配置服务器将大大提升ETL运行速度;一部分由加载时机进行控制,加载时机采取在系统较为空闲时加载,同时并行多个加载等,可以降低对运行系统的影响。所以可以使用全表比对递增加载数据的方式作为此类系统的ETL数据加载规则。
(2)、如果原OLTP系统为自己开发产品,此次所作OLAP系统为在原系统上的系统,则可以考虑使用时辍或日志表方式,区别仅为对原系统的影响大小。
(3)、当数据实现递增加载时,OLAP系统中的聚合表,可由OLAP中的事实表数据二次ETL产生,此时由于OLAP数据的完整性与准确性,可以使用全表删除插入方式。
 
 
 
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28573466/viewspace-772495/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28573466/viewspace-772495/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值