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过程的主外键约束∶对无依赖性的非法数据,可替换或导出到错误数据文件中,保证主键唯一记录的加载。