单元测试 - 在多个文件中管理 U-SQL 脚本,并将其作为单个作业运行



我们编写了一个大的U-SQL脚本,该脚本由几个相互依赖的代码单元组成。它可以作为单个 U-SQL 作业运行。顺便说一句,我们将此作业作为 Azure 数据工厂活动运行。

我们希望将此脚本划分为多个 U-SQL 脚本,每个脚本包含单个单元,以便更好地进行维护和测试。这样,我们将能够对脚本的单个单元进行单元测试。但是,如果我们这样做,我们将面临另一个问题。对于多个脚本,我们必须在部署数据工厂管道之前将所有这些脚本合并到单个脚本中。

是否有办法管理多个文件中的 U-SQL 脚本,并将其作为单个作业提交到 Azure 数据工厂中?

此时,脚本必须是一个自包含的整体。可以将脚本的各个部分拆分为过程和表值函数,以便更轻松地在 U-SQL 目录中重用、可维护性和共享。然后,要提交的脚本将组成这些工件。

如果您可以详细说明如何在文件级别拆分脚本,请告诉我。我看到的一些问题是,您需要定义文件的顺序,以便以正确的顺序完成名称解析,并且提取将在输出:)之前发生。

您可以将任务拆分为多个 usql 存储进程或 TVF,然后创建一个主存储进程以根据所需的顺序调用所有进程。例如:Proc1 - 具有插入客户记录的逻辑Proc2 - 添加合并客户所有订单的列TVF1 - 传递客户 ID 返回有关客户的一些详细信息Proc3 - 使用详细信息并将其输出到文件中MasterProc - Call Proc1、Proc2、TVF1 和 Proc3

谢谢安吉特

最新更新