Azure is Microsoft's cloud computing operating system announced at the Microsoft Professional Developers Conference (PDC) in October 2008.
Windows Azure supports hosting applications and/or data at Microsoft data centers accessible via the Internet through open, cross-platform protocols such as REST and SOAP. Offloading an application's management and maintenance requirements to the data centers (the "cloud provider") can result in significant savings on operational costs, enabling an organization to focus on its specific business value rather than on IT infrastructure.
With Windows Azure, subscribers manage the runtime behavior of their applications via a browser-accessible portal that exposes a configuration and monitoring interface. This interface is used to direct the underlying Windows Azure fabric controller, the layer that ties together the potentially massive number of machines that can be brought to bear to provide on-demand scalability for the application.
Windows Azure is a developer-oriented environment, with support in Visual Studio .NET for building
- Web role instances - namely, ASP.NET applications and Windows Communication Foundation (WCF) services hosted on IIS running on top of the Windows Azure fabric, and
- Worker role instances - 'batch jobs' that communicate with Web role instances to provide additional processing.
Windows Azure also includes a simple, RESTful (and hence client-agnostic) storage structure for three specific types of data:
- blobs - which can store up to 50MB (currently) of unstructured data, subdivided into blocks for more effective recovery if an error should occur during transmission;
- tables - not in the relational database sense, but rather containers for entities with properties of standard data types like string, boolean, and datetime. Entities are queryable via a variation of LINQ as well as through ADO.NET Data Services and simple REST; and
- queues - which are used to communicate data between Web role and Worker role instances.
To support developing cloud-based applications, Windows Azure includes the Azure Services Platform, which provides a number of services.
The initial CTP release includes:
- Live Services - providing access to Windows Live applications and data, including user-specific data such as social contacts and calendar entries and shared information like maps and other geospatial data. Live Services leverages the Live Operating Environment to provide synchronization capabilities to various devices defined in your mesh. Applications access Live Services via the Live Framework, which provides an open, standardized approach (in contrast to the older Live Services APIs).
- .NET Services - providing a set of infrastructure services (namely, the Access Control Service, Service Bus, and Workflow Service) that can be leveraged by both hosted and on-premises applications.
- SQL Data Services - providing "a database in the cloud," an extension of Microsoft SQL Server that offers reliable, high-performance data storage across multiple data centers. Rather than a relational model, SQL Data Services exposes a hierarchical structure of data as authorities, containers, and entities - a scheme known as ACE.
In addition to the above, see the following links for more information on Azure: