博客

确保数据完整性DWH / BI系统与3类型的测试

作者:

韦恩Yaddow

数据迁移/集成/ ETL顾问

日期:2018年7月11日

编者按:韦恩Yaddow是一个独立的顾问拥有超过20年的经验主要数据迁移/集成/ ETL测试项目在组织包括摩根大通(J.P. Morgan Chase)、瑞士信贷(Credit Suisse)、标准普尔,AIG,奥本海默基金、IBM和Achieve3000。此外,韦恩告诉IIST(国际软件测试研究所)课程188金宝搏官网登录app数据仓库,ETL,数据集成测试。他继续领导很多ETL测试和指导项目咨询的基础上。你可以联系他wyaddow@gmail.com

数据仓库和业务智能用户承担,需要的,可信赖的数据。

Gartner这术语表,数据完整性数据完整性测试定义如下:

  • 数据的完整性:的质量数据驻留在数据存储库和数据库对象。测量时,用户考虑的分析数据的价值和可靠性。
  • 数据完整性测试:验证,移动,复制,正确提取和转换数据是准确的和功能在一个子系统或应用程序。

数据完整性的过程不仅要帮助您了解一个项目的数据完整性,而且还帮助你获得和维护数据的准确性和一致性对其生命周期。这包括数据管理的最佳实践,比如防止数据被修改每次复制或移动。过程应该建立维护DWH / BI数据完整性。数据,在其生产的状态,是行业决策背后的推动力量。一般以数据完整性错误源于人类的错误,不合规的操作程序,在数据传输错误,软件缺陷,损害硬件、设备和物理妥协。188金宝搏官网登录app

这个博客提供了一个关注DWH / BI”数据完整性测试“测试流程,支持:

  • 所有的源和目标数据仓库的模式
  • ETL过程
  • 商业智能组件/前端应用程序

我们讨论如何处理数据完整性验证上述每个类别。

其他类别的DWH / BI和ETL测试不是一个重点(如功能、性能、安全性、可伸缩性、系统和集成测试、端到端,等等)。

分类DWH / BI系统的数据完整性

数据完整性是一个总括的术语,它指的是一致性,精度,正确性的数据存储在数据库中。有三个主要类型的数据完整性:

  • 实体完整性确保表中的每一行(例如)是惟一确定的,没有重复。实体完整性是通过将执行关键外键限制特定列。测试可以通过定义重复或null值的测试。
  • 完整性要求每组数据值/列属于一个特定的容许范围定义。域完整性的例子是正确的数据类型、格式和数据长度;值必须在范围之内的所有定义的系统;空状态;和允许的大小值。测试完成,部分使用null,默认和无效的值。
  • 引用完整性关心的是保持表之间的关系引用完整性通常是执行与主键(PK)和外键(颗)的关系。它可能是测试,例如,通过删除父行或子表中的行。

验证数据完整性在模式中,ETL过程和BI报告

的框架图1说明了主要DWH / BI组件通常是测试在所有类别的端到端DWH / BI测试。数据完整性测试通常需要相当大的时间和资源。

图1:一般DWH / BI的端到端数据验证框架

End-to-end-testing-figure-1

提出了以下DWH / BI组件测试框架:

1。验证数据源/目标需求和模式设计

需求和模式测试确认每个数据组件的设计在多大程度上匹配的有针对性的业务需求。

这个过程应该包括的能力验证:

  1. 业务和技术需求源和目标数据
  2. 数据完整性规范技术上实现(DBMS、文件系统、文本文件,等等)。
  3. 数据模型为每个数据实现模式
  4. 源到目标数据映射数据加载到DWH目标。源和相关目标的例子包括源数据的加载阶段目标以及分段数据加载到数据仓库或数据集市的目标

模式的质量代表的能力模式充分和有效项目信息/数据。模式在这个定义指的是数据仓库的模式无论它是一个概念,逻辑或物理模式,明星,星座,或归一化模式。然而,这个定义扩展到包括模式中使用的所有数据存储整个数据仓库系统包括数据来源、分期、操作数据存储,数据集市。它有利于评估模式在数据仓库的设计阶段质量。

检测、分析和纠正模式缺陷将促进DWH / BI系统的质量。模式质量可以从不同的维度,即模式的正确性,模式完整性、模式整合模式完整性、可解释性,温顺,可理解性,简洁的表示。

2。源和目标数据完整性测试

一个设计得当的ETL系统:

  • 从源系统中提取数据
  • 执行数据质量和一致性的标准
  • 符合数据,以便数据来源可以共同使用
  • 提供数据的格式,使应用程序开发人员可以构建应用程序

数据仓库关注ETL过程完整性测试和评估。各种各样的功能性和非功能性测试方法应用于测试ETL过程的逻辑。目标是验证有效和无效条件正确处理所有源和目标数据,确保主键和外键(即完整性。参照完整性),数据转换的正确性,数据清理和应用程序的业务规则。

3所示。测试BI报告数据的完整性

BI应用程序提供一个接口,帮助用户与后端数据交互。这些报告的设计是至关重要的理解和规划数据完整性测试。

复杂业务规则通常应用于原始数据然后加载到数据仓库。然后数据仓库信息发送的形式BI仪表板/报告和企业高管可以自信地做出重要的决定。所以有必要确保数据仓库数据(BI进一步处理应用程序)是准确的。那些进行BI应用程序测试必须准备回答业务团队的问题:“这些报告反映了DW数字正确吗?如果是这样的话,或者如果不是这样的,我们怎样才能确保我们正在寻找正确的数据做出正确的决策”?

BI报告测试的传统方法有几个缺点。时间通常是需要识别和修复在BI报告发现的问题。数字BI仪表板通常聚合到一个高水平的降低DW的粒度。这个原始数据往往是改变在每个迭代通过仪表板的旅程。从BI仪表板选择任何值,然后努力调和数据仓库数据表,是一个复杂和冗长的过程。

一个数据完整性测试框架和一个清单

DWH / BI数据完整性验证这里分类如下。图2显示了一个验证分类框架的技术适用于源和目标数据仓库的ETL过程和BI报告的应用程序。

图2:框架DWH / BI数据完整性验证

blog-Figure-2
“什么”,“何时”和“地方”DWH / BI数据集成测试中表示图3

  • 列标题代表数据相关测试将在何时何地发生
  • 应考虑行表示“什么”数据相关项目进行测试

图3:验证的取样数据完整性测试的三个类别:模式、ETL过程和BI报告

图3

关键的外卖

  • 数据的最终状态是组织决策背后的推动力量。
  • 原始数据往往是改变和加工达到BI报告的可用的格式。确保数据完整性实践这个DWH / BI是由于和准确的信息。
  • 数据很容易妥协,如果不采取适当的措施来验证它从每个环境变得可用DWH / BI项目。错误通过人类与数据完整性常出现错误,不合规的操作程序,数据传输,软件缺陷和损害硬件。188金宝搏官网登录app
  • 通过应用策略介绍了博客,你应该能够提高质量和降低时间和成本在开发DWH / BI项目。
作者:

韦恩Yaddow

数据迁移/集成/ ETL顾问

日期:2018年7月11日
Baidu
map