一、ETL

(一)、ETL是什么

ETL,Extract-Transform-Load的缩写,中文名为数据抽取、转换和加载。ETL 代表提取、转换和加载,是数据工程师用从不同来源提取数据、将数据转换为可用且受信任的资源并将该数据加载到最终用户可以访问和下游使用的系统的过程来解决业务问题。

(二)、ETL是如何工作的

1、提取

此过程的第一步通常是从异构的目标源中提取数据,例如业务系统、API、传感器数据、营销工具和事务数据库等。

2、转变

然后将从目标源中提取的原始数据转换为可供不同应用程序使用的格式。在此阶段,数据通常会被清理、映射和转换为特定模式,从而满足运营需求。

3、加载

最后,加载函数是将转换后的数据从暂存区写入目标数据库的过程。这些步骤中的每一个都可以使用ETL工具或自定义代码来完成。

二、ELT

(一)、ELT是什么

ELT,Extract-Load-Transform的缩写,与ETL不同,ELT在不需要在加载过程之前进行数据转换。使用ELT数据清理、扩充和转换都发生在数据仓库本身内部。原始数据无限期地存储在数据仓库中,允许进行多次转换。

三、ETL和ELT比较

类别

ETL

ELT

定义

数据从源系统中提取,在辅助处理服务器上进行转换,然后加载到目标系统中。

数据从源系统中提取,加载到目标系统,并在目标系统内部进行转换。

提炼

使用 API 连接器提取原始数据。

使用 API 连接器提取原始数据。

转变

原始数据在处理服务器上进行转换。

原始数据在目标系统内部进行转换。

加载

转换后的数据被加载到目标系统中。

原始数据直接加载到目标系统中。

速度

ETL 是一个耗时的过程;数据在加载到目标系统之前被转换。

相比之下,ELT 更快;数据直接加载到目标系统中,并进行并行转换。

基于代码的转换

在辅助服务器上执行。最适合计算密集型转换和预清理。

在数据库中执行的转换;同时加载和转换;速度和效率。

到期

现代 ETL 已经存在了 20 多年;它的实践和协议是众所周知的并记录在案的。

ELT 是一种较新的数据集成形式;更少的文档和经验。

隐私

预加载转换可以消除 PII(对 HIPPA 有帮助)。

直接加载数据需要更多的隐私保护。

维护

二次处理服务器增加了维护负担。

使用更少的系统,减少了维护负担。

费用

单独的服务器会产生成本问题。

简化的数据堆栈成本更低。

请求

数据在进入目标系统之前进行转换;因此无法查询原始数据。

原始数据直接加载到目标系统中,并且可以无休止地被请求。

数据湖兼容性 

不,ETL 不具备数据湖兼容性。

是的,ELT 确实具有数据湖兼容性。

数据输出

结构化(通常)。

结构化、半结构化、非结构化。

数据量 

非常适合具有复杂转换要求的小型数据集。

非常适合需要速度和效率的大型数据集。

四、面向Offer编程

现有的数据分析岗以及ETL工程师岗位,在要求具有一定编程基础上(Java、Python)还要求具备其他的专业技能——SQL开发技能、shell脚本编写能力。

前期软件安装:虚拟机环境配置;CentOS安装;MySQL下载与安装。

