Sunday, November 29, 2009

Windows Azure and Cloud Computing Posts for 11/23/2009+

Windows Azure, SQL Azure Database and related cloud computing topics now appear in this weekly series.

Update 11/29/2009: Panagiotis Kefalidis: Patterns: Windows Azure - In-Place upgrades, Windows Azure - What is an upgrade domain? and Windows Azure Table Storage and concurrency; Chris Hoff: From the X-Files – The Cloud in Context: Evolution from Gadgetry to Popular Culture; David Chappell: The Microsoft Application Platform: A perspective; Reuven Cohen: Why The Cloud needs Virtualization; Hovhannes Avoyan: The Cloud & Your Monitoring Vendor; and more.

Update 11/26/2009: Eric Lai: Microsoft adds access controls for SQL Azure online database; Reuven Cohen: CloudCamp Seoul December 16th; and Dimitry Sotnikov: Demo recording and reviews of Quest OnDemand.

Update 11/25/2009: Brad Calder: Windows Azure Storage at PDC 2009; Vittorio Bertocci: Windows Identity Foundation Slides; Mike Flasko: ADO.NET Data Services v1.5 for .NET 3.5; Jim Nakashima: ASP.NET Provider Scripts for SQL Azure; Eugenio Pace: RIA Services and WIF – Part II #NET; Vittorio Bertocci: Windows Identity Foundation Overview Session recording and Update on Windows Azure + Windows Identity Foundation; Simon Davies: Running Ruby on Rails on Windows Azure; Bruce Guptill: Microsoft = “Cloud IT Master Brand”; Chris Hoff:  Apologizing In Advance: I’ll Be On PaulDotCom 11/27…; and more.

Note: This post is updated daily or more frequently, depending on the availability of new articles in the following sections:

To use the above links, first click the post’s title to display the single article you want to navigate.

Cloud Computing with the Windows Azure Platform published 9/21/2009. Order today from Amazon or Barnes & Noble (in stock.)

Read the detailed TOC here (PDF) and download the sample code here.

Discuss the book on its WROX P2P Forum.

See a short-form TOC, get links to live Azure sample projects, and read a detailed TOC of electronic-only chapters 12 and 13 here.

Wrox’s Web site manager posted on 9/29/2009 a lengthy excerpt from Chapter 4, “Scaling Azure Table and Blob Storage” here.

You can now download and save the following two online-only chapters in Microsoft Office Word 2003 *.doc format by FTP:

  • Chapter 12: “Managing SQL Azure Accounts, Databases, and DataHubs*”
  • Chapter 13: “Exploiting SQL Azure Database's Relational Features”

HTTP downloads of the two chapters are available from the book's Code Download page.
* Content for managing DataHubs will be added when Microsoft releases a CTP of the technology

Off-Topic: OakLeaf Blog Joins Technorati’s “Top 100 InfoTech” List on 10/24/2009, SharePoint Nightmare: Installing the SPS 2010 Public Beta on Windows 7 of 11/27/2009, and Unable to Activate Office 2010 Beta or Windows 7 Guest OS, Run Windows Update or Join a Domain from Hyper-V VM (with fix) of 11/29/2009.

Azure Blob, Table and Queue Services

••• Panagiotis Kefalidis discusses Windows Azure Table Storage and concurrency in this 11/26/2009 post:

Today, during my presentation at Microsoft DevDays “Make Web not War” I had a pretty nice question about concurrency and I left the question somehow blurry and without a straight answer. Sorry, but we were changing subjects so fast that I missed it and I only realized it on my way back.

The answer is yes, there is concurrency. If you examine a record on your table storage you’ll see that there is a Timestamp field or so called “ETag”. Windows Azure is using this field to apply optimistic concurrency on your data. When you retrieve a record from the database, change a value and then call “UpdateObject”, Windows Azure will check if timestamp field has the same value on your object as it does on the table and if it does it will update just fine. If it doesn’t, it means someone else changed it and you’ll get an Exception which you have to handle. One possible solution is retrieve the object again, update your values and push it back. The final approach to concurrency is absolutely up to the developer and varies between different types of applications. …

Brad Calder summarizes new features of Windows Azure Storage at PDC 2009 in this 11/25/2009 post:

  • Windows Azure XDrive
  • Geo-Replication
  • Block Blob
  • Page Blob
  • Content Delivery Network
  • Custom Storage Domain Names
  • Snapshot Blob
  • Lease Blob

Brad provides more details on each new feature and links to additional documentation.

• Mike Flasko announced that v1.5 of ADO.NET Data Services will be released as “an in-place update of the data services binaries that shipped with the .NET Framework 3.5 SP1 (instead of a SxS release as was the case for the v1.5 CTP1 release)” in his Data Services Release Plan Update post of 11/25/2009:

We’ve heard a lot of feedback since we first discussed our plans to create v1.5 of Data Services (http://blogs.msdn.com/astoriateam/archive/2009/03/01/announcing-ado-net-data-services-v1-5-ctp1.aspx).  Since that time we’ve been busy improving the quality of the product, adding features and solidifying our release plans.   The remainder of this post discusses our target release plan for the next version of Data Services and when the final bits will be available.  

One area we heard consistent feedback on was the desire to limit the number of Data Service releases where possible.  To address this need we have decided to change the ship vehicle for the release to be an in-place update of the data services binaries that shipped with the .NET Framework 3.5 SP1 (instead of a SxS release as was the case for the v1.5 CTP1 release).  The release will ship as a redistributable update to the .NET Framework 3.5 SP1, which will include enhanced data services runtime assemblies and an updated datasvcutil.exe command line tool.  As you’d expect, since the release is shipping as an update to the .NET Framework 3.5 SP1, all the binaries shipped with the release will be named as they were in the .NET Framework 3.5 SP1 release (i.e. System.Data.Services.*.dll).  In addition to shipping an update to the .NET Framework 3.5 SP1, we’ll release a new Silverlight 3-compatible client library and the .NET-related client and server features from the .NET 3.5 SP1 update release will be directly included in the subsequent .NET Framework 4.0 release.   

We will also be changing the release name to better convey that it is an in-place update to the .NET Framework 3.5 SP1. We’ll be dropping “v1.5” from the name and simply calling it  the Data Services Update for the .NET Framework 3.5 SP1.

The feature set for the release will include the features we have already discussed on the data services blog: http://blogs.msdn.com/astoriateam/archive/2009/03/01/announcing-ado-net-data-services-v1-5-ctp1.aspx and http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx  …

Mohit Srivastava’s New Endpoint Options Enable Additional Application Patterns post of 11/24/2009 describes two new features of Web and Worker roles:

At PDC last week, we introduced two communication-related capabilities:  a) inter-role communication and b) external endpoints on worker roles.  These capabilities enable new application patterns in Windows Azure-hosted services.

