在我看来,有三种方法可以测试这种情况:
i)使用第三方程序(Python / Java)
ii)手动(在csv中进行凝视和比较/下载并进行比较)
iii)使用ETL测试自动化工具
选项(i)您已经提到过 .
选项ii)对于某些数据子集您可以凝视并比较源数据库和目标数据库之间的数据 . 或者,您可以从Excel中的Source&Target下载数据样本,并使用宏进行数据比较和验证 . 但由于这涉及手动步骤,这将耗费时间并且由于使用样本而无法提供良好的数据覆盖 .
选项iii)有一些许可工具,如Query Surge,BI Validator,DB Solo等,可用于数据比较和验证 . DB Solo只能进行DB到DB的比较 . 此外,您可能无法使用DB Solo验证复杂的转换 . 然而,Query Surge&BI Validator可以执行DB到DB,DB到文件,文件到DB,文件到文件数据的比较和验证 . 如果源数据和目标数据之间存在任何变换,这些也可以帮助您验证复杂的转换 .
您还可以使用这些工具在数据仓库中的不同层之间进行进一步的数据验证,并自动执行大多数ETL测试 . 要调查您的ETL工具选项,请查看此wiki .