我有一个带有HD Insight Pipeline的数据工厂管道,它试图访问Azure Data Lake目录 .
"type": "HDInsightHive",
"typeProperties": {
"scriptPath": "mpp-hive-scripts/parse_log.q",
"scriptLinkedService": "AzureStorageLinkedService",
"defines": {
"inputtable": "adl://mppmetering.azuredatalakestore.net/hour=23",
"outputtable": "wasb://mpp-metering-hive-output@mppmetering.blob.core.windows.net/output/"
}
},
运行此管道时出现以下错误:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: java.io.IOException No FileSystem for scheme: ad
这在使用以下规范访问Azure Blob存储的管道中工作正常:
"type": "HDInsightHive",
"typeProperties": {
"scriptPath": "mpp-hive-scripts/parse_log.q",
"scriptLinkedService": "AzureStorageLinkedService",
"defines": {
"inputtable": "wasb://mpp-metering-live@mppmetering.blob.core.windows.net/hour=23",
"outputtable": "wasb://mpp-metering-hive-output@mppmetering.blob.core.windows.net/output/"
}
},
任何帮助,将不胜感激 . JS
1 回答
目前,Azure Data Factory不支持在Hive脚本中引用ADL Store . 唯一受支持的商店是blob存储(wasb) . 这就是您看到错误的原因 . 您需要在“定义”部分中使用blob存储(wasb链接) . 如果要将数据置于ADL存储区,您可以使用ADF中的“复制”活动将数据从Blob存储区移动到ADL存储区 .