首页 > 其他 > 详细

什么是ETL?

时间:2021-05-16 00:55:14      阅读:42      评论:0      收藏:0      [点我收藏+]

什么是ETL?
一、ETL概念之背景
随着企业的发展,目前的业务线越来越复杂,各个业务系统独立运营。例如:CRM系统只会生产CRM的 数据;Billing只会生产Billing的数据。各业务系统之间只关心自己的数据,导致各业务系统之间数据相互独立,互不相通。一旦业务系统之间进行数据交互,只能通过传统的webservice接口之间进行数据通信。该种方式对人力成本、时间成本要求比较高。也就是说:需要成熟的开发人员才能编写响应的webservice接口进行数据通信。而ETL的诞生就解决了此类问题,企业不需要技术很好、很成熟的开发人员一样可以完成该任务。而且可以比优秀的开发人员完成的更好,致使人力成本更低。这些都是企业所迫切需要的,有此诞生了ETL。
技术分享图片

 

 

图1-1 传统的数据交换
技术分享图片

 

 

二、ETL概念之工作流程
ETL是将业务系统的数据经过抽取(Extract)、清洗转换(Transform)之后加载(Load)到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。 
技术分享图片

 

 

图1-3 ETL流程图

ETL工作流程:先抽取、然后加载到目标数据库中、在目标数据库中完成转换操作。在ELT架构中,ELT只负责提供图形化的界面来设计业务规则,数据的整个加工过程都在目标和源的数据库之间流动,ELT协调相关的数据库系统来执行相关的应用,数据加工过程既可以在源数据库端执行,也可以在目标数据仓库端执行(主要取决于系统的架构设计和数据属性)。

 

三、ETL概念之操作步骤
ETL处理分为五大模块,分别是:数据抽取、数据清洗、库内转换、规则检查、数据加载。各模块可灵活进行组合,形成ETL处理流程。简单介绍一下各个模块之间的主要功能。

数据抽取 确定数据源,需要确定从哪些源系统进行数据抽取

定义数据接口,对每个源文件及系统的每个字段进行详细说明

确定数据抽取的方法:是主动抽取还是由源系统推送?是增量抽取还是全量抽取?是按照每日抽取还是按照每月抽取?

数据清洗与转换 数据清洗 主要将不完整数据、错误数据、重复数据进行处理

数据转换:

1)空值处理:可捕获字段空值,进行加载或替换为其他含义数据,或数据分流问题库

2)数据标准:统一元数据、统一标准字段、统一字段类型定义

3)数据拆分:依据业务需求做数据拆分,如身份证号,拆分区划、出生日期、性别等

4)数据验证:时间规则、业务规则、自定义规则

5)数据替换:对于因业务因素,可实现无效数据、缺失数据的替换

6)数据关联:关联其他数据或数学,保障数据完整性 数据加载 将数据缓冲区的数据直接加载到数据库对应表中,如果是全量方式则采用LOAD方式,如果是增量则根据业务规则

https://www.bilibili.com/read/cv10480486/

什么是ETL?

原文:https://www.cnblogs.com/w-j-q/p/14772579.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!