Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼


Getting Started with Microsoft's Windows Azure Cloud: The Lay of the Land

Durable Storage

Nearly every application has data at its core. Of course, because Windows Azure is a flexible platform, developers can choose to run a data technology of their choice, but Windows Azure provides several built-in options for storing and managing data.

SQL Azure provides fully managed relational databases. For most developers, using SQL Azure is as easy as configuring the right database connection string. Like all the storage options built in to Windows Azure, SQL Azure stores three replicas of your data.

Windows Azure blobs and tables are the NoSQL storage services built into the platform. Blob storage allows developers to store and retrieve file-like objects. Blobs are typically used for media such as images or videos and for large data files. Table storage is for non-relational structured data. Tables are used for storing and simple querying of any kind of application data, such as product catalogs and user preferences. Blobs and tables are accessed with simple REST APIs (and libraries exist for many languages). Each storage account can store up to one hundred terabytes of blob and table data.

Scaling the data in Windows Azure takes different forms depending on the storage technology used. For SQL Azure, more databases can easily be added, and applications should share their data across multiple databases for maximal performance. Blob and table storage are automatically scaled out horizontally in response to demand.

Going Global

Thanks to the scale-out programming model and durable storage, any Windows Azure application can be scaled by adding more virtual machines. This is easy to do with the management portal or API.

To go beyond a single data center, Windows Azure lets us deploy our application to multiple data centers and use a feature called Traffic Manager to intelligently route users to the closest data center. Windows Azure has six data centers worldwide (two in North America, two in Europe, and two in Asia), and the Traffic Manager makes it easy to make effective use of all six data centers.

For static content, Windows Azure offers a world-class Content Delivery Network (CDN), with twenty-four CDN nodes worldwide (and growing). The CDN can cache content from your application or from a blob storage account; and turning it on takes only a few clicks.

The combination of Traffic Manager for your application and CDN for your content makes Windows Azure an easy to get good performance globally.

Beyond the Basics

To provide developers with the full set of tools and services they need, Windows Azure has a list of available services. In addition to running your application and storing your data, Windows Azure provides caching, identity, messaging, and more.

Each of these services is optional and available separately. For example, some Windows Azure applications use the Access Control Service for identity. At the same time, some developers building applications outside of Windows Azure use the Access Control Service, too. This is possible because it's an independent service accessed through a web API.

More Information

For more information, visit WindowsAzure.com. I also recommend the Windows Azure Platform Training Course, which includes several hands-on labs that walk you through the various features of the platform. A limited free trial of Windows Azure is available to help you get started at http://windowsazure.com/free-trial.

Steve Marx is a Technical Product Manager on the Windows Azure team at Microsoft. He blogs at http://blog.smarx.com and can be found on Twitter at @smarx.

For first looks at using other cloud platforms, see these introductions to:

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.