我有一个存储在我的ADL商店的USQL脚本,我正在尝试执行它。脚本文件非常大 - 大约250Mb。
到目前为止,我有一个数据工厂,我已经创建了一个Linked Service,我正在尝试创建一个Data Lake Analytics U-SQL Activity。
我的U-SQL Activity的代码如下所示:
{
"name": "RunUSQLScript1",
"properties": {
"description": "Runs the USQL Script",
"activities": [
{
"name": "DataLakeAnalyticsUSqlActivityTemplate",
"type": "DataLakeAnalyticsU-SQL",
"linkedServiceName": "AzureDataLakeStoreLinkedService",
"typeProperties": {
"scriptPath": "/Output/dynamic.usql",
"scriptLinkedService": "AzureDataLakeStoreLinkedService",
"degreeOfParallelism": 3,
"priority": 1000
},
"policy": {
"concurrency": 1,
"executionPriorityOrder": "OldestFirst",
"retry": 3,
"timeout": "01:00:00"
},
"scheduler": {
"frequency": "Day",
"interval": 1
}
}
],
"start": "2017-05-02T00:00:00Z",
"end": "2017-05-02T00:00:00Z"
}
}
但是,我收到以下错误:
错误
来自>管道'RunUSQLScript1'的活动'DataLakeAnalyticsUSqlActivityTemplate'没有输出且没有计划。请添加>输出数据集或定义活动计划。
我想要的是让这个Activity按需运行,即我根本不想安排它,而且我也不明白输入和输出在我的情况下是什么。我试图运行的U-SQL脚本在我的ADL存储上运行数百万个文件,并在对内容进行一些修改后保存它们。
答案 0 :(得分:1)
目前,ADF不支持在ADLS中运行存储在USQL活动中的USQL脚本,即“typeProperties”下的“scriptLinkedService”必须是Azure Blob存储链接服务。我们将更新USQL活动的文档,以使其更加清晰。
支持存储在ADLS中的运行USQL脚本在我们的产品待办事项上,但我们还没有确认的日期。
Shirley Wang
答案 1 :(得分:1)
目前,ADF不支持按需执行活动,需要使用计划进行配置。您将需要至少一个输出来驱动活动的计划执行。输出可以是虚拟Azure存储,但实际上不会写出数据,但ADF利用可用性属性来驱动计划执行。例如:
{
"name": "OutputDataset",
"properties": {
"type": "AzureBlob",
"linkedServiceName": "AzureStorageLinkedService",
"typeProperties": {
"fileName": "dummyoutput.txt",
"folderPath": "adf/output",
"format": {
"type": "TextFormat",
"columnDelimiter": "\t"
}
},
"availability": {
"frequency": "Day",
"interval": 1
}
}
}