ETL就是Extract、Transfrom、Load即抽取、转换、加载三个英文单词首字母的集合。抽取:就是从源系统抽取需要的数据,这些源系统可以是同构也可以是异构的:比如源系统可能是Excel电子表格、XML文件、关系型数据库,而目标系统通常都是关系型的数据仓库。
转换:源系统的数据按照分析目的,转换成目标系统要求的格式。其实这个名词并没有完全表达出这个步骤的目的,更准确的说法应该是数据清洗和数据加工。
加载:把转换后的数据装载到目标数据库。作为联机分析、数据挖掘的基础。
 
整个ETL过程就像是在源系统和目标系统之间构建一个管道,数据在这个管道里源源不断的流动。而设计一个ETL架构就是要建起起这个管道。这个管道的部署构建就涉及到三个环节,或者说三个位置。分别是Source、Stagearea、Target。对应关系如下:
 
E——————>   T ——————> L
Source————> Stagearea——> Target
 
E:抽取,这个活动毫无疑问发生在数据源上,这个节点也就叫做Souce。
T:转换,转换活动通常是ETL中最具伸缩性的环节,换句话说,这个环节的活动可繁可简。最简单的情形下,源系统的数据不需要任何转换,就直接进入目标,这时这个T实际就是没有的。而复杂的情形就多了,比如数据格式转化、数据精度转换、数据清洗、缺失数据补齐、异常数据排除等等。在这种情形下,通常会专门准备一个临时系统,提供足够的软硬件资源来支持这种转换。这个临时系统就叫做Stagearea,也叫做数据登台区,即数据到达终点之前的区域。
L:加载,这个活动毫无悬念的发生在目标数据库中,这个目标数据库叫做Target。
 
我们明白了什么是ETL,那么ELT就好理解了。ELT也是同样三个单词的首字母组合,只不过是把T、L颠倒了下顺序而已。可就是这个顺序的颠倒,差异就出来了。ETL强调的是先进性数据转换,然后再加载到目标。这个转换过程可能发生在任何地方,可以在原系统进行,也可以在Stagearea进行,也可以在目标系统进行。而ELT是把数据加载到数据仓库后再进行转化,发生的地点只能是目标系统。
这两种方式各有优缺点,如果源系统有多个,比如一个国际型公司,起源数据可能来自世界各地,这时就可以通过部署多个中间节点,从而分散数据转换的压力,有点类似分布式计算的味道,可以提高数据加载效率。因此,ETL非常适用于多个数据源对一个目标的拓扑结构。
而ELT把数据加载到数据仓库在进行转换,通常数据仓库都会部署在高性能主机上,显而易见,这种设计是要充分的利用目标系统的处理能力,大树底下好乘凉吗。ELT的另一个优点是可以充分利用产品的内置能力,如果ETL的源、目标都是相同的产品,比如都是Oracle数据库,现在RDBMS内置的数据处理引擎越来越强大,ELT能够充分利用这些内置引擎。
所以,ETL还是ELT其实并没有绝对的差异,也没有孰优孰劣,最终还是要根据现实环境选择最适合的。
 
 
 
ETL工具的选择   在数据仓库项目中该如何选择ETL工具呢?一般来说需要考虑以下几个方面:   (1)对平台的支持程度。   (2)对数据源的支持程度。   (3)抽取和装载的性能是不是较高,且对业务系统的性能影响大不大,侵入性高不高。   (4)数据转换和加工的功能强不强。   (5)是否具有管理和调度功能。   (6)是否具有良好的集成性和开放性。