Inter-role Communication

While loosely coupled communication via Queues remains the preferred method for reliable message processing, roles can now communicate directly using TCP, HTTP, or HTTPS connections.  In addition, roles are notified as role instances within the deployment are added or removed, enabling elasticity.  A common application pattern enabled by this is client-server, where the server could be an application such as a database or a memory cache.

clip_image002

This is implemented via a) a worker role with an InternalEndpoint in the service definition, b) server code that calls RoleEnvironment.CurrentRoleInstance to discover what IP/port to bind to, and c) client code the calls RoleEnvironment.Roles[<TargetRole>] to discover the server endpoints.  For more information, refer to the HelloFabric SDK sample.  To add elasticity, refer to the documentation for the RoleEnvironment.Changed event to have the clients notified when server instances are added or removed.

External Endpoints on Worker Roles

Worker roles can now contain external facing endpoints, or InputEndpoints.  You can bind to these endpoints either directly in the worker role or from within a process that you spawn from the worker role.  Unlike the InternalEndpoints used by inter-role communication, InputEndpoints are load balanced.

A common application type enabled by this is a self-hosted Internet-exposed service, such as a custom application server.

clip_image004

Note that the port that actually gets assigned to the instances is different from the port that gets exposed via the load balancer.  This port can be discovered via the RoleEnvironment.CurrentRoleInstance property.

<Return to section navigation list> 

SQL Azure Database (SADB, formerly SDS and SSDS)

Eric Lai reports Microsoft adds access controls for SQL Azure online database in this 11/17/2009 ComputerWorld article: “Companies will be able to define, enforce policies controlling who can see what data.”

Microsoft Corp. is creating technology to give businesses more fine-grained control over access to data stored in the company's upcoming SQL Azure database-as-a-service, a senior engineer said Tuesday.

Code-named Vidalia, the technology will provide "trustworthy data collaboration for highly-sensitive business data across disparate trust domains," said Microsoft technical fellow Dave Campbell in a talk [SQL Azure Database: Present and Future] at Microsoft's Professional Developers Conference 2009 (PDC09) in Los Angeles. [Empasis and session link added.]

Translation: Companies will be able to define and enforce policies controlling who can see what data at a very detailed level.

That will be through what Campbell called a "capability generation center" that will protect data inside the database, i.e. "at rest," and when it's moving through the network, i.e. "in motion."

Lai’s article also covers continuous backup, automatic database size expand/shrink, and automated split/merge database features.

• Jim Nakashima’s ASP.NET Provider Scripts for SQL Azure post of 11/24/2009 points out:

If you want to use the ASP.NET Providers (membership, role, personalization, profile, web event provider) with SQL Azure, you'll need to use the the following scripts or aspnet-regAzure.exe tool to setup the database: http://support.microsoft.com/default.aspx/kb/2006191

Currently the only provider which is not supported on SQL Azure is the session state provider.

Personally, I like using SSMS 2008 R2 to connect to SQL Azure and using the Query window to run the scripts. (if you already have SSMS 2008 installed, you can use that as well, just connect from the Query window itself, not the Object Explorer as that will fail)

Note: I use SQL Server Authentication with the following credentials:

  • Server name: <servername>.database.windows.net
  • Login: <username>@<servername>)

<Return to section navigation list> 

AppFabric: Access Control, Service Bus and Workflow

Dimitry Sotnikov’s Demo recording and reviews of Quest OnDemand post of 11/25/2009 reports:

Last week at Microsoft PDC we launched our Systems Management as a Platform offering with a few of the services going into private beta.

Now you can actually see a quick demo of one of these services and read some of the media coverage.

You can see the product demo if you watch the recording of Kim Cameron’s identity keynote session (the Quest OnDemand demo starts approximately at the 35:00 mark). If you don’t have Silverlight, here are the recording files in downloadable format:

In addition to watching the demo, you might want to read what media had to say about this service:

Read, watch, and sign-up for the beta.

Dimitry is leading the new product research and development team for Quest’s Windows Management business unit.

• Eugenio Pace continues his RIA Services and WIF series with RIA Services and WIF – Part II of 11/25/2009:

As promised in my previous post, here’s the second part of my findings playing with WIF and RIA Services beta. This time, I used the HRApp sample available here.

The initial steps are essentially the same I described before:

1- Installed the sample and make sure it runs

2- Ran “FedUtil” which:

a- Created an STS and added it to the solution.

b- Change the application web.config with necessary settings for WIF (added modules, added federation information, etc)

3- F5 and voila. It just works:

image

Vittorio Bertocci’s Windows Identity Foundation Overview Session recording: drawing-on-slides presentation technique post of 11/24/2009 explains his reasons for hand-drawing slides:

In the same spirit of experimentation shown here, in the last year I’ve been using another fairly original presentation technique. The original aim was to mitigate my being chronically late in turning in slides for events but it turned out something that audiences actually like :-).

The technique is easy to explain, and i am sure that somebody is using it already (although I’ve never stumbled in anybody doing it so far). Instead of having fully baked slides, you have just few elements appearing at strategic moments; you hand draw everything else on the fly, directly during the presentation. I finally got a good recording of a session using the technique, the “Windows Identity Foundation Overview” I gave last week at PDC09. It went really well, and judging from the comments the drawing was a contributing factor (BTW thanks to all the nice comments on twitter and in the evals! :-)) [Emphasis Vibro’s.]

