我正在ADF中制作自定义活动,其中包括从Azure存储Blob中读取多个文件,对它们执行一些操作,然后最终将结果文件写入Azure Data Lake Store。 最后一步是我停下来的地方,因为据我所知,.NET SDK只允许从本地文件上传。
有没有办法(以编程方式)将文件上传到ADL Store,其中不来自本地文件?可能是一个blob或一个流。如果没有,任何解决方法?
答案 0 :(得分:1)
是的,可以从Stream上传,诀窍是首先创建文件,然后将流附加到它:
string dataLakeAccount = "DLSAccountName";
var adlsFileSystemClient = new DataLakeStoreFileSystemManagementClient(credentials);
adlsFileSystemClient.FileSystem.Create(dataLakeAccount, filepath, overwrite: true);
adlsFileSystemClient.FileSystem.Append(dataLakeAccount, filepath, stream);
另见this article。