啥是ETL、ELT的更多相关文章

  1. Kettle解决方案: 第一章ETL入门

    第一章ETL入门 1.1 OLPT和数据仓库对比 普通的事务系统和商业智能系统(BI)有什么区别? 1个独立的普通事务系统也被称为在线事务处理系统(OLTP) 商业智能系统也常被称为决策支持系统(DS ...

  2. 整理下.net分布式系统架构的思路

    最近看到有部分招聘信息,要求应聘者说一下分布式系统架构的思路.今天早晨正好有些时间,我也把我们实际在.net方面网站架构的演化路线整理一下,只是我自己的一些想法,欢迎大家批评指正. 首先说明的是.ne ...

  3. net分布式系统架构

    net分布式系统架构的思路 最近看到有部分招聘信息,要求应聘者说一下分布式系统架构的思路.今天早晨正好有些时间,我也把我们实际在.net方面网站架构的演化路线整理一下,只是我自己的一些想法,欢迎大家批 ...

  4. Oracle 数据集成的实际解决方案

    就针对市场与企业的发展的需求,Oracle公司提供了一个相对统一的关于企业级的实时数据解决方案,即Oracle数据集成的解决方案.以下的文章主要是对其解决方案的具体描述,望你会有所收获. Oracle ...

  5. .net分布式系统架构的思路

    首先说明的是.net下开源内容较少,并且也不是做并行数据库等基础服务,因此在这里什么Hadoop.Spark.ZooKeeper.dubbo等我们暂不去考虑. 一.最初假设的网站中,我们把应用系统网站 ...

  6. .NET分布式系统架构思路

    分布式系统是由一组通过网络进行通信.为了完成共同的任务而协调工作的计算机节点组成的系统.分布式系统的出现是为了用廉价的.普通的机器完成单个计算机无法完成的计算.存储任务.其目的是利用更多的机器,处理更 ...

  7. 【转】Talend作业设计模式和最佳实践-Part II

    转载地址:https://mp.weixin.qq.com/s?__biz=MzA3OTg1Mzk4Nw==&mid=2453261363&idx=1&sn=5674f1df8 ...

  8. Lakehouse: 统一数据仓库和高级分析的新一代开放平台

    1. 摘要 数仓架构在未来一段时间内会逐渐消亡,会被一种新的Lakehouse架构取代,该架构主要有如下特性 基于开放的数据格式,如Parquet: 机器学习和数据科学将被作为头等公民支持: 提供卓越 ...

  9. Azure Synapse Analytics Serverless

    数据湖仓 自从Databricks提出Lakehouse后,同时Snowflake的上市,湖仓一体成为数据领域最火热的话题. https://databricks.com/blog/2020/01/3 ...

  10. 使用Spark加载数据到SQL Server列存储表

    原文地址https://devblogs.microsoft.com/azure-sql/partitioning-on-spark-fast-loading-clustered-columnstor ...

随机推荐

  1. 安装CentOS 7.4 可能会出现的坑以及解决方案

    安装CentOS 7.4 可能会出现的坑以及解决方案 (解决方法不唯一,如果行不通的话emmmm~~, 百度会啥你会啥~~) 坑.0X01 解决: 退出虚拟机,以管理员权限运行 坑.0X02 解决: ...

  2. 1、hive安装详细步骤

    一.环境准备 hadoop-2.7.2 java 1.7.0 apache-hive-1.2.1 mysql Hive配置文件介绍 •hive-site.xml      hive的配置文件 •hiv ...

  3. Latex技巧:插入参考文献

    LaTeX插入参考文献,可以使用BibTex,也可以不使用BibTex. 方法一:不使用BibTeX 先在文章文章末尾写好需要插入的参考文献,逐一写出,例如: \begin{thebibliograp ...

  4. jquery datepicker日历控件

    地址:http://jqueryui.com/datepicker/ 使用:$( "#datepicker" ).datepicker(); $.datepicker.setDef ...

  5. ZOJ 3961 Let's Chat 【水】

    题目链接 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3961 题意 给出两个人的发消息的记录,然后 如果有两人在连续M天 ...

  6. linux 快速清空文件内容

    Tomcat 的catelina.out 如果不配置按照日期产生会在一个文件中产生大量的输出日志. 清除日志如果直接删除catelina.out将无法输出日志.如果想输出日志只能重启Tomcat才会产 ...

  7. Linux Shell基础 多个命令中的分号(;)、与(&&) 、 或(||)

    概述 在 Bash 中,如果需要让多条命令按顺序执行,则有这样方法,如表 1 所示. 多命令执行符 格 式 作 用 : 命令1 ; 命令2 多条命令顺序执行,命令之间没有任何逻辑关系 &&am ...

  8. wifidog源码分析 - wifidog原理 tiger

    转:http://www.cnblogs.com/tolimit/p/4223644.html wifidog源码分析 - wifidog原理 wifidog是一个用于配合认证服务器实现无线网页认证功 ...

  9. p2p网络中的NAT穿透技术----常见NAT穿越解决方案

    转:http://blog.csdn.net/cllzw/article/details/46438257 常见NA丁穿越解决方案 NAT技术在缓解IPv4地址紧缺问题.构建防火墙.保证网络安全等方面 ...

  10. JSP笔记02——概述(转)

    不完全翻译,结合谷歌,一定主观性,还可能有误,原始内容地址:https://www.tutorialspoint.com/jsp/jsp_overview.htm 主要内容如下: 什么是JSP? 为什 ...