建立数据仓库的目的是为数据分析者提供准确性、一致性、完整性、有效性的数据来辅助决策。数据仓库中必须存储的是具有较高质量的数据

ETL将数据加载到数据仓库并不是数据的简单复制,在ETL过程中可能导致许多的数据质量问题,数据质量问题,既有可能来自数据源,又有可能来自ETL的实施过程中
数据源的质量很大程度上依赖于模型和完整性约束设计。如果模型设计合理,约束条件设计详细而精确,就能避免表中出现脏数据
数据质量衡量标准:数据的准确性、数据符合类型要求和取值要求、数据具有完整性和不冗余、数据是集成和一致的、数据是及时的、遵循业务规则,满足业务要求
ETL过程中实施数据质量控制
1、数据抽取程序严格审核,抽取的结果要和数据源系统的数据定期核对,数据抽取逻辑和限制条件要注明
2、及时监控数据源系统的变更,一旦数据远系统发生变化,提供告警机制,对数据抽取代码和配置信息进行及时更新,以保障后续工作正常进行
3、确定采信数据源。当同类的数据可以从多个不同的数据源采集到时,需要确定彩信规则,哪些数据是可信的,哪些数据不可信,在一致性检查中非常重要
4、建立故障检测机制,由于故障发生是不可避免的,因此需要建立一套故障检测机制,定期对系统进行扫描,以及及时发现故障的发生,进而主动采取控制措施。保证系统ETL的正常运行
5、建立数据审核机制,在经过ETL处理之后需要建立一个可追溯的控制点,这样可以层层对数据进行审核
数据仓库中的数据是海量的和与时间相关的,这就需要ETL过程能够在指定时间段内将大量的数据,从各个分布的数据源抽取出来,经过转换加载到数据仓库中。ETL过程速度越快,数据仓库的数据就会接近实时数据。那么数据仓库上层决策支持系统的决策结果也就越准确
并行ETL过程是加速ETL处理速度的有效途径。在保证数据进行处理的前提下,并行过程必须保证数据的完整性,流程的可靠传输以及断点恢复的能力
基本的多线程并行处理技术可分为三种:任务并行处理、数据进行处理和管道进行处理。
在ETL逻辑模型中,必须确定每一个活动的执行优先级,以确定整个ETL工作流的执行顺序,在确定了执行的优先级之后,可对相互之间没有依赖关系的活动并行执行,以提高整个工作流的执行效率
网友评论