网站大量收购闲置独家精品文档,联系QQ:2885784924

同步与异步ETL架构的比较.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  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 架构的比较背景介绍 数据的抽取,转换和加载 (ETL, Extract, Transform, Load) 是构建数据仓库过程中最复杂也是至关重要的一个步骤,我们通常用两种办法来处理ETL流程: 一种是异步(Asynchronous) ETL方式, 也称为文本文件(Flat file)方式。另外一种是同步(Synchronous) ETL方式,也称为直接传输 (Direct transfer) 方式。根据项目的各自特点,合理选择恰当的数据抽取流程,确定抽取过程中的监督核查机制,对于DW项目的成功可以起到事半功倍的作用。在第一种模式中,数据被从源数据库抽取到文本文件中,通过网络传输被传送到目标服务器,然后再装载到目标数据库中。对于后一种模式,顾名思义,数据抽取过程是直接从源到目标的,没有通过中间路径或者手段。在数据仓库工程的开发中,这两种体系架构被普遍采用,不能绝对地评价哪一种模式好,哪一种模式坏。运用之妙,存乎一心,完全根据系统架构师或高级开发人员根据项目特点(如数据库分布,网络连接……) 灵活实施,随机应变。 本文目的是比较两种体系架构各自的不同点和优缺点,并基于本文的假设条件,分析两种体系架构各自的特点和适用范围。本文共分为以下几个部分: #8226; 系统结构图比较 #8226; 假设条件 #8226; 特点比较 #8226; 各自适用的环境 系统结构图比较 图1展现了异步ETL流程的架构,图中源和目标数据库分别位于独立的数据中心。负责ETL抽取功能的应用程序可以安装在源数据库,也可以安装在目标数据库,当然更可以安装在独立(第三方)的服务器上。从图1可以清楚地看到ETL的顺序是: 源数据库 文本文件 文本文件#61664;目标数据库 图2 展现的是从源到目标的同步ETL流程的架构图,抽取过程没有任何中间步骤过渡,其顺序是: 源数据库 目标数据库 Fig.1 Asynchronous architecture 图1 异步ETL系统体系结构 ? Fig.2 Synchronous architecture 图2 同步ETL系统体系结构 假设条件 依循数据仓库的工作方式,原始资料由源数据库被抽取出来后,将在中间过程被写入到”Operational Data Store”(ODS),ODS是被设计用来存储中间数据和核查校验数据的。通过ODS,数据将被萃取、预先被计算及整理,而后被导入数据仓库作进一步的报表生成与分析。所以通常意义的ETL过程涵盖了两个方面的内容:1. 从源数据库到中间步骤的ODS; 2. 从ODS到最终的数据仓库。本文所讨论的数据装载过程包括如下的假设条件: #8226; 数据的抽取过程可以是数据的完全(refresh)抽取或者是增量(incremental)抽取。完全抽取是指数据从其源系统中完整的抽取;然后,由转换及加载步骤决定需要哪些数据。增量抽取仅抽取那些自上次抽取以来发生变化、插入或删除的数据。这样往往就会为转换和加载步骤单独提供所需的数据。 #8226; 目标数据库存放数据的时间区间比源数据库长。例如源数据库存放的是3个月的交易生产数据,ODS存放了1年左右的数据,而数据仓库存放了3-5年的历史数据。 #8226; 源数据的记录中应该有特定的时间戳字段来表明数据是何时更新的。这样在ETL抽取过程中就可以根据装载的需要凭借使用时间参数来选择所需要的数据。与之相对应,目标数据库也应该保留说明数据是何时插入或者更新的字段。一来是为了维护的需要,同时今天的目标可能是明天的源,保留这些字段可以具有很大的灵活性。例如企业如果有基于数据仓库基础上的数据集市系统的应用,需要抽取数据仓库的数据作为数据集市的输入,这些字段就可以作为用来比较的参数值使用。 #8226; 许多数据库系统保留了历史记录变动的详细情况。例如对于同一客户记录来说,由于其居住城市或者地址的变动,记录的内容也会发生相应变动,就会产生许多历史记录,有些应用需要系统保留这些历史记录以便于回溯(Keep Track)。本文假定目标数据库只需要抽取最近更新的一条数据,对于历史的陈旧数据,可以置之不理。 两种体系结构的特点比较 Table 1 compares several features of the two architectures. ? 表1. 列出了两种不同体系结构的各自特点 异步(Asynchronous ) 同步(Synchronous ) 比同步模式提供了更好的数据处理性能,需要更少的处理时间,因为通过网络传输文件的速度(FTP)速度上比直接通过数据库存取数据要快很多。 要避免性能瓶颈问题的解决办法是缩小每次抽取的时间粒度,例如将抽取周期定为每日抽取,这样可以保证每次抽

文档评论(0)

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

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

1亿VIP精品文档

相关文档