ETL,是英文Extract-Transform-Load的缩写,用来描述将
数据从来源端经过抽取(extract)、
转换(transform)、加载(load)至目的端的过程。ETL一词较常用在
数据仓库,但其对象并不限于数据仓库。
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据, ETL是BI(
商业智能)项目重要的一个环节。
ETL所描述的过程,一般常见的作法包含ETL或是
ELT(Extract-Load-Transform),并且混合使用。通常越大量的数据、复杂的转换逻辑、目的端为较强运算能力的
数据库,越偏向使用ELT,以便运用目的端
数据库的平行处理能力。
ETL(orELT)的流程可以用任何的编程语言去开发完成,由于ETL是极为复杂的过程,而手写程序不易管理,有越来越多的企业采用工具协助ETL的开发,并运用其内置的
metadata功能来存储来源与目的的对应(mapping)以及转换规则。