来自:https://www.cnblogs.com/yjd_hycf_space/p/7772722.html
ETL是将业务系统的数据经过抽取、清洗(将脏数据和不完整数据过滤)转换(进行一些业务规则的计算和聚合)之后加载到数据仓库的过程,目的是将企业中的分散、凌乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。ETL是BI(百度百科:商业智能,它是一套完整的解决方案,用来将企业中现有的数据进行有效的整合,快速准确的提供报表并提出决策依据,帮助企业做出明智的业务经营决策)项目重要的一个环节。通常情况下,在BI项目中ETL会花掉整个项目至少1/3的时间,ETL设计的好坏直接关乎BI项目的成败。
ETL的设计分三部分:数据抽取、数据的清洗转换、数据的加载。在设计ETL的时候我们也是从这三部分出发。数据的抽取是从各个不同的数据源抽取到ODS(Operational Data Store,操作型数据存储,短暂存储来自不同源的数据),在抽取的过程中需要挑选不同的抽取方法,尽可能的提高ETF的运行效率。ETL三个部分中,花费时间最长的是T(Transform,清洗、转换的)部分,一般情况下这部分工作量是整个ETL的2/3.。数据的加载一般在数据清洗完了之后直接诶写入DW(Data Warehousing,数据仓库,长期存储数据)中去。三种实现方式,一是借助ETL工具(降低难度,灵活性不足),二是SQL方式实现(难度较大,灵活,提高效率),三是ETL工具结合SQL
项目需求:
需要将符合业务规则的数据推送到某个系统
法1、先通过汇总将数据整合到一个主体,然后通过ETL抽取数据到某个物理表,然后将组织数据推送到某个系统
法2、直接通过ETL抽取数据到物理表,然后将数据推送到某个系统