什么是ETL?
ETL就是讲业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,这个过程也就是ETL。通常,ETL是BI项目的一个很重要的环节,一般花费时间至少占据整个项目时间的1/3。ETL设计的好坏直接关系到珍格BI项目的成败。

ETL过程:是 数据从数据源向目标数据仓库抽取(Extract)、转换(Transform)、装载(Load)的过程。

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

抽取:将数据从各种原始的业务系统中读取出来。
转换:按照预先设计好的规则将抽取得数据进行转换、清洗,以及处理一些冗余、歧义的数据,使本来异构的数据格式能统一起来。
装载:将转换完的数据导入到数据仓库中。

实现ETL,首先要实现ETL转换的过程,体现为一下几个方面:
1、空值处理:可捕获字段空值,进行加载或替换为其他含义数据,并可根据字段空值实现分流加载到不同目标库。

2、规范化数据格式:可实现字段格式约束定义,对于数据源中时间、数值、字符等数据,可自定义加载格式。

3、拆分数据:依据业务需求对字段可进行分解。例,主叫号 861082585313-8148,可进行区域码和电话号码分解。

4、验证数据正确性:可利用Lookup及拆分功能进行数据验证。例如,主叫号861082585313-8148,进行区域码和电话号码分解后,可利用Lookup返回主叫网关或交换机记载的主叫地区,进行数据验证。

5、数据替换:对于因业务因素,可实现无效数据、缺失数据的替换。

6、Lookup:查获丢失数据 Lookup实现子查询,并返回用其他手段获取的缺失字段,保证字段完整性。

7、建立ETL过程的主外键约束:对无依赖性的非法数据,可替换或导出到错误数据文件中,保证主键唯一记录的加载。