实现过程–ETL处理框架设计.pptVIP

  1. 1、本文档共23页,可阅读全部内容。
  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处理框架设计

利而不害,为而不争 利而不害,为而不争 利而不害,为而不争 利而不害,为而不争 利而不害,为而不争 利而不害,为而不争 利而不害,为而不争 基于DRS实现的ETL处理过程 —案例分析 Leavay Software ETL主流实现方式 自主脚本实现 工具软件实现 现有的ETL工具软件有: DataStage,Informatica等。 提供了一种组件化的ETL处理实现方式,将ETL处理的各个环节抽象成组件。如数据源组件,Transformer组件,Sort组件,Merge组件,Join组件等一系列组件。 组件之间按照一定的关系进行ETL处理。 ETL处理的开发、维护、管理有一套规范化的软件进行支撑。 技术人员自主开发整个ETL处理流程的程序: 比如用C、Java、TCL、Shell、存储过程等开发一系列脚本实现数据抽取、数据清洗、转换过程。 按照关系调度脚本,以实现ETL处理过程。 脚本的开发、维护、管理全部由人工进行控制。 存在问题 预先ETL处理过程中的各种操作定义成组件,灵活性较差,在遇到组件不能满足ETL处理需求时,很难快速调整组件以实现需求; 图形化的组件虽然降低了软件的使用难度,但是在系统发生故障时,难以定位和处理; 基于工具的实现在处理性能上较差,难以调优。 程序代码只能体现其技术实现内容,很难做到代码的自描述,规范化程度低,对于维护工作来讲有较高的难度; 元数据需要手工维护,技术实现与描述文档经常会出现不一致。 工具软件实现 自主脚本实现 问题分析 自主脚本实现 团队服务 规范性不足 透明度不足 质量受编程人员水平影响大 工具式实现 灵活性不足 不能快速解决复杂的业务问题 在复杂的业务场景下性能无法保证 采用将ETL过程各个步骤封装成数据对象的方法。数据对象可随时进行调整和优化,同时通过数据对象可规范ETL处理过程,实现ETL处理过程的自我描述,提升系统的运行质量、维护效率的同时让系统变得可管可控、可持续扩展。 基于DRS的ETL处理过程实现 数据对象的功能包括:业务数据对象设计、技术数据对象开发和数据对象流调度。 业务数据对象设计 技术数据对象开发 数据对象流 调度 元模型 设计 元数据 填充 元数据 血缘分析图 数据质量 规则设计 数据质量 规则制定 数据质量 监控、告警、处理 ETL处理 逻辑框架设计 ETL处理 业务逻辑实现 ETL处理 调度 数据质量: 质量规则预先设定,落实到系统的具体处理过程; 灵活的数据质量规则设置,具有独立性,不影响已有数据的运行; 中断式告警模式,规则出错可中断数据流,防止错误数据扩散。 元数据: 业务元数据,增强业务人员、技术人员对后台实现的理解; 技术元数据,落实到具体的数据处理过程,实现机读与人读的一致性; 业务、技术元数据统一管理,更好地保障两者的一致性。 数据处理: 用户自定义的、统一的处理框架,可灵活添加技术规范或管理规范; 基于ETL处理框架的开发模式,开发只需要按模板填充业务相关的信息,技术细节由DRS统一保障; 更容易定位问题、解决问题、消除问题所造成的影响,实现ETL处理重跑最小代价。 实现过程 – ETL处理框架设计 ETL处理分五大模块:数据抽取、数据清洗、数据加载、库内转换、规则检查。 各模块可灵活进行组合,形成ETL处理流程。 关系型数据库 (Oracle、DB2、TD 、MySQL等) Hadoop 结构化文件 非结化文件(可扩展) 其他(可扩展) 抽取 清洗 加载 转换 预先定义清洗函数 文件处理 关系型数据库 (Oracle、DB2、TD 、MySQL等) Hadoop 单表处理 多表关联 其他 规则 内置各类数据质量检查规则 实时告警 中断式告警 可复写、可扩展的标准处理脚本,针对不同ETL过程,可自主编程实现 实现过程 – ETL处理框架设计 ETL处理各个功能模块的设计分为属性和方法两部分: - 元数据作为属性,是进行具体ETL处理需要填充的信息; - 处理逻辑和质量校验功能作为方法,由系统建设初期定义和实现,并可灵活修改。 属性 方法 方法调用属性在调度中运行,使得元数据既可用来描述系统,同时也是系统运行的一部分; 可扩展的属性和方法,使得系统可应对各种复杂的场景,且实现方便快捷。 抽取模块设计 实现过程 – ETL处理框架设计 将ETL处理的六类业务数据对象设计落实到系统中: 抽取模型 清洗模型 加载模型 转换模型 规则模型 实现过程 – ETL处理框架设计 ETL处理业务数据对象设计后,自动转换成技术数据对象。 技术数据对象实现分为两部分:属性填充和方法实现。 方法实现:由技术实力较强的开发人员进行设计,尽可能固化每类模型共性的代码,一次开发,多次复用。遇到复杂场景,可灵活进行修改。 属性填充:由开发

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档