关于ETL的两种架构(ETL架构和ELT架构)

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

ETL是英文 Extract-Transform-Load 的缩写用来描述将数据从来源端经过抽取extract、转换transform、加载load至目的端的过程。ETL一词较常用在数据仓库但其对象并不限于数据仓库。

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

ETL在转化的过程中主要体现在以下几方面:

  1. 空值处理可捕获字段空值进行加载或替换为其他含义数据并可根据字段空值实现分流加载到不同目标库。
  2. 规范化数据格式可实现字段格式约束定义对于数据源中时间、数值、字符等数据可自定义加载格式。
  3. 拆分数据依据业务需求对字段可进行分解。例主叫号 861082585313-8148可进行区域码和电话号码分解。
  4. 验证数据正确性可利用Lookup及拆分功能进行数据验证。例如主叫号861082585313-8148进行区域码和电话号码分解后可利用Lookup返回主叫网关或交换机记载的主叫地区进行数据验证。
  5. 数据替换对于因业务因素可实现无效数据、缺失数据的替换。
  6. Lookup查获丢失数据 Lookup实现子查询并返回用其他手段获取的缺失字段保证字段完整性。
  7. 建立ETL过程的主外键约束对无依赖性的非法数据可替换或导出到错误数据文件中保证主键唯一记录的加载。

ETL架构的优势

  1. ETL可以分担数据库系统的负载采用单独的硬件服务器
  2. ETL相对于EL-T架构可以实现更为复杂的数据转化逻辑
  3. ETL采用单独的硬件服务器。.
  4. ETL与底层的数据库数据存储无关.

ELT

在ELT架构中ELT只负责提供图形化的界面来设计业务规则数据的整个加工过程都在目标和源的数据库之间流动ELT协调相关的数据库系统来执行相关的应用数据加工过程既可以在源数据库端执行也可以在目标数据仓库端执行主要取决于系统的架构设计和数据属性。当ETL过程需要提高效率则可以通过对相关数据库进行调优或者改变执行加工的服务器就可以达到。一般数据库厂商会力推该种架构像Oracle和Teradata都极力宣传ELT架构。

ELT架构的优势

  1. ELT主要通过数据库引擎来实现系统的可扩展性尤其是当数据加工过程在晚上时可以充分利用数据库引擎的资源
  2. ELT可以保持所有的数据始终在数据库当中避免数据的加载和导出从而保证效率提高系统的可监控性。
  3. ELT可以根据数据的分布情况进行并行处理优化并可以利用数据库的固有功能优化磁盘I/O。
  4. ELT的可扩展性取决于数据库引擎和其硬件服务器的可扩展性。
  5. 通过对相关数据库进行性能调优ETL过程获得3到4倍的效率提升一般不是特别困难。
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6