ETL多层处理设计方式解决多数据源.docxVIP

ETL多层处理设计方式解决多数据源.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ETL多层处理设计方式解决多数据源

1、引言 ??? 数据仓库是一个面向主题的、集成的、不可更新的且随时间不断变化的数据集合,是支持管理人员决策的数据依据。它的目的是建立结构化的数据存储空间,将不同数据源的数据分离出来,形成统一、有效的数据集,并最终加工、整合成决策支持所需要的数据。 ??? ETL 是英文Extract、Transform、load 的缩写,是指从各种异构应用系统中抽取数据,并对抽取到的数据进行加工转换处理,最后加载到数据仓库DW(Data Warehouse)中的过程,它是保证数据仓库数据正确性和有效性重要过程,也是决策支持项目实施成败的关键因素。抽取是指把数据从源系统抽取的过程;数据转换是指根据需求将数据按照特定规则进行清洗、转换、加工并统一数据粒度的过程;加载是将加工好的数据装入目标数据库的过程。根据大量的实践经验得出ETL规则设计和实施约占整个项目工作量的60%-80%。 ??? 目前的ETL 实现有两种方式,一是在决策支持项目的实施过程中,针对数据源系统再另外定制一套专门的ETL系统,这种方式的好处在于ETL 工具的针对性对抽取效率和数据质量进行保证,缺点在于决策支持系统本身就是工程量巨大的项目,在此基础上再另外投入大量的人力、时间开发专门的ETL系统增加了项目实施的代价。二是借助专业ETL 厂商提供的现成的ETL 工具。目前较为成熟的ETL工具有Ascential sofware 公司的Datastage 和Informatica 公司的产品Informatica,这些产品一般对自己厂商的相关产品可以进行良好的支持且能发挥最大效率,缺点在于其结构相对封闭,对其他厂商产品的支持也很有限。所以在进行项目的实施过程中,要结合实际情况选择有效的ETL 实现方式。 ??? 本文将以进出口贸易公司的决策支持项目实施为例,在借助ETL工具Informatica 的情况下,结合数据仓库存储设计、数据库多重粒度划分,提出一种面向数据仓库的ETL 多层实现策略。 2、ETL多层实现策略 2.1 数据仓库存贮区域设计 ??? 良好的数据存储区域设计可以简化ETL 过程中的数据转换,提高抽取效率。通常情况下,传统的ETL 架构设计是将数据的抽取、清洗、转换及加载放在同一过程完成,但是对于大型的进出口贸易集团公司来说,其业务种类繁多,完成信息化建设的过程中又都针对不同业务,在不同时期分别建立了专门的业务系统,这导致数据来源的复杂性。而传统的ETL 架构将处理复杂数据放在一个过程中完成无形的增加了ETL 转换逻辑难度,增加了数据源系统的负担。这种复杂性首先体现在数据源系统数据库类型的不同。大型进出口贸易公司的数据来源多种多样,数据分布于大量异构系统上,其业务系统数据库管理系统DBMS 的类型不尽相同,无法采用单一的抽取、加载方式。其次,来自不同异构系统的数据对于同一个指标字段在数据类型、字段长度的存储上各不相同。例如院分销系统是贸易公司必不可少的业务系统之一,在分销系统中销售数量为numeric(22,6),而在物流系统中字段出库数量为numeric(18,3)。又比如,同种商品的商品编号字段在不同系统存储有不同的编码定义。诸如此类的不一致问题为后继的数据加工带来诸多不便。 ??? 在规范目标数据源建模的同时,更需要通过ETL进行数据转换(Transform)的操作,将数据进行标准化。另外,从不同数据源抽取的数据,在粗细粒度上也会存在差异。为汇总计算带来不便。 ??? 基于以上异构系统数据源存在的复杂数据问题,可以在ETL 过程中采用以下数据存储区域设计方案,此方案对大型的进出口贸易公司存在的数据来源多样、ETL 转换逻辑复杂等问题起到了良好的作用。 图1 ETL 过程中数据存储区域设计 ??? 该数据存储区域设计包括数据缓冲层(stage 层)、明细数据层(ODS 层)、整合层及展示层。在各个层次之间分别有针对性的实现ETL过程的中数据抽取、转换、加载操作。 2.2 各个存储区域间ETL的实现 ??? 1) 数据源到缓冲层(stage 层)。针对不同数据源的数据库服务器类型,采用多种抽取方式相结合,将各个业务系统的元数据加载到此存储区域。期间不对数据进行任何转换处理和加工,其目的在于在目标数据库中最大化的呈现源系统数据的面貌,使得后继错误排查及纠正工作不会对源业务系统数据库造成影响。此存储区域将保留业务系统所有全量及增量数据。在增量抽取到缓冲层时增加抽取时间字段,可以标示出每日增量情况。 ??? 2)缓冲层到明细数据层(ODS 层)。ODS 层存储标准化后的源系统数据。所谓标准化是指将各个业务系统例如商品代码、客户代码等诸如此类带有源业务系统个性的数据进行统一的规范化编码。例如:在分销系统中商品 铸钢 的商品编码为800002637,在结算系统中同样是商品

您可能关注的文档

文档评论(0)

wannian118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档