Channel9 presents a Juval Lowy - Introducing the .NET Service Bus video session starting 11/24/2009:

The .NET services bus is part of the new Microsoft Cloud Computing Windows Azure initiative, and arguably, it is the most accessible, ready to use, powerful, and needed piece. The service bus allows clients to connects to services across any machine, network, firewall, NAT, routers, load balancers, virtualization, IP and DNS as if they were part of the same local network, and doing all that without compromising on the programming model or security. The service bus also supports callbacks, event publishing, authentication and authorization and doing all that in a WCF-friendly manner.

This session will present the service bus programming model, how to configure and administer service bus solutions, working with the dedicated relay bindings including the available communication modes, relying on authentication in the cloud for local services and the various authentication options, and how to provide for end-to-end security through the relay service. You will also see some advanced WCF programming techniques, original helper classes, productivity-enhancing utilities and tools, as well as discussion of design best practices and pitfalls.

Apparently, the new Windows Azure AppFabric Service Bus and Access Control nomenclature hasn’t gotten out to everyone. (Windows Server AppFabric is a set of integrated technologies that “make it easier to build, scale and manage Web and composite applications that run on IIS.”)

Kevin Hoffman’s Breaking Changes for .NET Services in Azure post of 11/24/2009 carries a “Something Wicked This Way Comes” subtitle:

If you want the full gory details, check out the .NET Services team blog post here. What follows below are some of the things that I think are most crucial to understand both for new developers and for developers unfortunate enough to be in a position of having to migrate a lot of code. Quite possibly the single most important thing to note is this:

