I want to use Azure Blob storage as a "temporary" storage location for a project I'm working on. By "temporary", I mean that data will be stored in Azure Blobs but only for short periods of time, definitely far less than a month. Here are a few example scenarios:
- Upload 50GB of data to some blobs. One hour later, download that 50GB and delete the blobs.
- Upload 100GB of data to some blobs, and immediately download it on another host and delete the blobs. (The time difference here is determined only by the bandwidth in/out of Azure)
- Upload 25GB of data to some blobs. One day later, delete the blob without retrieving it at all, but upload a new 25GB dataset that day.
All of Azure's blob storage billing details state billing is "GB per month". But then another page I found mentions that if you're storing blobs for less than one month, you can "estimate" costs by calculating per-day costs. This suggests that blob storage billing is done on a per-day granularity. If that's true, then scenario 3 above can be easily calculated - I'd be billed the price of 25GB for one month, divided by the number of days in that month. If scenario 3 continued continuously I'd be billed for 25GB at the GB/month rate each month.
However that doesn't answer what would happen in scenarios 1 and 2. Imagine scenarios 1 and 2 might happen multiple times per day. Suppose scenario 1 happens 10 times in one day. In that instance, I have actually moved 500GB in and out of Azure blobs. But at the end of the day, there is 0GB of data being used. Do I get billed for 50GB (the maximum I occupied) for one day, or 500GB for one day, or 50GB for a longer period of time? Suppose two operations are running in parallel 5 times a day, so I'm using a maximum of 100GB of storage at one specific time, but again, one hour later all 100GB is deleted.