介绍

在这个 由三 部分的系列的第一部分中,我们介绍了为什么尽早评估风险,并且经常是关键,是解决风险的最佳做法,以及共同风险缓解的最佳做法。本系列文章的第二部分将介绍集成项目的质量风险示例以及解决这些问题的最佳做法。

识别数据集成风险

解决问题的第一步是识别它们。在数据集成项目上这样做需要注册可能中断项目事件正常流的每个问题。此步骤的主要结果是风险列表。

QA 主管通常领导基于风险的测试实践。然而,这个人本身将无法设计整个列表;整个 QA 团队的投入对风险识别过程产生了重大影响。

提取、转换、加载 (ETL) 和测试过程仍然是大多数数据集成项目中最被低估的预算不足阶段。项目 ETL 部分经常引发的问题比它解决的问题多的主要原因与对源数据质量缺乏了解有关。

在数据集成期间,许多数据被转换、集成、结构化、清理并分组到单个结构中。这些不同类型的数据移动和更改可能导致数据损坏的风险;因此,数据测试是一项非常关键的工作。

数据集成风险和相关最佳实践示例

以下是典型的数据 集成项目风险和挑战,并 附有推荐的 best 实践。这种风险汇编并非详尽无遗。请注意,此表中的风险仅代表那些通常已知具有”高”影响的风险。

57943925233645%”=

项目范围测试不协调

目标数据流测试的源不足或不存在

结论

现代系统使从各种来源访问数据更加容易。通过此功能,需要将 来自多个数据流 (可能具有重复和较差的数据质量)的不同格式的不同数据集成到单个数据存储库中的挑战 在数据集成过程中,使用最佳的 QA 和测试流程可以更好地做到这一点。

Wayne Yaddow 是一位独立顾问,在摩根大通、瑞士信贷、标准普尔和 IBM 等组织中领导数据迁移/集成/ETL 测试项目方面拥有 20 年的经验。 他教授数据仓库、ETL 和数据集成测试的课程并指导 IT 人员。Wayne 继续领导 ETL 测试和辅导项目。提供咨询服务。[wyaddow.academia.edu/research#papersandresearch]

Comments are closed.

潜在的项目风险

最佳实践建议

不确定源数据质量

数据集成工作可能不符合计划计划,因为源数据的质量未知或不足

  • 尽早(即需求收集期间)进行源数据的正式数据分析,以了解数据质量是否满足项目需求。在提取/转换过程中,可以在提取/转换过程中识别和解决源数据中的不准确、遗漏、清洁度、重复和不一致。
  • 由于重复数据通常存在于多个源系统中,因此识别所有源并与用户讨论最适用的数据
  • 实施商业/自动化数据质量工具,并辅之以咨询和培训

源和目标数据映射问题

由于缺乏数据字典和数据模型,源数据可能映射不准确

  • 应维护数据字典和数据目录,以支持与项目关联的所有数据。将产生更高质量的数据映射文档。
  • 实现数据映射更改控制系统,以记录每个更改。

数据源中的过度缺陷

在开发过程中发现数据缺陷

  • 确保数据要求完整,并且数据字典可用且最新
  • 在每个 ETL 之后分析所有数据源和目标数据
  • 准备清理和修复脏数据
  • 确保持续维护数据映射和所有其他规范文档

未制定总测试计划或测试策略

主测试计划/战略不存在或范围不足

测试 策略/主测试计划 记录了所有项目测试的总体结构和目标,从单元测试到组件,从系统和性能测试。MTP 涵盖数据集成生命周期内的活动,并确定测试人员的评估标准。

目标数据中的过度缺陷

ETL 之后加载了许多目标数据出错

  • 确保目标数据采样过程高质量
  • 使用提供广泛数据覆盖的测试工具
  • 选择足够广泛的数据采样方法,以避免源数据和目标数据中缺少缺陷
  • 选择适当的技术来比较源和目标数据,以确定源数据和目标数据是否相等或目标数据已转换
  • 验证 ETL 进程期间没有丢失任何数据或元数据。数据仓库必须根据业务规则将源应用程序的所有相关数据加载到目标中。
  • 检查唯一标识数据行的代理项的正确性
  • 检查 ETL 之后的数据加载状态和错误消息
  • 验证数据类型和格式是否与数据库设计期间指定
  • 验证每个 ETL 会话是否只完成计划异常

数据质量审核应包括验证源系统(如 CSV)中的信息是否准确,以便当信息添加到目标集成时,可以信任该信息。

员工测试技能不足

具有数据集成测试所需知识的合格资源不可用。

  • 投资数据集成测试课程,培训资源招聘具有数据测试经验的员工,聘请服务顾问。
  • 投资专业数据角色:数据分析师、数据质量分析师、数据测试工具集技能和数据工程师。

源到目标数据转换代码很复杂

没有所需的测试工具或测试人员技能的复杂转换可能不容易测试。

  • 表联接复杂性、查询和生成的业务报告的早期验证
  • 明确业务需求;在编程数据提取和加载之前开发和测试伪查询
  • 验证源数据字段的数量和可访问性

计划测试主要是手动测试

ETL、数据分析、单元和回归测试采用最少的测试自动化

  • 投资自动化单元和回归测试工具,实现更快、可重用的测试套件。
  • 考虑可用于元数据验证、数据格式检查、行计数、唯一性检查、数据清理、负载测试、性能测试、烟雾测试的自动化测试工具

数据卷可伸缩性导致性能问题

由于需求变化而不断增长的数据量

  • 使用用于数据量估计的技能和工具集
  • 使用峰值预期生产量加载数据库,以帮助确保 ETL 流程可以在商定的时间范围内加载数据量