If you bought a book on Windows Azure that has already been released or will be released within the next month or two, it is out of date and completely irrelevant. PDC (along with the changes I'm going to outline below) will substantially change all of the Azure offerings.

I've trimmed a little bit because some of the breaking changes are fairly minor and don't have too much impact on developers.

Kevin continues with his list of important breaking changes in the AppFabric.

I disagree that Cloud Computing with the Windows Azure Framework is “is out of date and completely irrelevant.” Kevin appears to base his judgment only on changes to the Azure AppFabric (nee .NET Services), which are dramatic. However, only minor and, for the most part, non-breaking changes have been made to Azure Data Services: Blobs, Queues, and Tables, as evidenced by several of the book’s sample applications running on the South Central US data center. SQL Azure received only a few minor updates in its November 2009 preview. The book’s sample applications will be updated and updates will be made to online chapters as time permits. I expect my book to continue to be a primary source of development know-how for Azure’s commercial version.

Books that publish before Visual Studio 2010’s release will be subject to late-breaking changes in Azure’s programming tools. The Azure team expects to deliver significant updates to the Azure Services Platform’s commercial version every eight months. Thus some elements of any Azure book will become outdated by the time it’s published. An investment in a book-length Windows Azure programming guide will return many times its cost in development time and effort saved.

Kevin’s Installing Geneva Beta 2 on Windows 7 warns of pitfalls in this configuration:

Recently I installed the Beta 2 version of "Geneva", or ADFS 2.0. All of my machines are now Windows 7 machines, including just about all of my VHDs and virtual machines. The only time I use Win2k8 R2 is when the product I'm installing specifically requires me to do that. So when I installed Geneva on my Win7 box, I thought everything would be fine.

Then I rebooted. The "Modify STS Reference..." and "Update federation metadata" menu items that are supposed to be added to the list of available options on an ASP.NET web application were gone. They were there before I rebooted but they were gone after. I also noticed something funny with the Identity training kit install. Every single directory and file in there was marked as "read only". I would unset the read-only flag, right click the file, get properties, and sure enough, it was still set to read only. WTF?

He goes on to explain the problem with “blocked content” from the Internet and how to unblock it to prevent the issues he describes.

Vittorio Bertocci delivered an Update on Windows Azure + Windows Identity Foundation in his 11/23/2009 post:

New Guide

Back in August we released a guide that explained how to use WIF for adding to your web role SSO and claims-based identity capabilities via WS-Federation. That guide contained a number of workarounds that were made necessary by the limitations of the bits publicly available back then. A lot of you wrote back saying that the guide was helpful in getting you going with identity & the cloud and experiment with the scenario (I believe it was the case here, for example) while waiting for more complete guidance. That’s great, because that was precisely the intent.

Since then both WIF and Windows Azure evolved quite a bit: today the scenario described by the original guide can be set up in significantly less steps, and above all you are no longer forced to implement the unsafe workarounds that were needed back then.

The new identity developer training kit and channel9 training course contain a new hands-on lab, Federated Authentication in a Windows Azure Web Role Application, which contains an updated version of the guide. We also uploaded a standalone version of the lab in the same code gallery page where we uploaded the first guide, so that if you land there via search engine you’ll have the most up to date information.

The new lab is the result of a coordinated effort from the Windows Identity Foundation, Windows Azure and DPE teams. Among the key contributors Hervey Wilson, Todd West & Sidd Shenoy on the WIF side, Mohit Srivastava and Remy Pairault on the Windows Azure side, and Ryan Dunn & yours truly on the DPE team. We hope you’ll enjoy the results!

Vibro includes links to in-depth information about the guide and Hervey Wilson’s tour de force WIF session at PDC 2009.

<Return to section navigation list>

Live Windows Azure Apps, Tools and Test Harnesses

••• Magnus Mårtensson announced Azure Contrib @ CodePlex updated to the November CTP in this 11/29/2009 post:

The enhanced (intelligent) Windows Azure Project template @ AzureContrib.codeplex.com is now updated to run on Windows Azure Tools for Microsoft Visual Studio (November 2009).

There is a new piece of code for managing logging (tracing) with the new Microsoft.WindowsAzure.Diagnostics functionality. The Microsoft.WindowsAzure.ServiceRuntime has been updated to reflect the recent changes to the Azure runtime including support for the new Windows Azure Role Lifecycle.

The new Microsoft.WindowsAzure.StorageClient release is pending but that takes a bit of more work. The goal @ AzureContrib where Cloud Storage is concerned is to enable so called Persistence Ignorance (PI). The PI thing is about being blissfully ignorant of exactly where my data is stored and how it is stored. Instead of depending on a specific storage technology those who adhere to PI instead depend on an abstraction of storage that gives us the abstract functions we require; such as save, load, select etc. This part of AzureContrib will be reviewed later (soonish). …

The enabling extensibility technique

We use Managed Extensibility Framework MEF to enable extensibility and inversion of control features in AzureContrib

••• Aleksey Savateyev’s AppFabric as a Foundation for Smart Grid post of 11/29/2009 describes a new Azure, AppFabric and Silverlight application:

There's quite a lot of buzz around smart grid lately - many companies jumping on the green tech band wagon and investing resources in making all kinds of applications for smart grid - the next-generation energy infrastructure. Microsoft is no exception - it's developing Microsoft Hohm - a consumer-oriented service to help home residents to reduce their energy bills based on detailed usage report created from the data their utilities provide. My group is also helping our partner ISVs to develop smart-grid solutions based on Microsoft products and technologies. Most recently I helped Invensys to develop Smart Grid Pilot (SGP) application on top of Windows Azure, AppFabric (new name for .NET Services) and Silverlight. The idea behind Smart Grid Pilot is pretty simple - connect all smart grid participants (energy producers, utilities and consumers - businesses and homes) into one distributed network that can reach massive scale but would be easy to use.

Smart Grid Pilot Energy Controller Screen

So, why Azure, AppFabric and Silverlight? The main obstacle on the path to adoption of smart grid is not the outdated power infrastructure (it's actively being modernized), laws (many countries adopted very favorable laws for smart grid businesses) or lack of willingness of consumers to adopt (it means more savings for them). It is the lack of software infrastructure. Simply put, there's no such smart grid software solution right now that could scale to millions of homes, businesses, and most importantly devices. It's not just about connectivity (Internet is everywhere where energy might be these days) but mostly about applications and resources they use to serve the myriad of users, components and data streams in real time, changing constantly in both volume and distribution patterns. …

••• Nicholas Carr looks back on Cloud computing, circa 1965 in this 11/28/2009 post to his Rough Type blog:

A correspondent pointed me to this document, dated March 30, 1965, in which an executive with Western Union, the telegraph company, lays out the company's ambitious plan to create "a nationwide information utility, which will enable subscribers to obtain, economically, efficiently, immediately, the required information flow to facilitate the conduct of business and other affairs."

The idea of a "computing utility" was much discussed in the 1960s, but this document nonetheless provides a remarkably prescient outline of what we now call cloud computing. …

When the history of cloud computing is written, it may be that Western Union will play the role that Xerox now plays in the history of the personal computer: the company that saw the future first, but couldn't capitalize on its vision.

Nick includes numerous excerpts from the brochure in his post.

••• Hovhannes Avoyan discusses The Cloud & Your Monitoring Vendor in this 11/27/2009 post:

If you’re shopping around for a company that monitors your website transactions, servers or networks, there are many points of comparison that would be worth your time covering in a request for proposal process. But here are some major points that are worthwhile asking a potential vendor:

  • How quickly and efficiently can you update your monitoring tools to reflect the latest technological innovations?
  • Does the process require downtime or reduced bandwidth that will take resources away from your ability to monitor my site or server?

Hovhannes Avoyan is the CEO of Monitis, Inc., a provider of on-demand systems management and monitoring software. OakLeaf uses their free mon.itor.us service to keep tabs on uptime of demo projects running in Microsoft’s South Central US data center.

••• Maureen O’Gara reports in Azure Gets its First Commercial ERP App of 11/26/2009: “Earlier this month [Microsoft] took a swing at Salesforce and Oracle CRM On Demand with a ‘six months free’ deal for their users.”

While Microsoft is webifying bits and pieces of its client/server Dynamics ERP solution, it ain't gonna put any full-blown Dynamics ERP on Azure. Too much customization and integration to make a good candidate apparently.

Enter Acumatica, a potentially competitive third-party ERP solution that compares itself to NetSuite except NetSuite is wholly SaaS and Acumatica, out only since June but one of the few programs already in production on the still-in-beta Azure, straddles both a client's on-premises site and the Microsoft cloud.

The Acumatica software is the same in the cloud as it is on-premise and experimenting with in on site is supposed to make accounts more comfortable with the idea of using it in the cloud. …

Simon DaviesRunning Ruby on Rails on Windows Azure post of 11/25/2009 reports:

Last week we announced the availability of some great new Windows Azure features in the November Windows Azure SDK. One of these features enables Worker Roles to receive network traffic from  both external and internal endpoints using HTTP, HTTPS and TCP. This new feature enables many new scenarios, one of then is the ability to run existing applications that receive traffic over sockets in Windows Azure.

Using these capabilities as a foundation we have shown the ability to run various applications and technologies such as MySQL, Mediawiki, Memcached and Tomcat.  We have also provided a number of solution accelerators – which you can find links to here – in order to make it more more straightforward to get up and running. There are a couple of great PDC sessions here and here that demonstrate and explain how to get going with these technologies.

One of the questions I’ve heard from a number of customers and partners over the last few months has been “Is it possible to run Ruby on Rails on Windows Azure”. Well the answer is now yes. Using these new features and the approach used in the solution accelerators I have Ruby on Rails running at http://rubyonrails.cloudapp.net. There is also an incredibly simple test application running with a SQLite database at http://rubyonrails.cloudapp.net/posts

In my next post I will walk through the steps I took to get this working.

My Windows Azure Case Studies for PDC 2009 – Part 2 of 11/24/2009 reports:

Microsoft’s public relations team published during the Professional Developer’s Conference 2009 53 case studies that contained Azure as a keyword. This post contains links to and abstracts of the second, primary earlier 20 of these case studies.

See also Windows Azure Case Studies for PDC 2009 – Part 1 of 11/20/2009.

Jim Nakashima recommends using ASP.NET Provider Scripts for SQL Azure in this 11/24/2009 post:

If you want to use the ASP.NET Providers (membership, role, personalization, profile, web event provider) with SQL Azure, you'll need to use the the following scripts or aspnet-regAzure.exe tool to setup the database: http://support.microsoft.com/default.aspx/kb/2006191

Currently the only provider which is not supported on SQL Azure is the session state provider.

Personally, I like using SSMS 2008 R2 to connect to SQL Azure and using the Query window to run the scripts. (if you already have SSMS 2008 installed, you can use that as well, just connect from the Query window itself, not the Object Explorer as that will fail)

Note: I use SQL Server Authentication with the following credentials:

  • Server name: <servername>.database.windows.net
  • Login: <username>@<servername>)

Maarten Balliauw’s MSDN - Converting an existing ASP.NET application to Windows Azure post of 11/24/2009 explains:

Back from PDC 2009 with a lot of information on Windows Azure, I did an MSDN Live Meeting on ASP.NET and Windows Azure today. Here's the slide deck and demo code.

Abstract: "Put your stuff in the cloud! Windows Azure allows you to take advantage of cloud computing infranstructure for hosting, computing, and storage of your applications. In this demo filled session we take an existing ASP.Net Application and move it to be hosted in Windows Azure, while taking advantage of Windows Azure storage."

Example code can be downloaded here: MSDN - Converting an existing ASP.NET application to Windows Azure.zip (2.01 mb)

Maarten’s slides are here.

John Moore reports ONC Reaches Out with Health IT Buzz in this 11/24/2009 post to the Chilmark Research blog:

Yesterday, Dr. Blumenthal, head of the Office of the National Coordinator (ONC) who is tasked with the roll-out (setting policy) for all that HIT stimulus funding under the HITECH Act, launched his own Blog: Health IT Buzz.  With over 20 comments so far, this Blog has generated a ready following.  Now the question is: Can he/ONC maintain momentum and truly engage the HIT public at large?  A quick scan of the comments revealed not a single comment from an HIT vendor (though there were a few from systems integrators).

Good to see this type of outreach by ONC and do hope that this forum lends itself to a deeper engagement with all stakeholders in HIT, consumers included.

Subscribed.

Clemens Vasters offers The Rough Setup Script for PDC09 SVC18 - Getting DinnerNow! to run on Windows Azure in this 11/23/2009 post:

At the bottom of this post you’ll find the DinnerNow version that I’ve been using for my PDC09 talk. The video of that talk is now available at http://microsoftpdc.com/Sessions/SVC18 and I recommend that you listen to the talk for context.

The DinnerNow drop I’m sharing here is a customized version of the DinnerNow 3.1 version that’s up on CodePlex. If I were you, I’d install the original version and then unpack my zip file alongside of it and then use some kind of diff tool (the Windows SDK’s WinDiff tool is a start) to look at the differences between the versions. That will give you a raw overview of what I had to do. You’ll find that I had to add and move a few things, but that the app didn’t change in any radical way. …

The Windows Azure Team’s November 2009 Release of the Windows Azure Tools and SDK post of 11/23/2009 describes what’s new for the release in detail.

Last week at PDC 2009, we announced several new features for Windows Azure.  These are available in the November 2009 release of the Windows Azure Tools and SDK.

This release adds support for Visual Studio 2010 Beta 2 and Visual Web Developer Express 2010 Beta 2. …

Vaibhav Bhandari announced the HealthVault 0910 Release in this 11/23/2009 post. New features include:

    • Streaming APIs
    • Medical Imaging Support
    • Improvements in Standards Compliance (CCR and CCD)
    • Reconcile Status Discoverability
    • Record Export Usability Improvements
    • HTML enabled Notification E-Mails
    • Signup Codes
    • CCR and CCD Transforms
    • Data Types

Me: Download the Microsoft Sync Framework Power Pack for SQL Azure November CTP released on 11/17/2009:

The Microsoft Sync Framework Power Pack for SQL Azure November CTP contains a series of new components that improve the experience of synchronizing with SQL Azure. This download includes runtime components that optimize performance and simplify the process of synchronizing with the cloud. The Sync Framework Power Pack for SQL Azure contains a database provider for Sync Framework that is specifically tuned for SQL Azure and a stand-alone utility for SQL Server that enables synchronization between an on-premise SQL Server database and SQL Azure. Additionally, the Sync Framework Power Pack for SQL Azure contains a Visual Studio plug-in that demonstrates how to add offline capabilities to applications which synchronize with SQL Azure by using a local SQL Server Compact database. The Microsoft Sync Framework Power Pack for SQL Azure November CTP is comprised of the following:

  • SqlAzureSyncProvider: SqlAzureSyncProvider is a new database provider created by Microsoft for Sync Framework 2.0 that adds first class support for SQL Azure. This new provider performs efficiently, lowers the barrier to entry, and ensures reliability when synchronizing with SQL Azure by intelligently handling some SQL Azure-specific complexities that occur on multi-tenant systems. Specifically, the provider decreases the number of round-trips to the server by using table-valued parameters (TVPs) to apply changes. In addition, When SQL Azure uses its throttling mechanism to minimize the impact of run-away operations, SqlAzureSyncProvider responds by using a “back-off algorithm” which automatically reduces batch sizes from the default of 5,000 rows during synchronization. A helpful side-effect of the use of this algorithm is that changes are viewable before synchronization is complete, and synchronization progress can be displayed in real time.
  • Sql Azure Offline Visual Studio Plug-In: This plug-in extends the functionality of Visual Studio 2008 Professional SP1 by providing a new Visual Studio item template called SqlAzureDataSyncClient. Using this tooling, developers can quickly add the ability to cache data stored in SQL Azure for use in their own application. Data can be cached in SQL Compact using the tooling and the code generated can be extended to support SQL Express as well. Projects that use this item are populated with both the appropriate assembly references and a generated class which contains a method named Synchronize that the developer can call in their application to automatically refresh data from the cloud.
  • SQL Azure Data Sync Tool for SQL Server: This tool contains a wizard that walks users through the SQL Azure connection process, automating both the provisioning and synchronization of data between SQL Server and SQL Azure. This tool is targeted at database administrators and database developers who want the ability to quickly synchronize their existing on-premise database with the cloud efficiently, reliably and without having to write any code.
  • New SQL Azure Events: When writing an application that uses synchronization, developers rely on events to automatically detect and handle necessary synchronization operations. Existing events provided by Sync Framework, such as ApplyChangeFailed, ApplyMetadataFailed, and all change enumeration events are here, but so are new events like AzureBatchApplied, which is fired when changes are successfully applied to the SQL Azure database.
  • Automated Provisioning Getting off the ground has largely been automated by the SqlAzureSyncScopeProvisioning and SqlAzureSyncTableProvisioning classes. Everything that needs to happen cloud-side and on-premise is taken care of by detecting the presence of, and (if necessary) creating, all of the appropriate metadata tables. This is taken a step further by a new plug-in for Visual Studio and SQL Azure Data Sync Tool for SQL Server, both of which automate the setup of SQL Azure connectivity, provisioning and filtering. …

Return to section navigation list> 

Windows Azure Infrastructure

••• Panagiotis Kefalidis explains Patterns: Windows Azure - In-Place upgrades in this 11/28/2009 post:

In a previous post [Windows Azure - Upgrade your Service without disruption (VIP Swap)] I’ve described what a VIP Swap is and how you can use it as an updating method to avoid service disruption. This particular method doesn’t apply to all possible scenarios and if not always, most of the times, during protocol updates or schema changes you’ll need to upgrade your service when its still running, chunk-by-chunk and without any downtime or disruption.

By In-Place, I mean upgrades that take place during which both versions (old version and new version) are running side-by-side. In order to better understand the process below, you should read my “Upgrade domains” post [Windows Azure - What is an upgrade domain?] in which there is a detailed description of what Upgrade domains are, how they affect your application, how you can configure the number of domains etc. [Links added.] …

Reuven Cohen explains Why The Cloud needs Virtualization in this 11/26/2009 post:

Lots of discussion lately about the need for virtualization in a cloud computing context. On one side you have people saying it's not necessary and adds extra complexity, on the other you have people (vendors) saying that virtualization is inherently a cloud infrastructure. Some even go as far as saying that virtualization and cloud computing are one in the same. I'm here to tell you that neither is true. My position is Virtualization Doesn't Make the Cloud, it makes the cloud better. Sure, you could manage raw servers Google style, but why? For me, it comes down two main aspects of scale, scaling up, and scaling out.

First let's look at scaling out, or to scale horizontally which basically means to add more nodes to a distributed system, such as adding a new servers or storage (which is easier). These could be in the form of physical or virtual servers. An example might be scaling out from one web server system to many dedicated slaves machines. Google has made an art form of scaling out. They have data centers around the globe geared toward this one core task - just in time hardware provisioning, but for most this is a very difficult and costly endeavour. Virtualization makes this sort of instant replication & provisioning of many virtual machines much easier. …

David Chappell’s The Microsoft Application Platform: A perspective presentation of June 2009 to the Dutch DevDays in Den Haag The Netherlands was recorded and posted by Matthijs Hoekstra to Channel9 in June 2009:

What is an application platform? Why is it important? And how should we think about application platforms in a world of cloud computing? In this session, David Chappell looks at all of these topics, providing a general model for both on-premises and cloud platforms. He then uses this model to examine several important issues in this area, including the competition between .NET and Java, why SOA is failing, and how the Microsoft platform compares with its on-premises and cloud competitors. …

The presentation includes interesting architectural insights into SOA, Azure, Amazon EC2, et al. David says in this post to his personal blog: “Now that I think about it, a better title for this session might have been Things David Thinks are Interesting in the Application Platform World Today.” 

• Bruce Guptill characterizes Microsoft and Salesforce.com as “Cloud IT Master Brands” in his Cloudy with a Chance of Power Shift: Microsoft Azure, Salesforce Chatter, and Google Chrome Indicate Fundamental IT Changes Research Alert for Saugatuck Research (requires site registration):

… At its annual Professional Developers’ Conference, Microsoft formally announced its Azure Cloud platform plans and availability. The Azure platform combines cloud-based developer capabilities with storage, computational and networking infrastructure services, all hosted on servers operating within Microsoft datacenters. Microsoft-focused developers can deploy applications in the cloud or on-premise. Within the Azure envelope, Microsoft announced AppFabric, a method of inter-connecting services in the Azure cloud, or through the Azure cloud to other services connected to Azure. Microsoft also offered more insight into its “Dallas” information services initiative, a push to offer third party content and information services. And Microsoft made it clear that all its efforts are focused on a very wide and inclusive definition of The Cloud, including Windows desktops, mobile phones and TVs. In sum, Microsoft laid out a broad and deep strategy for its own future as a Cloud IT Master Brand. …

Dion Hinchcliffe’s The cloud computing battleground takes shape. Will it be winner-take-all? post to ZDNet’s Enterprise Web 2.0 blog contains nary a mention of Microsoft or Azure:

This year has been one of relatively grand alliances between emerging cloud computing vendors as they fill holes in their capabilities and try to create appealing one-stop enterprise cloud services.

We’ve seen major announcements so far from IBM and Juniper, Cisco/EMC/VMware, and most recently BMC and Salesforce. There are many other smaller initiatives that have formed as well and all of these efforts underscore several key points for those businesses trying to understand the real strategic benefits of the cloud including cost, agility, and scalability. …

Strange that Dion mentions Amazon, Google App Engine, and Eucalyptus but not Microsoft or Azure.

John Fontana reports Microsoft begins paving path for IT, cloud integration in his feature-length article for NetworkWorld of 11/24/2009:

Microsoft last week launched its first serious effort to build IT into its cloud plans by introducing technologies that help connect existing corporate networks and cloud services to make them look like a single infrastructure.

The concept began to come together at Microsoft's Professional Developers Conference. The company is attempting to show that it wants to move beyond the first wave of the cloud trend, which is defined by the availability of raw computing power supplied by Microsoft and competitors such as Amazon and Google. Microsoft's goal is to supply tools, middleware and services so users can run applications that span corporate and cloud networks, especially those built with Microsoft's Azure cloud operating system

"Azure is looking at the second wave," says Ray Valdes, an analyst with Gartner. "That wave is what happens after raw infrastructure. When companies start moving real systems to the cloud and those systems are hybrid and they have to connect back in significant ways to legacy environments. It's a big challenge and a big opportunity for Microsoft." …

David Linthicum claims The cloud will finally solve the 'big data' problem in this 11/24/2009 post to InfoWorld’s Cloud Computing blog:

Innovation around the management of large data sets is coming from the cloud, such as through MapReduce and Hadoop.

InfoWorld's own Pete Babb provided some good coverage around the "analytics cloud" recently debuted by IBM, called Blue Insight. You can think of Blue Insight as a system that gathers data from those who use it and externalizes the data to those who need it, doing so on a cloud -- a private cloud.

However, IBM clearly does not have a lock on "big data." There has been movement in this direction for some time now, including some innovative approaches to leveraging data such as MapReduce. For those of you unfamiliar with the concept, MapReduce is a software framework brought to us by Google to support large distributed data sets on clusters of computers. What's unique about MapReduce is that it can process both structured and unstructured data and, through the use of a distributed "share nothing"-type query-processing system, return result sets in record time. …

Rick Whiting’s 3 Reasons Why Microsoft's Azure Will Succeed post of 11/23/2009 to ChannelWeb details these factors:

    1. Linking The Cloud With Planet Earth: Visual Studio cloud templates
    2. Fractured Competition: No dominant vendor [?]
    3. Data Management In The Cloud: SQL Azure Database

Mike Wickstrand, Senior Director of Product Planning for Windows Azure, started a new Windows Azure Feedback Forum (a.k.a. My Great Windows Azure Idea) on 11/23/2009:

If you have something you need from Windows Azure, please tell us what it is and vote for other's ideas. I put a few things on the list just to get you started, but feel free to add you own! We want to better understand what you need from Windows Azure and to build plans around how we make the things that "bubble to the top" a reality for our customers in the future. Comments which aren't feature requests will be moderated. It’s that simple.

<Return to section navigation list> 

Cloud Security and Governance

••• Chris Hoff’s From the X-Files – The Cloud in Context: Evolution from Gadgetry to Popular Culture post of 11/27/2009 analyzes Nicholas Carr’s The Big Switch:

Below is an article I wrote many months ago prior to all the Nicholas Carr “electricity ain’t Cloud” discussions.  The piece was one from a collection that was distributed to “…the Intelligence Community, the DoD, and Congress” with the purpose of giving a high-level overview of Cloud security issues.

It is very likely that should one develop any interest in Cloud Computing (“Cloud”) and wish to investigate its provenance, one would be pointed to Nicholas Carr’s treatise “The Big Switch” for enlightenment. Carr offers a metaphoric genealogy of Cloud Computing, mapped to, and illustrated by, a keenly patterned set of observations from one of the most important catalysts of a critical inflection point in modern history: the generation and distribution of electricity.

Carr offers an uncannily prescient perspective on the evolution and adaptation of computing by way of this electric metaphor, describing how the scale of technology, socioeconomic, and cultural advances were all directly linked to the disruptive innovation of a shift from dedicated power generation in individual factories to a metered utility of interconnected generators powering distribution grids feeding all. He predicts a similar shift from insular, centralized, private single-function computational gadgetry to globally-networked, distributed, public service-centric collaborative fabrics of information interchange. …

Chris Hoff (@Beaker) says the “Day after Thanksgiving: Hoff Friday” won’t end well in his Apologizing In Advance: I’ll Be On PaulDotCom 11/27… post of 11/24/2009:

By Mike Perez on November 24, 2009 12:00 PM | Permalink- Paul, Carlos, Mick, Larry, John, & Darren.

What better way to emerge from your (Wild) Turkey stupor than to join the PDC crew and guest Christofer Hoff live at 20:30 EST on Friday November 27th for Episode 177 of PaulDotCom Security Weekly! We promise not to ask you to pass the gravy or overstay our welcome in exchange for your agreement to not Hassle the Hoff.

log-hoff.jpg

As a special treat, the PDC crew will be recording from Larry’s barn! At least, Larry told us it’s his barn (Social Engineering paranoia sets in after a while & we begin to question just about everything these days). …

When active, the live stream(s) can be found at:

Dave Thompson shows you how to Add SSL Security to your Azure Webrole in this 11/24/2009 walk-through:

As the new Azure toolkit allows upload of certificates to be associated with the roles, and multiple web roles, it is possible to set up 2 sites (2 webroles) one which would be secure, and one which would be unsecured.

The first thing you will need is some testing certificates on your local machine which you can generate with the steps found here: http://msdn.microsoft.com/en-us/library/cc949011.aspx. …

Glenn Laffel, MD describes The Data Breach at Health Net in this 11/23/2009 post and posits:

… Companies in every sector of the economy including health care have begun moving operations and sensitive data to the cloud. As the trend accelerates, some experts have questioned whether the cloud is a safe place to store personal data.

What is no longer in question though, is that client-server systems sitting in providers' offices are inherently unsafe places for such data. Every one of the largest breaches of patient confidential information that took place last year for example, could not have happened had the data been stored in the cloud.

And those events pale in comparison to the massive breach of patient data that was announced last week by company officials from Health Net. These officials reported that a portable, external hard drive containing 7 years worth of personal, medical and financial information on 1.5 million customers had been lost. …

Chris Hoff (@Beaker) equates cloud computing with matchmaking in his The Cloud & eHarmony’s 29 Dimensions Of Compatability… post of 11/23/2009:

…[Customer dialogs are] the Cloud equivalent of eHarmony.com’s 29 dimensions of compatibility; it’s such a multidimensional problem in large enterprises that have a huge number of applications (thousands) and a ton of sunk infrastructure, mature decades-old operational practices, cultural dispositions, and economic pressures that it’s hard to figure out what to do.

For large enterprises (and the service providers who cater to them) Cloud is not a simple undertaking, at least not to those who have to deal with bridging the gap between the “old world” and the new shiny bits glimmering off in the distance.

Consider that the next time you hear a story of cloud successes and scrutinize what that really means.

<Return to section navigation list> 

Cloud Computing Events

Reuven Cohen says in CloudCamp Seoul December 16th of 11/26/2009:

I wanted to quickly let everyone know about an upcoming CloudCamp in Seoul December 16th. We're currently looking for a few additional sponsors to help cover some of the costs. If you're interested in helping out, please get in touch. Registration: http://cloudcamp-seoul-09.eventbrite.com.

Reuven Cohen’s Clouds in the Land of the Rising Sun post of 11/25/2009 describes his recent trip to Japan to attend Cloud Camp Tokyo:

Let me point of a few the more interesting points of my trip to the land of the rising sun. As I mentioned in my previous post about the opportunities for Cloud Computing in Asia, if my schedule is any indication of the demand for cloud products, there is a tremendous amount. Every minute of my trip was accounted for with non-stop meetings. I will also point out that the Japanese know how to entertain. As you can probably tell, I do a lot of traveling and am quite frequently taken to fancy restaurants, nothing comes close to the fine restaurants of Tokyo. Duck Sashimi anyone?


As for CloudCamp Tokyo, it was well attended with more then 160 in attendance. One of the more interesting aspects of the Camp was how the Japanese interact in an unconference setting. To put it simply, they don't. Getting them to publicly speak was a challenge. A few ask questions, but generally it was a one way conversation. I spoke, my translator spoke. The lightning presentations were also very well received. After the main unconference is when things got interesting. We had an open bar which probably helped loosen things up a bit. In an orderly single file fashion, almost everyone of the 160 or so attendees proceed to introduce themselves to me, handing me their business cards, with both hands, followed by a bow and a Hajimemashite (a polite 'Hello, I am pleased to make your acquaintance' which you only use the very first time you meet).

Joseph Hofstader will deliver a presentation entititled Cloud-computing architecture – designing multi-tenant applications on Windows Azure on 11/25/2009 at 11:00 AM to 12:30 PM according to this 11/20/2009 post by Bob Familiar:

Abstract: Cloud computing is one of the hottest topics in information technology today.  With all the confusion surrounding acronyms ending in ‘aas’ like Platform as a Service (PaaS), Infrastructure as a Service (IaaS) and Software as a Service (SaaS) it can be intimidating for even seasoned IT professionals.  This presentation will briefly discuss the different types of cloud platforms and then address one of the key business scenarios for the cloud: Software as a Service.

Software as a Service is a business model for making applications available over the Internet.  One of the key tenets of SaaS is multi-tenancy, or software designed to be used by multiple parties.  Designing SaaS applications touches on many of the technologies that comprise the Azure platform: Processing, Storage, Workflow, Database and most importantly security.   This presentation will discuss how each of technologies can be utilized to define a flexible architecture for multi-tenant solutions.

Microsoft Event ID:  1032432981; register here.

Joe is an architect/evangelist in Microsoft Communications Sector.

Chris Bowen reports A Cloudy December in Massachusetts on 11/24/2009:

Though I clearly won’t win any cleverness prizes with this post’s title, I do want to pass along details of some cloud computing related events coming to the greater Boston area in December.

Boston Azure User Group – 12/3

December 3rd (6:30-8:30 PM) will be the second meeting of the new Boston Azure User Group, dedicated to learning about and sharing experiences with cloud computing and the Windows Azure Platform

The meeting, held at Microsoft NERD in Cambridge, will feature Mike Werner and Michael Stiefel, detailing announcements made at last week’s Microsoft PDC.

Boston Cloud Services Meetup – 12/9

The Boston Cloud Services Meetup is holding their next meetup on December 9 and will feature several speakers on different cloud computing topics.

The group meets in Waltham at 6:30 PM. See the Boston Cloud Services Meetup profile for details and to RSVP.

CloudCamp Boston 2 – 12/10

Returning after a the first CloudCamp Boston earlier this year, CloudCamp Boston 2 is a free “unconference” focusing on cloud computing. 

It will be hosted at Microsoft NERD on December 10 from 2-7 PM, with a joint event lunch from 12:30 to 2 with Cloud^3 (see below). …

Register at http://cloudcamp-boston2-09.eventbrite.com

Ryan Dunn provides links to PDC 2009 session videos for selected Windows Azure, codename “Dallas,” SQL Azure, Identity, and Customer and Partner Showcases topics in his PDC 2009 Windows Azure Resources post of 11/23/2009. Ryan also includes:

Channel 9 Learning Centers

Coinciding with PDC, we have released the first wave of learning content on Channel 9. The new Ch9 learning centers features content for both the Windows Azure Platform, as well as a course specifically designed for the Identity Developer. The content on both these sites will be continued to be developed by the team over the coming weeks and months. Watch out for updates and additions.

Downloadable Training Kits

To complement the learning centers on Ch9, we still continue to maintain the training kits on the Microsoft download center, which allows you to download and consume the content offline. You can download the Windows Azure Platform training kit here, and the Identity training kit here. The next update is planned for mid-December.

<Return to section navigation list> 

Other Cloud Computing Platforms and Services

Udayan Bannerjee’s Cloud Computing Service: Amazon EC2 vs Google GAE post of 11/25/2009 begins with a table comparing features and ends with unsupported conclusions about the Google App Engine and Microsoft’s “cloud strategy”:

Why is GAE potentially disruptive?

Over the last decade, Google has build a huge cloud infrastructure for its search and other services

  • The infrastructure has been build using very cost effective hardware
  • Fault tolerance is designed into the architecture
  • They have perfected technologies and algorithms like MapReduce and BigTable created for such infrastructure
  • It is highly scalable.
  • Google is following a strategy of opening up their infrastructure for developers to use – for example Closure JavaScript Toolset
  • They will optimize cloud access through Chrome OS and Android Mobile OS

Their economy of scale will be difficult to match.

What about Microsoft – they are constrained by the fact that they have to defend their desktop business – which will prevent them from following optimal cloud strategy.

<Return to section navigation list> 

blog comments powered by Disqus