如何解决使用7zip在Azure Functions应用中解压缩文件
是否可以使用Azure数据工厂或Functions应用程序从.tar.gz中提取文件,以供ADF中的ETL流程提取?
我尝试在Functions Apps中使用7zip,它可以很好地提取上传到Functions App本身的测试.tar.gz文件,但会导致Blob容器中存储的文件出错。
这是我在函数中的run.ps1中的命令
.\7za.exe x 1.tar.gz
#下面,该文件是Blob容器中的Blob-无法正常工作
.\7za.exe x $InputBlob
我收到上述命令的错误
2020-09-11T16:06:42.721 [错误]错误:程序'7za.exe'无法运行:仅当标准输出重定向时才支持StandardOutputEncoding。在D:\ home \ site \ wwwroot \ tools \ run .ps1:9 char:1+。\ 7za.exe e $ InputBlob + ~~~~~~~~~~~~~~~~~~~~~~ .Exception:Type:System.Management.Automation.ApplicationFailedExceptionErrorRecord :Exception:Type:System.Management.Automation.ParentContainsErrorRecordExceptionMessage:程序'7za.exe'无法运行:仅当标准输出重定向时才支持StandardOutputEncoding。D:\ home \ site \ wwwroot \ tools \ run.ps1:9 char:1+。\ 7za.exe e $ InputBlob + ~~~~~~~~~~~~~~~~~~~~~ .H结果:-2146233087CategoryInfo:ResourceUnavailable:(:) [],ParentContainsErrorRecordRecordExceptionFullyQualifiedErrorId: NativeCommandFailedInvocationInfo:ScriptLineNumber:9OffsetInLine:1HistoryId:-1ScriptName:D:\ home \ site \ wwwroot \ tools \ run.ps1Line:。\ 7za.exe e $ InputBlobPositionMessage:在D:\ home \ site \ wwwroot \ tools \ run.ps1 :9 char:1+。\ 7za.exe和$ InputBlob + ~~~~~~~~~~~~~~~~~~~~~~ PSScriptRoot:D:\ home \ site \ wwwroot \ toolsPSCommandPath
解决方法
不幸的是,Azure Data Factory中没有现成的功能可以从TAR文件中提取内容。
这里是现有的用户语音功能请求线程,我建议您对功能请求建议进行投票和/或评论,以增加功能实现的优先级。
但是,作为解决方法,您可以尝试使用Azure数据工厂的扩展功能来转换不支持的文件。两个选项包括Azure功能和使用Azure Batch(ADF中的自定义活动)的自定义任务。
您的question已在Microsoft问答平台上得到答复。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。