当前位置:网站首页>关于ETL的两种架构(ETL架构和ELT架构)
关于ETL的两种架构(ETL架构和ELT架构)
2022-07-27 10:00:00 【微服务商城技术分享】
ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。

ETL是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。

ETL在转化的过程中,主要体现在以下几方面:
- 空值处理:可捕获字段空值,进行加载或替换为其他含义数据,并可根据字段空值实现分流加载到不同目标库。
- 规范化数据格式:可实现字段格式约束定义,对于数据源中时间、数值、字符等数据,可自定义加载格式。
- 拆分数据:依据业务需求对字段可进行分解。例,主叫号 861082585313-8148,可进行区域码和电话号码分解。
- 验证数据正确性:可利用Lookup及拆分功能进行数据验证。例如,主叫号861082585313-8148,进行区域码和电话号码分解后,可利用Lookup返回主叫网关或交换机记载的主叫地区,进行数据验证。
- 数据替换:对于因业务因素,可实现无效数据、缺失数据的替换。
- Lookup:查获丢失数据 Lookup实现子查询,并返回用其他手段获取的缺失字段,保证字段完整性。
- 建立ETL过程的主外键约束:对无依赖性的非法数据,可替换或导出到错误数据文件中,保证主键唯一记录的加载。
ETL架构的优势:
- ETL可以分担数据库系统的负载(采用单独的硬件服务器)
- ETL相对于EL-T架构可以实现更为复杂的数据转化逻辑
- ETL采用单独的硬件服务器。.
- ETL与底层的数据库数据存储无关.
ELT
在ELT架构中,ELT只负责提供图形化的界面来设计业务规则,数据的整个加工过程都在目标和源的数据库之间流动,ELT协调相关的数据库系统来执行相关的应用,数据加工过程既可以在源数据库端执行,也可以在目标数据仓库端执行(主要取决于系统的架构设计和数据属性)。当ETL过程需要提高效率,则可以通过对相关数据库进行调优,或者改变执行加工的服务器就可以达到。一般数据库厂商会力推该种架构,像Oracle和Teradata都极力宣传ELT架构。

ELT架构的优势:
- ELT主要通过数据库引擎来实现系统的可扩展性(尤其是当数据加工过程在晚上时,可以充分利用数据库引擎的资源)
- ELT可以保持所有的数据始终在数据库当中,避免数据的加载和导出,从而保证效率,提高系统的可监控性。
- ELT可以根据数据的分布情况进行并行处理优化,并可以利用数据库的固有功能优化磁盘I/O。
- ELT的可扩展性取决于数据库引擎和其硬件服务器的可扩展性。
- 通过对相关数据库进行性能调优,ETL过程获得3到4倍的效率提升一般不是特别困难。
边栏推荐
- Matlab-创建文字云
- 使用 Kmeans聚类实现颜色的分割
- Visual slam lecture notes (I): Lecture 1 + Lecture 2
- Word2vec principle and application and article similarity (recommended system method)
- 数学推理题:张王李赵陈五对夫妇聚会,见面握手
- VS2019+CUDA11.1新建项目里没有CUDA选项
- 语音识别的一些开源项目整理
- Anchor free detector: centernet
- Failure of CUDA installation nsight visual studio edition failed
- 语音数据采集-实时语音数据可视化
猜你喜欢

3D人脸重建:Joint 3D Face Reconstruction and Dense Alignment with position Map Regression Network

Discussion on a problem

Snowflake vs. databricks who is better? The latest war report in 2022

Dcgan paper improvements + simplified code

Data visualization

ACL2021最佳论文出炉,来自字节跳动

怎样关闭电脑开机自启动的应用
![Shell function, system function, basename [string / pathname] [suffix] can be understood as taking the file name in the path, dirname file absolute path, and user-defined function](/img/3d/d7276d2010f1d77a3bd572cc66eced.png)
Shell function, system function, basename [string / pathname] [suffix] can be understood as taking the file name in the path, dirname file absolute path, and user-defined function

Food safety | the more you eat junk food, the more you want to eat it? Please keep this common food calorimeter

Mysql database experiment training 5, data query YGGL database query (detailed)
随机推荐
Matlab-绘制叠加阶梯图和线图
hdu5289(Assignment)
Overview of PCL modules (1.6)
Matlab-基于短时神经网络的声音分类
Cannot start after installing MySQL 5.7.27 in CentOS 7? (Language bash)
Introduction to regular expressions of shell, general matching, special characters: ^, $,., * Character range (brackets): [], special characters: \, matching mobile phone number
GBase 8a MPP集群扩容实战
open3d库的安装,conda常用指令,导入open3d时报这个错误Solving environment: failed with initial frozen solve. Retrying w
Practice and exploration of overseas site Seata of ant group
ORACLE 11g手动内存管理
VS2019+CUDA11.1新建项目里没有CUDA选项
[SCM]源码管理 - perforce 分支的锁定
Introduction to Matlab real time editor
Fsm onehot 答题记录
Shell运算符、$((运算式))” 或 “$[运算式]、expr方法、条件判断、test condition、[ condition ]、两个整数之间比较、按照文件权限进行判断、按照文件类型进行判断
Snowflake vs. databricks who is better? The latest war report in 2022
WGAN、WGAN-GP、BigGAN
数据库性能系列之子查询
Vs2019 Community Edition Download tutorial (detailed)
Xiandai 004