我的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();
答案 0 :(得分:2)
准备时间主要包括脚本的编译,优化和代码生成。由于U-SQL当前以批处理模式运行,因此系统已经过优化,可以在准备期间花费时间来缩短大量数据的运行时间。
在您的情况下,基于提供的脚本,我认为对用户定义函数的调用可能会增加准备时间。如果内联函数调用可以在该阶段节省一些时间,请与团队核实。
编辑: 基于你在另一个线程中的问题,你似乎有一个高度分区的表。如果这是正确的,那么访问分区并将它们联合起来的编译也将增加准备时间。我们有一个积压项目来改善这方面。