首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将Flask文件上载到Azure Data Lake Store

将Flask文件上载到Azure Data Lake Store
EN

Stack Overflow用户
提问于 2019-05-20 06:26:42
回答 1查看 334关注 0票数 0

我正在尝试将文件从Flask (Flask-restplus)应用程序直接上传到azure data lake store (gen1)。

flask应用程序在azure web应用程序上运行。这有没有可能,或者我需要先把它上传到azure web应用服务器,然后再把它移到ADLS上?

用于ADLS的python库(https://github.com/Azure/azure-data-lake-store-python)似乎没有任何用于此的函数。例如,ADLUploader需要一个本地文件作为源文件。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-20 16:16:56

没有直接的方法。

一种方法是像你提到的那样,上传到应用服务器,然后移动到ADLS。

另一种可能的方式是,如果你可以使用convert the file content to bytes,那么你可以使用ADLS中的一些其他方法,比如open() / write(),细节如下(只需伪代码,你可以根据需要修改它们):

1.创建客户端:myclient = core.AzureDLFileSystem(adlCreds,store_name=adlsAccountName)

2.获取要上传的文件名,在ADLS:myclient.touch("test/myfile.txt")中创建一个空文件

3.使用'wb‘模式在ADLS中打开文件:myfile = myclient.open('test/myfile.txt','wb')

4.使用一些方法将您上传的文件的内容转换为字节

5.使用write()和flush()方法将字节内容写入ADLS中的文件:

代码语言:javascript
运行
复制
myfile.write(in_file.read()) #the content should be bytes
myfile.flush(force=True)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56212492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档