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
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
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.
Good luck!
Azure Services Management Tools 1
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
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
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
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
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
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
With 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




