我不希望我在ADF管道中的复制数据活动覆盖blob文件,而是将新数据附加到该文件中。但是ADF仅支持Blockblob,是否可以将数据追加到现有文件中?
答案 0 :(得分:0)
您可以使用Web Activity代替“复制活动”。使用Blob Service Rest API可以发送一个PUT请求,其中包含要添加到Blob的数据。 您可以选择通过此活动使用数据集和链接的服务。
JSON:
{
"name":"AppendDataActivity",
"type":"WebActivity",
"typeProperties":{
"method":"Put",
"url":"https://<myAccount>.blob.core.windows.net/<myContainer>/<myBlob><SASToken>&comp=appendblock",
"headers":{
"Content-Type":"application/json"
},
"datasets":[
{
"referenceName":"<consumedDatasetName>",
"type":"DatasetReference",
"parameters":{
...
}
}
],
"linkedServices":[
{
"referenceName":"<consumedLinkedServiceName>",
"type":"LinkedServiceReference"
}
]
}
}
请注意,主体只能支持JSON对象或JSON值,JSON数组是固定的,但不支持非JSON值。对于这种解决方法,您可以使用Azure函数作为终结点,可以在其中附加文件或任何所需的内容。