2017-07-25 57 views
1

我试图发布此ADF DataLakeAnalyticsU-SQL管道活动继蔚蓝步步DOC(https://docs.microsoft.com/en-us/azure/data-factory/data-factory-usql-activity)数据工厂解决方案。脚本路径到Azure的数据工厂DataLakeAnalytics的u-SQL管道

{ 
    "type": "DataLakeAnalyticsU-SQL", 
    "typeProperties": { 
     "scriptPath": "\\scripts\\111_risk_index.usql", 
     "scriptLinkedService": "PremiumAzureDataLakeStoreLinkedService", 
     "degreeOfParallelism": 3, 
     "priority": 100, 
     "parameters": { 
     "in": "/DF_INPUT/Consodata_Prelios_consegna_230617.txt", 
     "out": "/DF_OUTPUT/111_Analytics.txt" 
     } 
    }, 
    "inputs": [ 
     { 
     "name": "PremiumDataLakeStoreLocation" 
     } 
    ], 
    "outputs": [ 
     { 
     "name": "PremiumDataLakeStoreLocation" 
     } 
    ], 

    "policy": { 
     "timeout": "06:00:00", 
     "concurrency": 1, 
     "executionPriorityOrder": "NewestFirst", 
     "retry": 1 
    }, 
    "scheduler": { 
     "frequency": "Minute", 
     "interval": 15 
    }, 
    "name": "ConsodataFilesProcessing", 
    "linkedServiceName": "PremiumAzureDataLakeAnalyticsLinkedService" 
    } 

在出版得到这个错误:

25/07/2017 18:51:59- Publishing Project 'Premium.DataFactory'.... 
25/07/2017 18:51:59- Validating 6 json files 
25/07/2017 18:52:15- Publishing Project 'Premium.DataFactory' to Data 
Factory 'premium-df' 
25/07/2017 18:52:15- Value cannot be null. 
Parameter name: value 

试图弄清楚了什么可能是错误的项目也提出了该问题驻留到活动选项"typeProperties"如上图所示,专门为scriptPathscriptLinkedService属性。该医生说:

scriptPath: Path to folder that contains the U-SQL script. Name of the file 
is case-sensitive. 
scriptLinkedService: Linked service that links the storage that contains the 
script to the data factory 

发布项目没有他们(使用硬编码script)将成功完成。问题是,我无法弄清楚究竟把什么放在他们身上。我尝试了几种组合路径。我唯一知道的是脚本文件必须作为依赖项在本地引用到解决方案中。

有人可以帮助我吗?

预先感谢您。

回答

1

脚本链接服务需要Blob存储,而不是Data Lake Storage。

忽略发布错误,其误导。

将解决方案中的链接服务提供给“scriptLinkedService”属性中引用的Azure存储帐户。然后在'scriptPath'属性中引用blob容器+路径。

例如:

"typeProperties": { 
    "scriptPath": "datafactorysupportingfiles/CreateDimensions - Daily.usql", 
    "scriptLinkedService": "BlobStore", 
    "degreeOfParallelism": 2, 
    "priority": 7 
}, 

希望这有助于。

Ps。仔细检查属性名称是否区分大小写。它也可能导致无益的错误。

+0

它工作。谢谢。对此没有文档感到羞耻。 –

+1

这一切与新技术的试验和错误:-) 我个人更喜欢在逻辑ADLa数据库中创建我的USQL作为存储过程。然后调用ADF的procs。 –

+0

尊敬的法比奥,我也会建议提出针对ADF的功能请求以支持来自ADLS帐户的脚本:) –

相关问题