Introducing Windows Azure

Posted by Marcio Castilho on October 31, 2008

MSDN Channel has released another video with director of Windows Azure team, Manuvir Das, to introduce Microsoft’s new cloud operating system, Windows Azure. He talks about what exactly is Windows Azure, as many people keep asking if it a new OS that his company will be releasing, and he explains that Azure could be thought as an extensions to Windows in the cloud, which provides a highly scalable virtualization fabric for server-side application execution, deployment, automatic management, and simple storage. Windows Azure provides the base infrastructure for services in the cloud.

SecondLight - the future of Microsoft Surface

Posted by Alin Irimie on October 30, 2008

There is a pretty cool video on Youtube with a demo run by Microsoft researchers, showing a project called SecondLight, an updated version of Microsoft’s “Surface” computer. More details about SecondLight can be found here.

Windows Azure Vocabulary 1

Posted by Alin Irimie on October 30, 2008

With the new Azure technologies announced at PDC, there’s a brand new dictionary that businesses, system integrators, ISVs, and all software developers must learn. Bellow are just a few examples.

Azure Services Platform  Microsoft Cloud OS  Windows Azure  Live Framework  Mesh Applications  Access Control Service  The Service Bus  Azure SDK  Windows Azure Tools for Microsoft Visual Studio  Cloud-based technologies  Microsoft SQL Services  Fabric Controller  RESTful approach  Live Mesh  Cloud Workflow  SQL Data Services  Relational DBMS in the cloud  Mesh-enabled Web application  Live Operating Environment  Windows Azure Storage Services  Windows Azure Blobs  Programmable schema in the cloud  Cached reflection on devices  Centralized Resource Management  Blob Queue  Development Fabric  Cloud Live Operating Environment  Microsoft Dynamics CRM Services  Pay As You Go  Microsoft Data Centers  Flexible data model  Distributed Cache  LINQ  JSON  POX  DLR

Good luck!

Azure Services Management Tools 1

Posted by Alin Irimie on October 30, 2008

Microsoft released a set of feature reach management tools for the Azure Services. It manages your cloud based workflows, identity/access control rules, and SQL Data Services data. Much better than the Azure Services portal management tools. You can download the tools here.

The Azure Services Management Tools include an MMC SnapIn and Windows PowerShell cmdlets that enable a user to configure and manage several Azure Services including: SQL Data Services, .NET Access Control Services, and the .NET Workflow Service. These tools can be helpful when developing and testing applications that use Azure Services. For instance, using these tools you can easily browse and query data in SQL Data Services, view and change .NET Access Control Rules, and deploy and view workflows. 

All of the source code for the MMC snap-in and the PowerShell cmdlets is provided with this sample. You can use and extend the code for your own applications. However, the Azure Services Management Tools is not supported by Microsoft product support. 

Azure Services Training Kit available for download 1

Posted by Alin Irimie on October 30, 2008

The Azure Services Training Kit includes a comprehensive set of technical content including samples, demos, hands-on labs, and presentations that are designed to help you learn how to use the Azure Services Platform. This initial PDC Preview release includes the hands-on labs that were provided at the PDC 2008 conference. These labs cover the broad set of Azure Services including Windows Azure, .NET Services, SQL Services, and Live Services.

Windows Azure - Data Storage

Posted by Alin Irimie on October 30, 2008

The goal of Azure storage services is to allow applications to: store and access data, scale to store any amount of data, pay only for what you use/store. In order to use any of the services, a user has to create a globally unique storage account name. The user will receive a secret key that will be used to create a signature for each request, used for authentication.

There are three actual services providing data storage functionality: Blob, Table and Queue

Blob - simple interface for storing named files and metadata about the files. A Blob is named file. A set of blobs is a Blob Container. An account can have many blob containers. Sharing policies are set at the container level (public read or private). A blob or a container can have associated metadata, name/value pairs, up to 8kb per blob or container. The maximum size of a blob is 50 GB. The blob namespace looks something like: 

