Azure Function App Python Blob触发器巨大的文件大小

问题描述 投票:0回答:1

我正在使用带有blob触发器的Azure函数应用程序(Python)来处理CSV并将记录移到事件中心。遵循标准文档后,我有一个有效的代码(最多50行)。但是我想知道如果文件的大小在几GB范围内,应该采取什么方法。是否将整个文件一次性发送到Azure函数?如果需要按固定大小或逐行读取块,Azure的触发概念将支持该操作吗?

我正在寻找用于python中上述问题的任何方法/代码,以避免在azure函数容器内存中加载完整的文件。

python filesize azure-function-app azure-blob-trigger
1个回答
0
投票

我实际上也有类似的问题。我不太熟悉Python(我主要是C#开发人员),但是Azure函数本身存在问题。

我正在做一个简单的任务:Blob触发函数,它将csv文件的内容保存到Azure上的SQL数据库中。我有3个测试文件,大小各不相同:1 MB,〜12 MB和〜120 MB。前两个文件工作正常,但较大的文件不一致。有时它会毫无问题地处理它,有时会启动Azure功能,并且没有其他消息发送到App Insights。

我正在批量处理10,000条记录的CSV,为每个批次创建一个新的数据库连接以避免超时。

经过一些研究,似乎对Azure函数还有其他一些限制。我发现了其他一些有趣的细节的SO问题

Microsoft AZURE blob triggered function working intermittently

“ ...推荐的方法是在创建Blob时创建队列消息,并使用QueueTrigger属性代替BlobTrigger”

© www.soinside.com 2019 - 2024. All rights reserved.