An Azure service that provides an event-driven serverless compute platform.
Understanding Azure Function App Consumption Plan and Blob Storage Costs (GPv1 vs GPv2)
Hi all,
I would appreciate some advice on how to structure my Azure Function App on a Consumption Plan correctly.
At the moment, I am using a Function App that is triggered whenever a message is received from Azure IoT Hub. The function analyses the incoming packet and performs the required operations based on the contents of that message.
My Function App is running on the Consumption Plan, and I believe it is currently using a General-Purpose v1 (GPv1) storage account for its underlying storage.
Recently, I received a notification suggesting that the storage account should be upgraded from General-Purpose v1 to General-Purpose v2 (GPv2). However, my concern is related to cost. From what I understand, GPv2 pricing can be higher depending on the type and number of storage transactions, and for this particular workload I need to keep costs as low as possible.
My understanding is that even though the Function App performs its execution internally, it still makes underlying API calls to Blob Storage for things such as logs, triggers, and state management. Because of this, I am wondering whether the Function App itself is generating a significant number of storage transactions behind the scenes.
From what I can see, the Blob Storage account is being used for several operations, which made me question whether the Function App relies more heavily on storage than I originally assumed.
So my questions are:
Am I correct in understanding that Azure Functions internally invoke Blob Storage APIs during execution?
Is the storage account mainly used for function state, logs, and trigger management, or is there something else happening behind the scenes?
- Is upgrading to GPv2 unavoidable for Azure Function Apps, and how much impact does it typically have on costs? Is there a way to see the values for Write, Read, and other storage operations so that I can estimate what to expect in terms of charges? My storage account currently shows 96,328 transactions, so I assume this figure represents the combined total of read, write, and other operations. Is that correct?
I suspect I may have misunderstood the relationship between Azure Functions and the underlying storage account, as it appears to be doing more than just storing files.
Any guidance or clarification would be greatly appreciated.