通过流下载 azure blob - 退出 137
Download azure blob via stream - Exit 137
我正在尝试通过 Azure-python-sdk get_blob_to_stream 下载一个大文件,但是,我的程序一直退出并显示 return 代码 137 - 这似乎是相关的运行 内存不足。 (我可以在顶部看到 python 正在消耗越来越多的内存,直到它被杀死)。
代码:
with io.open(file_path, 'w') as file:
self.blob_service.get_blob_to_stream(container_name='container', blob_name=blob_name, stream=file)
我为此使用 azure-sdk-for-python and get_blob_to_stream,文件大约 6.5 GB。
文件被创建为 0 字节并且没有写入任何内容 - 我在这里做错了什么吗?
下载 SDK 并浏览代码后,我发现了如何下载这个大 blob。
- 您 必须 提供大于 1 的 max_connections 值 - 这样可以分块下载文件,并且将它们写入流。
- 您需要传入一个二进制流('wb')
问题示例中的工作代码:
with io.open(file_path, 'wb') as file:
self.blob_service.get_blob_to_stream(container_name='wxdata', blob_name=blob_name, stream=file, max_connections=2)
我正在尝试通过 Azure-python-sdk get_blob_to_stream 下载一个大文件,但是,我的程序一直退出并显示 return 代码 137 - 这似乎是相关的运行 内存不足。 (我可以在顶部看到 python 正在消耗越来越多的内存,直到它被杀死)。
代码:
with io.open(file_path, 'w') as file:
self.blob_service.get_blob_to_stream(container_name='container', blob_name=blob_name, stream=file)
我为此使用 azure-sdk-for-python and get_blob_to_stream,文件大约 6.5 GB。
文件被创建为 0 字节并且没有写入任何内容 - 我在这里做错了什么吗?
下载 SDK 并浏览代码后,我发现了如何下载这个大 blob。
- 您 必须 提供大于 1 的 max_connections 值 - 这样可以分块下载文件,并且将它们写入流。
- 您需要传入一个二进制流('wb')
问题示例中的工作代码:
with io.open(file_path, 'wb') as file:
self.blob_service.get_blob_to_stream(container_name='wxdata', blob_name=blob_name, stream=file, max_connections=2)