我有一个小型 ADF 管道,用于将一系列文件从 Azure 存储帐户复制到 Azure Data Lake 帐户。作为管道中的最后一项事件,我想要运行一个 U-SQL 脚本,该脚本使用复制的文件作为输入并将结果输出到 U-SQL 托管表。
U-SQL 脚本基本上从复制的文件中提取数据,应用一些转换,然后将其插入到现有的 U-SQL 托管表中。
如何(如果可能)将 U-SQL 表添加为 Azure 数据工厂中的输出数据集?
最佳答案
当前无法将 U-SQL 内部表添加为 Azure 数据工厂 (ADF) 中的输出数据集。最近出现了类似的问题here Michael Rys(U-SQL 之父)的回答是“我知道 ADF 团队有一个工作项目可以为您完成此操作。”
但是,您可以使用 Azure 数据工厂来运行参数化 U-SQL 脚本,其中输入参数是文件路径。这会产生类似的结果。
来自 recent question 的示例管道:
{
"name": "ComputeEventsByRegionPipeline",
"properties": {
"description": "This is a pipeline to compute events for en-gb locale and date less than 2012/02/19.",
"activities": [
{
"type": "DataLakeAnalyticsU-SQL",
"typeProperties": {
"scriptPath": "adlascripts\\SearchLogProcessing.txt",
"scriptLinkedService": "StorageLinkedService",
"degreeOfParallelism": 3,
"priority": 100,
"parameters": {
"in": "/input/SearchLog.tsv",
"out": "/output/Result.tsv"
}
},
...
基本上,U-SQL 脚本来自:
@searchlog =
EXTRACT ...
FROM @in
USING Extractors.Tsv();
至:
@searchlog =
EXTRACT ...
FROM "/input/SearchLog.tsv"
USING Extractors.Tsv();
我认为这可以达到你想要的效果。
关于azure - 是否可以使用 U-SQL 托管表作为 Azure 数据工厂中的输出数据集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41484458/