ETL学习-前期准备相关推荐

  1. ETL学习之四:SQL Server Integration Services入门

    ETL学习之四:SQL Server Integration Services入门 SSIS就是微软在SQL SERVER2005上对DTS的升级,不得不说,微软在BI上是花了很大功夫的,包括提供了S ...

  2. ETL学习心得:探求数据仓库关键环节ETL的本质【转】

    ETL学习心得:探求数据仓库关键环节ETL的本质 做数据仓库系统,ETL是关键的一环.说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具.回忆 一下工作这么些年来,处理数据迁移.转换的工作倒还 ...

  3. 零基础学习MSP430F552LP开发板,学习前期准备,Code Composer Studio(CCS)软件的安装

    零基础学习MSP430F552LP开发板 一.前言 零基础学习MSP430F552LP开发板,为电子设计竞赛做准备以及学好这一款芯片. 在选择比赛题目时,发现有的题目时规定使用ti的芯片作为控制MCU ...

  4. ETL学习总结(2)——ETL数据集成工具之kettle、sqoop、datax、streamSets 比较

    前言 对于数据集成类应用,通常会采用ETL工具辅助完成.ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract).交互转换(transfo ...

  5. ETL学习总结(1)——ETL 十大功能特性详解

    前言 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行.说白了就是,很有必要去理解一般ETL工具必备的特性和功能,这样才更好的掌握Kettle的使 ...

  6. ETL学习之五:创建新的 Integration Services 项目

    在 Microsoft SQL Server 2005 Integration Services (SSIS) 中创建包的第一步就是创建一个 Integration Services 项目.此项目包含 ...

  7. tensorflow 深度学习 前期准备之 1080Ti显卡驱动安装 及 CUDA CUDNN 安装

    终于开始进军深度学习了,所用到的是tensorflow 在一位资深的NLP朋友的帮助下,幸运的找到了一台显卡是1080ti 内存是16G的不错的电脑 , 然后参考此文 https://www.cnbl ...

  8. Python学习前期准备---第九天

    一.Linux基础 - 计算机以及日后我们开发的程序防止的服务器的简单操作 二.Python开发 http://www.cnblogs.com/wupeiqi/articles/5433893.htm ...

  9. 【从零开始的大数据学习】Flink官方教程学习笔记(一)

    Flink官方教程学习笔记 学习资源 基础Scala语法 Scala数据结构专题 声明变量 代码块 函数(function) 方法(methods) Traits (接口) class(类) tupl ...

最新文章

  1. premiere pr 某个面板悬浮后怎么还原
  2. Spotify开源其Cassandra编排工具cstar
  3. Java黑皮书课后题第7章:*7.7(统计个位数的数目)编写一个程序,生成0和9之间的100个随机整数,然后显示每一个数出现的次数
  4. 如果每一种语言都对应一种女生,你会喜欢哪一个?
  5. jQuery页面滚动图片等元素动态加载实现
  6. 人工智能和分布式账本如何帮助我们解决假新闻
  7. Redis的N种妙用,不仅仅是缓存
  8. html js 选择器,h.js - dom元素选择器
  9. Linux 系统中随机数在 KVM 中的应用
  10. 【LeetCode】【字符串】题号:*551. 学生出勤记录 I
  11. JavaEE学习14(应用)--用户自动登陆
  12. 函数名称修饰符__cdelcl __fastcall 与__stdcall
  13. 微信客服介绍和使用指引(4.19)
  14. win8连连看第二季1_第1季
  15. fullPage的简单使用
  16. oracle ndb,NDB语法 - ivaneeo's blog - BlogJava
  17. python获取摄像头型号,python3.6 opencv获取摄像头代码
  18. EDM邮件营销的劣势讲解
  19. 【LeetCode - 159】至多包含两个不同字符的最长子串
  20. 面向可解释AI的黑盒和白盒模型

热门文章

  1. 学好python可以实现财务自由哦—python基础教学(二)
  2. 小程序开发:完整发布上线流程
  3. DB 查询分析器 6.03 在Windows 8 上安装与运行演示
  4. 【PHP】 解决报错:Error: php71w-common conflicts with php-common-5.4.16-43.el7_4.x86_64
  5. 怎么让在线视频播放html,HTML5网页视频强制变速倍速播放
  6. 查询 IEEE 期刊往年影响因子以及趋势
  7. WuThreat身份安全云-TVD每日漏洞情报-2022-12-27
  8. python坑爹的黑店_曝光米兰爱马仕黑店极其坑爹配货经验!大家不要再白白上当了!...
  9. 机器学习--最大熵模型
  10. grep命令详解(如何匹配多个字符串)(grep指令)(grep -q)