测试 ETL 管道的最佳实践是什么?

数据挖掘 参考请求
2021-09-24 18:56:53

在传统的软件开发实践中,一段代码在投入生产之前,要经过各个阶段的测试(单元测试、集成测试、用户验收测试),以保证软件的稳定性。

ETL 管道,作为一段代码,也应该通过这些测试步骤来构建一个健康的系统。

然而,由于 ETL 过程的性质,传统的测试技术可能不适用。

是否有专门针对 ETL 管道测试的参考或指南?

1个回答

几年来,我一直在编写和测试 ETL 管道,通常有两种类型的管道。

  1. 仅用 python 或其他方式编写的代码管道

  2. 使用 SSIS 或 Informatica 等工具的 GUI 管道

第一组您可以像任何代码、单元和集成测试一样进行测试,第二组您只能使用集成测试进行真正的测试,即您部署代码并在测试环境中运行它。

我在这里扩展了如何对代码管道进行单元测试:https ://the.agilesql.club/2019/07/how-do-we-test-etl-pipelines-part-one-unit-tests/

本质上,您将需要单元和集成测试以及监控,这是生产中持续测试的一种形式:)