Windows Azure Storage Abstractions and their Scalability
Targets10 May 2010 2:41 PM
The four object abstractions Windows Azure Storage provides for application
- Blobs – Provides a simple interface for storing named files along
with metadata for the file.
- Tables – Provides massively scalable structured storage. A Table is a
set of entities, which contain a set of properties. An application can
manipulate the entities and query over any of the properties stored in a Table.
- Queues – Provide reliable storage and delivery of messages for an
application to build loosely coupled and scalable workflow between the different
parts (roles) of your application.
- Drives – Provides durable NTFS volumes for Windows Azure applications
to use. This allows applications to use existing NTFS APIs to access a network
attached durable drive. Each drive is a network attached Page Blob formatted as
a single volume NTFS VHD. In this post, we do not focus on drives, since their
scalability is that of a single blob.
The following shows the Windows Azure Storage abstractions and the Uris used
for Blobs, Tables and Queues. In this post we will (a) go through each of these
concepts, (b) describe how they are partitioned (c) and then talk about the
scalability targets for these storage abstractions.
Is not new, but it is very well done!