如果没有适当的数据测试,生产中的数据质量就是不完整的。在本文中,您将学习数据测试的基础知识以及如何开始。
数据质量对于数据仓库、主数据管理(MDM)、客户关系管理(CRM)和其他以数据为中心的项目至关重要。然而,在开发过程中,往往忽视了数据质量,直到系统完全在生产环境中运行才开始重视。这导致了数据质量方面的巨大差距,因为在项目的开发阶段几乎没有或没有进行测试。
数据就像是一个产品,而数据系统就像是生产这个产品的工厂。在工厂中,质量分为两个组成部分:质量保证和质量控制。让我们深入了解这些概念以及它们如何应用于数据质量。
质量保证(QA)与质量控制(QC)质量保证:通过质量保证过程验证原材料和加工方法的质量,以确保最终产品的缺陷最小化。
在数据领域,质量保证(QA)和质量控制(QC)的概念可以应用于数据质量的管理。传统的数据质量方法存在一些缺点,其中数据测试经常被忽视。
传统数据质量方法的局限性包括:
- ETL测试:数据质量工具设计用于测试数据,而不是进行ETL测试。
- 太少、太迟:数据质量流程仅在最终数据交付生产环境时应用。到那时,有缺陷的数据系统已经投入使用。
- 垃圾输入,垃圾输出:开发过程中使用的原始数据从未经过测试。因此,开发人员对数据的各种排列组合可能性并不清楚。
- 错误的数据处理导致糟糕的数据质量:数据处理过程本身可能是错误的,从而导致低质量的数据。
- 数据处理的错误编排:通常,数据处理是按特定顺序和时间执行各种数据处理过程,以将来自多个源的数据集成为一个统一的视图。
- 错误的数据模式:如果数据模型存在问题,如错误的数据类型、错误的数据类型长度、精度或缺少约束,则生产数据中可能会出现许多数据问题。
这些问题只能在项目的开发阶段通过实施适当的QA或数据测试来解决。
数据测试是在将代码部署到生产环境之前测试和确认数据及其处理过程的方法。它包括原始数据测试、ETL测试和流程编排的测试。
数据测试包括以下活动:
- 测试原始数据,确保数据符合预期。
- 测试ETL过程,确保按照要求正确编码和转换数据。
- 对ETL过程生成的数据输出进行业务验证。
开始进行数据测试的主要步骤包括:
- 确定需要进行测试的过程。
- 查找数据过程使用的源表和目标表。
- 连接数据库,包括源数据库和目标数据库。
- 创建和执行数据测试规则,通过检查数据转换过程中的问题来验证数据质量。
- 审查数据测试的输出,检查数据转换过程中的缺陷。
综上所述,数据质量管理不仅仅是一个生产环境中的概念,同样重要的是在开发阶段进行数据测试。
开发阶段的数据测试和生产环境中的数据监控相结合,可以在数据质量方面提供最佳效果,并且非常有效。