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

时间:2016-07-13 08:17:08

标签: unit-testing azure-data-factory azure-data-lake u-sql

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

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

有没有办法在多个文件中管理U-SQL脚本并将其作为Azure Data Factory中的单个作业提交?

2 个答案:

答案 0 :(得分:0)

此时脚本必须是一个独立的整体。您可以将脚本的一部分拆分为过程和表值函数,以便在U-SQL目录中更容易地重用和维护以及共享。然后你提交的脚本会组成这些文物。

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

答案 1 :(得分:0)

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

谢谢 安奇