有没有办法最小化U-SQL准备时间?

时间:2017-02-06 20:45:34

标签: azure-data-lake u-sql

我的U-SQL作业的准备时间约为30秒。是否有可能降低它?

我的代码如下:

USE DATABASE x;
USE SCHEMA y;

@results = SELECT RowKey
FROM y.tableName
WHERE USQLApplication2.queryHelper.func().Contains(PartitionKey) AND TimestampTicks < new System.DateTime(2016,12,30).Ticks 
      AND TimestampTicks > new System.DateTime(2016,12,29).Ticks;
OUTPUT @results TO "/data/output.csv"
USING Outputters.Csv();

1 个答案:

答案 0 :(得分:2)

准备时间主要包括脚本的编译,优化和代码生成。由于U-SQL当前以批处理模式运行,因此系统已经过优化,可以在准备期间花费时间来缩短大量数据的运行时间。

在您的情况下,基于提供的脚本,我认为对用户定义函数的调用可能会增加准备时间。如果内联函数调用可以在该阶段节省一些时间,请与团队核实。

编辑: 基于你在另一个线程中的问题,你似乎有一个高度分区的表。如果这是正确的,那么访问分区并将它们联合起来的编译也将增加准备时间。我们有一个积压项目来改善这方面。