企业每年产生海量的数据,这些数据,有的对企业非常重要,有的对企业没有用处。如何在海量数据中抽取出有用的数据?可以通过ETL来进行实现。
1、ETL,全称为Extraction-Transformation-Loading,中文名为数据抽取、转换和加载。
2、ETL的主要功能是将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
3、ETL也是一个长期的过程,只有不断地发现问题并解决问题,才能使ETL运行效率更高,为项目后期开发提供准确的数据。
业务需求:
业务需求是数据仓库最终用户的信息需求,它直接决定了数据源的选择。在许多情况下,最初对于数据源的调查不一定完全反映数据的复杂性和局限性,所以在ETL设计时,需要考虑原始数据是否能解决用户的业务需求,同时,业务需求和数据源的内容是不断变化的,需要对ETL不断进行检验和讨论。
对数据仓库典型的需求包括:
数据源的归档备份以及随后的数据存储。
任何造成数据修改的交易记录的完整性证明。
对分配和调整的规则进行完备的文档记录。
数据备份的安全性证明,不论是在线还是离线进行。
数据评估:
数据评估是使用分析方法来检查数据,充分了解数据的内容、质量。设计好的数据评估方法能够处理海量数据。
例如,企业的订单系统,能够很好地满足生产部门的需求。但是对于数据仓库来说,因为数据仓库使用的字段并不是以订单系统中的字段为中心,因此订单系统中的信息对于数据仓库的分析来讲是远远不够的。
对于“脏”数据源需要进行操作处理,主要包括以下几个方面:
完全清除某些输入字段;
补入一些丢失的数据;
自动替换掉某些错误数据值;
在记录级别上进行人工干预;
对数据进行完全规范化的表述。
数据集成:
在数据进入数据仓库之前,需要将全部数据无缝集成到一起。数据集成可采用规模化的表格来实现,也就是在分离的数据库中建立公共维度实体,从而快速构建报表。
在ELT系统中,数据集成是数据流程中一个独立的步骤,叫作规格化步骤。
最终用户提交界面:
ETL系统的最终步骤是将数据提交给最终用户,提交过程占据十分重要的位置,并对构成最终用户应用的数据结构和内容进行严格把关,确保其简单快捷。将使用复杂、查询缓慢的数据直接交给最终用户是不负责的,经常犯的一个错误就是将完全规范化的数据模型直接交给用户,就不再过问。