As of August 2009

Aug 13, 2009 12:01 GMT  ·  By

The Windows Azure Blob features that allow customers to manipulate files as large as 50 GB have been updated. Brad Calder, from Windows Azure Storage, revealed that the new additions to Microsoft’s Cloud operating system went live on August 11, 2009. Testers currently leveraging the Community Technology Preview of Windows Azure are already able to take advantage of the evolution of Windows Azure Blob modifications. However, Windows Azure CTP users should know that the new collection of features is only available via the Windows Azure Storage REST interface. However, Microsoft does plan to continue with the evolution of Windows Azure, by integrating the new features into future release of the Windows Azure SDK and storage client library.

“We are releasing a new set of features for Windows Azure Blob. Windows Azure Blob enables applications to store and manipulate large objects and files in the cloud. The blobs (files) can be up to 50GB in size for the CTP. All changes for this release are versioned changes, using “x-ms-version: 2009-07-17”. All prior versions of commands executed against the storage system will continue to work, as we extend the capabilities of the existing commands and introduce new commands,” Calder noted.

The latest features added to Windows Azure include Update Blob with PutBlockList, Root Blob Container, and Shared Access Signatures for Signed URLs. Windows Azure testers will now be able to update the contents of specific blobs. This was not the case ahead of the August 2009 refresh. In fact, before the update, refreshing content was synonymous with re-uploading the entire blob, even though the changes introduced were affecting a single block.

“With this new version, PutBlockList now allows you to add blocks, remove blocks, replace blocks, shuffle the order of existing blocks, or any combination of these for an existing blob. The benefit of this new feature is that to perform these changes you only have to upload the blocks you want to add or change. PutBlockList now allows you to create a new version of the blob by choosing blocks from a combination of (a) the existing set of blocks that comprise the current blob from the committed block list and (b) the newly uploaded blocks from the uncommitted block list,” Calder explained.

With the introduction of the Root Blob Container – Windows Azure now supports scenarios in which multiple storage accounts can leverage a single root blob container. In this regard, Cloud applications will be able to not only store but also reference blobs right off the domain address. “With this versioned change, we also changed the way applications perform operations on containers to make it explicit that it is a container operation instead of a blob operation,” Calder added. “Note, to use the root blob container “x-ms-version: 2009-07-17” must be specified. Support for anonymous requests that do not require a x-ms-version HTTP header to be specified will be added in the future.”

Windows Azure users can take advantage of Shared Access Signatures for Signed URLs to produce signatures that will streamline access to Azure Blobs. All signatures can be time-bombed, and have specific expiration dates, making it possible for Azure Blobs to be accessed without owning a private key or without the content being public.

“Applications can now create these Signed Access Signatures and add these to requests to Azure Blobs to create Signed URLs. You create a signature computing a hash over a canonicalization of the request using your storage account secret key. The signature can then be used as part of the URL to provide read, write, or delete access for blob requests. Note, Shared Access Signatures do not require the use of x-ms-version,” Calder stated.