U-SQL - 与执行相关的查询

时间:2016-12-17 17:59:33

标签: azure azure-storage-blobs azure-data-factory azure-data-lake u-sql

我编写了多个U-SQL脚本,其输出存储在ADLA中,基于此,我几乎没有问题。

  • 我们如何在U-SQL中运行相关作业?
  • 如何根据
  • 等条件执行声明
If RecordCount > 0 then
     insert into table1
endif
  • 我们如何安排U-SQL作业?
  • 我们可以编写多个脚本并从主脚本调用它们吗?
  • 在脚本执行期间,编译器准备并编译代码。花了将近30-40秒。我们如何捆绑已编译的代码并创建ADF管道?

1 个答案:

答案 0 :(得分:2)

您可以使用Azure Data Factory计划和编排U-SQL作业,也可以使用其中一个SDK(Powershell,C#,Java,node.js,Python)编写自己的调度程序。

U-SQL支持两种条件执行方式:

  1. 如果您的条件可以在编译时进行评估,例如,当您传递参数值或check for the existence of a file时,您可以使用IF statement
  2. 如果您的条件只能在执行脚本期间确定,那么您可以在评论中使用FileInputStream fis=new FileInputStream(src); is = encryptor.wrapInputStream(fis); is.skip(83); os = new FileOutputStream(dest); // ... 子句作为wBob概述。
  3. 正如wBob所提到的,您可以将大多数U-SQL语句封装在过程中,然后从其他脚本/过程中调用它们,或者如果需要重用脚本文件,则可以编写自己的包含/编排方式。

    目前没有能力重复使用和提交已编译的代码,因为编译取决于确切的信息,例如存在的文件和访问数据的统计信息。