Welcome to EMC Consulting Blogs Sign in | Join | Help

Random Ramblings of a Platform Architect

Continuing the adventure with Azure - Getting Data into cloud storage part 2 Azure Storage

Thought I'd better get round to seeing how easy it was to get data into Azure storage and with the guys at Cerebrata allowing me to have an early peak at their beta Client for Azure storage offering I had run out of excuses not to .

Azure storage is available in three forms:

· Windows Azure Blob - provides storage for large data items.

· Windows Azure Table - provides structured storage for maintaining service state.

· Windows Azure Queue - provides asynchronous work dispatch to enable service communication.

As the Cerebrata Client for Azure Storage only supports table storage at the moment that's what I'll be looking at getting up there in the cloud.

But first a quick refresher on some of the aspects of Azure storage that we do need to know before we begin though:

To connect to the local Development storage or the Cloud storage storage end points need to be configured

</InputEndpoints>

<ConfigurationSettings>

<Setting name="AccountName" />

<Setting name="AccountSharedKey" />

<Setting name="TableStorageEndpoint" />

</ConfigurationSettings>

 

AccountName: specifies the name of your Windows Azure account. The account name is one of the components used to construct the URI of a store resource.

AccountSharedKey: specifies the key used to authenticate a request made against Windows Azure storage. To authenticate a request, it must be signed with the key for the account that is making the request

TableStorageEndpoint : specifies the base URI of the table storage service.

To use Azure Storage a Storage Account is needed. This is created via the Windows Azure web portal. A 256-bit key is generated. This key is used to authenticate user request to the storage system.

The account name is part of the host name in the URL. The hostname for accessing tables is <accountName>.table.core.windows.net.

  • Table - contains a set of entities. Table names are scoped by the account. An application may create many tables within a storage account.
  • Entity - Entities (an entity is analogous to a "row") are the basic data items stored in a table. An entity contains a set of properties. Each table has two properties that form the unique key for the entity
  • Property (Column) - This represents a single value in an entity. Property names are case sensitive. A rich type set is supported for property values
  • PartitionKey - The first key property of every table. The system uses this key to automatically distribute the table's entities over many storage nodes.
  • RowKey - A second key property for the table. This is the unique ID of the entity within the partition it belongs to. The PartitionKey combined with the RowKey uniquely identifies an entity in a table.
  • Timestamp - Every entity has a version maintained by the system.
  • Partition - A set of entities in a table with the same partition key value.

 

 

So how did I get data into Azure Storage without having to actually code anything you wonder well it goes like this :

I logged onto the Azure Services Developer portal and created a new project :

 

 

I then accessed the link for the beta Cerebrata Azure Storage Client:

 

First impressions were that I liked the interface as its a lot cleaner than the SDS client was a bit more professional in its look and feel .

 

 

 

 

The first thing you see is the Connection form

 

 

 

 

In the Storage Account name I entered 'gracecloud2' this being the unique storage Account name I selected. I then pasted in the Primary Access key value into the storage account key field I then clicked connect.

 

 

Using Shift + Left mouse button when hovering over the tables tree item brings up the context sensitive menu

 

 

 

To add entities is a simple matter of clicking the new entity tab and completing the entity designer

 

 

 

 

You can also query the tables but thats for another post.

This is an early beta but it shows promise so I'll be keeping an eye on this tool as I believe the Azure platform could do with more DBA type tools and this one is currently ahead of the field .

 

I also found

Azure Storage Explorer which is a handy little application that lets me view my tables and as you can see from the screen-shot below its looking at the data I loaded up using the Cerebrata tool. All that's needed to get it working is to modify the config file so its using the unique storage account and primary access key value. Note of warning it really does delete the whole table as someone has already noticed not just the entity when you click the delete entity button so I'd recommend it for just viewing your entities

 

 

So now that I only need to look at Azure guess it means I should be able to focus on creating that cloud application I've mentioned wanting to build . I hadn't forgotten I've just not had the time really hopefully I'll be able to make the time now so I'd better go dust off that C# book I'd been wading through....

Published 27 March 2009 22:07 by Grace.Mollison

Comments

 

Random Ramblings of a Platform Architect said:

Being on the lookout for tools that will enhance the Azure development and support experience I was pleased

October 6, 2009 13:21
Anonymous comments are disabled

About Grace.Mollison

Platform Architect .
Powered by Community Server (Personal Edition), by Telligent Systems