开发者社区> 技术小哥哥> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

数据仓库、数据整合、ETL、ELT和EII之间的区别?

简介:
+关注继续查看

数据仓库领域里,的一个重要概念就是数据整合(data intergration)。数据整合它就是把不同数据库中的数据整合到一起,对外提供统一的数据视图。

  数据整合最典型的案例就是整合存货数据和订单数据。数据整合的另一个案例就是把各个部门的客户关系管理系统中的客户信息整合到公司客户关系管理系统中。

    数据整合是一个比ETL更加广泛的概念,ETL是指从一个或多个数据源抽取数据,经过一个或多个转换步骤后,物理地存储到目标环境中,目标环境通常是数据仓库。

 

 

  ETL是data integration中的一种而已。

       1、抽取:一般抽取过程需要连接到不同的数据源,以便为随后的步骤提供数据。这一部分看上去简单而繁琐,实际上它是ETL解决方案成功实施的一个主要障碍。

     2、转换:在抽取和加载之间的,任何对数据的处理过程都是需要转换。这些处理过程通常包括(但不局限于)下面的这些操作:

        移动数据

        根据规则验证数据

        数据内容和数据结构的修改

          集成多个数据源的数据

            根据处理后的数据计算派生值和聚集值

      3、加载:将数据加载到目标系统的所有操作。

 

 

 

 

 

    一图胜千言!

  

 

 

           数据仓库典型架构图

   在上图中,有多个业务源系统,一个数据中转区,一个保存了所有历史数据的数据仓库和多个可以由终端用户访问的数据集市

  这些组成部分都是由数据整合过程来完成的,就是上图中显示的ETL

   在源系统和数据仓库之间,有一个数中转区,也可以叫做数据缓冲区。它仅用来快速地从源数据系统中获取数据,并暂时保留这些数据。它不一定是一个数据仓库,在很多情况下,将数据保存在ASCII文件中比插入数据库表中还要快。

 

 

 

 

ELT和ETL的区别

   ELT,(即抽取、加载和转换的简称),在同ETL在数据整合的方法上有略微不同。在ETL的情况下,数据首先从源数据(可能是多个)进行抽取、加载到目标数据库中,再转换为所需的格式。所有大数据量处理全部放在目标数据库中进行。这种做法的好处在于,一般情况下,数据库系统更适合处理负荷在百万级以上的数据集成。

   ELT工具需要知道,如何使用目标数据库平台和相应的SQL语言。这就是在市面ELT解决方案较少的原因,类似Kettle这样的通用ETL工具也同样缺少这些功能。

 

 

 

 

 

   EII是虚拟数据整合,为什么要提出呢?因为啊,ETL和ELT都属于物理数据整合。即都是以物理方式将数据从OLTP移动或复制到数据仓库。

   

  有些情况啊,没有必要移动或复制数据。实际上,大多数用户并不关心ETL过程和数据仓库:他们只是想获得他们想要的数据!好比,我把上图比喻成饭店的厨房吧,我作为一个顾客并不关心饭菜是如何做出的,我只是希望能准时并且味道口可就行,什么厨房里发生事情跟我顾客身份无关。

  那么,这个生活里的道路,也适合在数据仓库里:即有些用户并不关心数据是如何处理的,他们紫红色想快速而容易访问到数据就行。

    即,除了属于物理数据集成方式里的ETL和ELT外,还有属于虚拟数据集成方式的EII。

 

 

 

虚拟数据集成和物理数据集成的比较

 

 

 

 

 

 

 

 

 

 

      当然,我这系列博客,是定位于Kettle,目前最流行、功能最强大的数据整合工具是Kettle,也被称为Pentaho  Data  Integration。



本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/6906809.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Springboot 整合百度地图 API
Springboot 整合百度地图 API
164 0
SpringBoot多数据源动态切换
SpringBoot多数据源动态切换
100 0
springboot多数据源,最简单的整合方式
springboot多数据源,最简单的整合方式
1414 0
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 6 章 数据操纵
第 6 章 数据操纵 目录 6.1. 插入数据 6.2. 更新数据 6.3. 删除数据 6.4. 从修改的行中返回数据 前面的章节讨论了如何创建表和其他结构来保存你的数据。现在是时候给表填充数据了。
987 0
Spring Boot系列(十)Spring Boot整合Elasticsearch全文搜索引擎
这一篇介绍Spring Boot整合Elasticsearch全文搜索引擎,需要springboot实战完整视频教程的,点击这里! Elastic Search是一个开源的,分布式,实时搜索和分析引擎。
2578 0
I.MX6 新版、旧版u-boot不兼容问题
/************************************************************************* * I.MX6 新版、旧版u-boot不兼容问题 * 说明: * 我们普遍使用的是09版的u-boot,但如果用的是新版的的u-boot就要小心, * 不能使用旧版的烧录工具,因为新版的烧录工具的烧录方式变了。
562 0
I.MX6 新版u-boot分析
/******************************************************************* * I.MX6 新版u-boot分析 * 说明: * 因为一些原因,需要去分析最新版的u-boot,但是跟老版的u-boot * 在架构上已经有很大区别,已经和Linux kernel很接近了。
1519 0
x3d
SQLite不支持的SQL特性
SQLite 不支持的 SQL 特性         相对于试图列出 SQLite 支持的所有 SQL92 特性,只列出不支持的部分要简单得多。下面显示的就是 SQLite 所不支持的 SQL92 特性。
758 0
2010
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载