You are designing an Azure application that processes graphical image files. The graphical Images are
processed in batches by remote applications that run on multiple servers.
You have the following requirements:
The application must remain operational during batch-processing operations.
Users must be able to roll back each image to a previous version.
You need to ensure that each remote application has exclusive access to an image while the
application processes the image. Which type of storage should you use to store the images?
A.
Table service
B.
Queue service
C.
Blob service
D.
A single Azure VHD that is attached to the web role
Explanation:
* Blob Leases allow you to claim ownership to a Blob. Once you have the lease you can then update
the Blob or delete the Blob without worrying about another process changing it underneath you.
When a Blob is leased, other processes can still read it, but any attempt to update it will fail. You can
update Blobs without taking a lease first, but you do run the chance of another process also
attempting to modify it at the same time.
* You can opt to use either optimistic or pessimistic concurrency models to manage access to blobs
and containers in the blob service.Azure Blob Storage Part 8: Blob Leases
http://justazure.com/azure-blob-storage-part-8-blob-leases/Using Blob Leases to Manage Concurrency with Table Storage
http://www.azurefromthetrenches.com/?p=1371