http://<account>.blob.core.windows.net/<container>/<blobname> 

Blob interface is easy to use using REST put/get/delete. Check here for an example on Windows Azure that uses the blob storage service.

Tables - provide massively scalable, highly available, durable structured storage with automatic load balancing and scaling. It is NOT a relational database so: no joins, foreign keys etc. If you need relational database in the cloud you’ll need to use SQL Services.

An account can create many tables. A table is a set of entities (rows). An entity is a set of properties (columns). A table can be actually considered an entity. An entity can have up to 255 properties and it has two mandatory properties, that together represent the unique ID of the entity in a table: PartitionKey which enables scalability and RowKey which uniquely identify the entity within a table partition. A partition represents all the entities in a table with the same PartitionKey value. Supported property types are: String (up to 64kb), Binary(up to 64k), bool, DateTime, GUID, Int, Int64, Double.

Table entities can be accessed via ADO .NET or using REST. See the sample here.

Queue - reliable storage and delivery of messages, simple asynchronous work dispatch. Programatic access to the queue is done through REST. An account can create many queues. A queue contains messages. There is no limit on number of messages in the queue but a message is not stored more than a week. A message should be less than 8kb. The queue allows messages to be retrieved and processed at least once.

The queue namespace looks like this:

http://<account>.queue.core.windows.net/<queuename>

Other information about the Azure data storage:
 - All data is replicated at least 3 times
 - Dynamic replication to maintain a healthy number of replicas
 - Automatic Load Balancing of Hot Data - Monitor the usage patterns and load balance access to Blob Containers, Table Partitions and Queues
 - Caching of Hot Blobs, Entities and Queues
 - Hot Entity and Queue data pages are cached and served from memory 

Microsoft CCR and DSS Toolkit 2008

Posted by Marcio Castilho on October 29, 2008

The Microsoft CCR and DSS Toolkit 2008 delivers a set of .NET- and Compact Framework-class libraries and tools that enable developers to better deal with the inherent complexities of creating looselycoupled concurrent and distributed applications. The Toolkit is designed to help developers take advantage of the Concurrency and Coordination Runtime (CCR) and Decentralized Software Services (DSS) originally released as part of Microsoft Robotics Developer Studio. Microsoft CCR and DSS Toolkit 2008 provide early adopters with access to select technologies today; transitioning to Microsoft’s .NET Framework in the future.

To learn more about Microsoft CCR and DSS Toolkit 2008 visit http://www.microsoft.com/ccrdss

Soma’s thoughts on PDC 2008 announcements

Posted by Marcio Castilho on October 29, 2008

Microsoft Vice President of the Developer Division S. Somasegar talks in this video, published by MSDN Channel 9, about the PDC 2008 announcements and the vision that his team has in building products and solutions for developers to get the most out of their Windows 7 experience and all the new related features introduced by the next version of Windows.

Ray Ozzie: Reflections on Azure

Posted by Marcio Castilho on October 29, 2008

Channel 9 has published a quick chat with Microsoft Chief Software Architect Ray Ozzie and talks about the complexities of designing and implementing the Azure Services Platform, his key take-aways from PDC2008 and his guiding architectural principles for Azure.

Ruby and SQL Data Services SDK 1

Posted by Alin Irimie on October 29, 2008

Azure loves RubyWith the announcement at PDC of Windows Azure, Microsoft started releasing more and more Ruby samples to allow developers accessing the new services. Actually at this year’s PDC I heard so much about Ruby and Ruby on Rails from the mouths of Microsoft employees, making me think that the “R” word is not forbidden anymore on the campus. We found a set of ruby samples for SQL Data Services (SDS), formerly called SSDS.  The source is hosted on? GitHub of course! The samples will be available as gems from RubyForge. The samples provided are:

sds-rest - A Ruby library to use the Microsoft SDS REST interface

sds-tasks - A sample application using the sds-rest libraries active-resource adapter

sds-radiant - A modified version of RadiantCMS that uses an experimental active_record adapter to talk to Microsoft SQL Data Services REST interface