当前位置: 首页 > 图灵资讯 > 技术篇> ETL的三大功能详解

ETL的三大功能详解

来源:图灵教育
时间:2023-04-16 09:22:16

随着现代企业信息化随着业务线、产品线和部门的发展,各业务线将建立各种信息系统,以方便自己的业务。随着信息建设的深入,业务系统之间的独立数据孤岛”现象尤为普遍,业务不集成,流程不互通,数据不共享。这给企业数据分析利用、报表开发、分析挖掘带来了巨大的困难。在这个危急存亡的时候,ETL应用而生,ETL的三大功能上述问题作为其核心机制得到了完美的解决。

ETL,英文Extractt-Transform-Load的缩写用于描述从源端提取数据(extract)、转换(transform)、加载(load)到目的端的过程。ETL是将业务系统的数据提取、清洁和转换后加载到数据仓库的过程。目的是整合企业中分散、混乱、不统一的标准数据,为企业决策提供分析依据, ETL是BI(商业智能)项目的一个重要环节。

一、 数据抽取

数据提取是从源系统中获取业务数据的过程。数据提取需要充分满足商业智能系统的决策和分析需求。为了确保不影响系统的性能,数据提取需要考虑许多因素,包括提取方法、提取时间和提取周期。

例如,提取方法包括增量提取和全量提取。在系统使用的低谷时间,如夜间,应尽可能抽取时间。提取周期是根据业务需要制定的,如按小时提取,或按天、月、季、年等提取。在数据提取之前,需要确定业务系统的数据情况,了解数据量的大小,以及业务系统中每个表的数据结构、字段意义、表之间的关系等信息。收集这些信息后,可以进行数据提取的设计和开发。

对于数据量大的系统,必须考虑增量提取。一般来说,业务系统会记录业务发生的时间,我们可以用它作为增量标志,在每次提取之前,首先判断ODS中记录的最大时间,然后根据此时间将大于此时的所有记录转移到业务系统。使用业务系统的时间戳,一般来说,业务系统没有或部分时间戳。

二、数据清洗

一般来说,数据清洗的目的是选择有缺陷的数据,然后正确和标准化它们,以满足用户所需的数据质量标准。数据「缺陷」它可能包括以下情况:数值重复、数据缺失、数据错误、数据范围混淆、存在「脏」数据和数据不一致等等其中,数值重复不是唯一的标准,许多值代表相同的含义。数据范围混淆意味着相同的值将应用于不同的场合,代表不同的含义。

数据清理是一个重复的过程,不可能在几天内完成。只有不断发现和解决问题。一般要求客户确认是否过滤,是否修改,并将过滤后的数据写入Excel文件或将过滤数据写入数据表。在ETL开发的早期阶段,过滤数据的电子邮件可以每天发送给业务单位,以促进他们尽快纠正错误,也可以作为未来验证数据的依据。数据清理应注意不要过滤有用的数据,仔细验证每个过滤规则,并要求用户确认。

  • 数据加载

数据清洗后,数据的加载一般直接写入DW(Data Warehousing,去数据仓库)。

ETL 增量加载的方式主要包括:

1.系统日志分析方法

2.触发器方式

3.时间戳方式

4.全表比较模式

5.源系统增量(delta)数据直接或转换后加载

现在有很多成熟的工具可以提供ETL功能,更不用说它们的质量了。从应用的角度来看,ETL的过程并不是很复杂。这些工具给数据仓库项目,特别是开发和维护方便带来了极大的便利。但另一方面,开发人员很容易在这些工具中迷失方向,不去探求ETL的本质,真的只是在用工具。。大家都知道“理论与实践相结合”,超越一个领域,必须在理论水平上达到一定的高度,只有两者兼得,才能促进两者兼得ETL技术创新和自身素质发展!