Archive for the ‘SQL Azure’ Category.

Presenting on the Windows Azure Platform at the Day of Cloud

imageToday I presented on the Windows Azure Platform at the Day of Cloud conference, in Chicago, IL.  This conference was hosted by Tech in the Middle, and gave speakers the opportunity to present on SalesForce.com, the Windows Azure Platform (yours truly), Amazon Web Services, and Google App Engine.  A great concept, and a lot of fun.

Gabe and Scott from Tech in the Middle recorded and posted each of these talks.  You can find them here:

Jonathan Sapir/Michael Topalovich – Salesforce.com
Video: http://blip.tv/file/2777664

Wade Wegner – Windows Azure Platform
Video: http://blip.tv/file/2786114

Chris McAvoy – Amazon Web Services
Video: http://blip.tv/file/2780311

Don Schwarz – Google App Engine
Video: http://blip.tv/file/2786812

Panel: http://blip.tv/file/2786826

As promised, here is the deck I presented:

If you want to download the entire deck, you can grab it here: Windows Azure Platform at the Day of Cloud.

Thanks for the opportunity; I hope everyone found the presentation useful and had as much fun as I did!

The SQL Azure Migration Wizard will now migrate your data!

George Huey, when he's not writing code! Last month I blogged about the SQL Azure Migration Wizard created by George Huey.  This tool helps you to migrate your SQL Server database into SQL Azure and is available up on Codeplex.  To date, this tool has been downloaded almost a thousand times!

The number one request for the migration wizard was the ability to replicate your data up to SQL Azure (in addition to the SQL schema, which it already does).  Unfortunately, the original SQL Azure CTP didn’t support BCP, and the data migration process was very difficult and required an SSIS package to copy the data into SQL Azure.

With yesterday’s release of SQL Azure CTP 2, however, SQL Azure now supports BCP!

Minutes after CTP 2 went live, George published a new version of migration wizard that takes advantage of BCP to enable you to migrate not only your SQL Server 2005 / 2008 database objects but your data as well!  migration wizard allows you to turn on or off data migration via the application configuration file or during runtime via the options page.  When you select data migration, the export and import process can be quite lengthy.  migration wizard kicks off the export and import process on a back ground thread and will display the BCP results in the program window.  At any time during the process, you can hit the cancel button to cancel the background process.  As migration wizard processes information, it will display the results to the program window.

Here are the release notes for version 1.0 (and 1.1):

  • Added data migration via BCP. Note that when you specify your SQL Azure username, specify your user name as "username@server". Also note that data migration only works on the latest release of SQL Azure (Server Location: South Central US).
  • Modified App.Config to allow you to specify your Options. For example: If you do not want to migrate data, you can turn this off by modifying the App.Config file and changing ScriptData to false.
  • Added a cancel button so that you can cancel while processing.
  • Added a scroll toggle so that during processing you can keep the control from scrolling down to the bottom.
  • Fixed an error in BCP command to allow the passing of the SQL Server instance name.
  • Added color to the SQL results to better identify error messages.

If you’re using SQL Azure, go and grab the new version of the SQL Azure Migration Wizard!  For detailed instructions on how to use the wizard, take a look at the SQL Azure Migration Wizard whitepaper.

SQL Azure Database is Feature Complete!

SQL Azure As many of you probably already know, the CTP of SQL Azure is now feature complete!  Fantastic work by the SQL Azure product team, as it was only in August that they announced the opening of the SQL Azure Database CTP!

I recommend reading the entire announcement on the SQL Azure team’s blog.  Here are some brief notes on the announcement:

  • Details
    • CTP 2 (announced yesterday, October 15th) represents the complete set of features that will be available at commercial launch this November at PDC.
    • SQL Azure Database is now running on one of the go-live production clusters.
    • This environment will automatically roll into the fully supported production environment at PDC.
  • Key features added in CTP 2
    • Firewall support – You can now specify an allow list of IP addresses, preventing unauthorized users from reaching your SQL Azure databases.
    • Bulk Insert SqlBulkCopy, or BCP, is now supported.  This makes data migration much faster.
    • Database Edition Selection – You can now select either the Web Edition (1 GB) or Business Edition (10 GB) version of SQL Azure Database.
    • Additional T-SQL support – A host of new functionality has been exposed.  Take a look at Transact-SQL Reference for details.

Also, you no longer get the "SET ANSI NULLS" error when connecting a query window via SSMS!

If you haven’t tried SQL Azure yet, now’s the time!

Windows Azure in the Real World

Joseph Paradi, Innovation Lead for Internal IT at Accenture
Last week I presented at the Wisconsin .NET Users Group for the first time, along with Joseph Paradi.  I had a great time, and I really appreciate the hospitality of the group – great facility, attentive audience, and excellent questions.  The title of our talk was Windows Azure in the Real World; here’s the abstract for the presentation:

Does this sound familiar? Your boss is asking about cloud computing and Windows Azure, but you’re not sure how to separate the hype from the reality. Or perhaps you’ve heard about Windows Azure and had a chance to try it out, but you still don’t quite understand how or why to use it. Or maybe you’ve been using Windows Azure since PDC in 2008, but you’d like a clearer picture of the roadmap and pricing. If any of these points resonate with you, or if you have different questions and concerns, please join Wade Wegner, Architect Evangelist with Microsoft, and Joseph Paradi, Innovation Lead with Accenture, as they provide you with an update on the Windows Azure Platform and show you how companies like Accenture are using the cloud today. Additionally, Wade and Joseph will discuss the migration of existing internal applications to Windows Azure, securing applications through claims-based authentication and passive federation with Geneva Server, using relational databases in the cloud with SQL Azure, migrating data to the cloud through tools like SSIS, and more.

Our intent was to provide the user group with an update to the Windows Azure Platform and show how some companies (like Accenture) are starting to explore the migration of internal IT applications to the cloud.  I am hopeful we were successful.

During the presentation, I promised that I would put together a blog post and share the user group recording (thanks to Brennan and Scott for recording), useful links, and our decks.  You’ll find all three below.

Useful links

Update to the Windows Azure Platform

Joseph Paradi’s "Real World Azure"

User Group Recordings

Rather than dropping a two hour presentation – which absolutely no one would watch or find useful – I have taken the time to extract some of the most important pieces of the presentation.  This is a bit of an experiment on my part.  I hope you find this useful; please feel free to provide me with feedback.

Why should you care?



Get Microsoft Silverlight


Get Microsoft Silverlight


"The Pillars of Concern"



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • "The Pillars of Concern"
    • Authentication
    • Authorization
    • Data synchronization
    • Security of data
    • Application integration
    • Operations / management
  • Ultimate goal: reduce the cost/effort to move to Azure while proving we can

Demo Infrastructure



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • The users are out there somewhere on the Internet
  • Windows Azure Platform
    • OrgChart application runs on Windows Azure
    • Database for OrgChart runs on SQL Azure
  • On-premises
    • Corporate active directory
    • "Geneva" Server
    • Lookup applications runs locally
    • Database for Lookup applications is local
  • There is no copy of active directory in the Microsoft data center; it all stays local

Demo of the application running on Windows Azure



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Passive federation with Geneva Server
    • Application says it doesn’t have the SAML token, redirects user to the on-premises Geneva Server
    • All authentication is done locally; none of the active directory credentials are passed to Azure
    • A SAML token is generated and passed back to Azure
  • Using things like ASP.NET AJAX controls on Azure
  • Also shows integration into Office Communications Server (OCS)
  • Demonstration of single sign on (SSO) via Geneva Server

Using SSIS packages to migrate data into SQL Azure



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Standard SSIS package; canonical example
  • Execution process
    • SQL Task to truncate table
    • Data Flow task to move data from local database server to SQL Azure
  • Joseph emphasized that you can leverage existing tools and skills today when targeting Azure

Taking a look at Geneva Server



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Created a "relying party" for the Windows Azure application
  • Defined the attributes to pass back in the SAML 2.0 token
  • Because it’s all standards based, you can easily swap out with other SAML 2.0 providers

Review of the demo; what did we see?



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Demonstrated authentication via passive federation
  • Showed the use of claims as a way to authorize users
  • Optimized the SSIS package for data synchronization
  • Some of the challenges you’ll face when moving to the cloud are no different from what you’ll face when moving to a traditional hoster or ASP
  • Then end-user doesn’t care where the application runs; Geneva Server can help make this seamless with SSO

What are the gaps?



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Data security is specific to each organization; different requirements based on vertical, industry, etc.
  • "No different than if I decided to farm out my hosting to someone else."
  • Lacking some capabilities around operations management; looking for integration into SCOM

What did it take to migrate the application?



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Quick steps
  • Initial application migration took about 40 hours of effort

Why is this so cool?



Get Microsoft Silverlight


Get Microsoft Silverlight


Quick notes:

  • Leverage the developer and IT pro skills you already have
  • If you want to migrate an application to Azure tomorrow, you can do it very quickly
  • Don’t worry about the plumbing – just build your application
  • Lots of guidance and tooling provided by Microsoft

SQL Azure Migration Wizard

In my opinion, SQL Azure is the “secret sauce” of the Windows Azure Platform.  Through SQL Azure, you have the ability to store your data in a true cloud-based relational database.  It’s as simple as deploying your database to SQL Azure and updating your connection string to point to the new database – done!  I think this really provides a core differentiator between the Windows Azure Platform and other cloud vendors.

Nevertheless, despite all the benefits you get from SQL Azure today, we’re still in CTP – SQL Azure is not yet released!  Consequently, there are a few places where it’s a bit rough around the edges.  In particular, the tooling through SQL Server Management Studio leaves a bit to be desired and some of the differences between what’s supported in SQL Server 2005/2008 versus SQL Azure can be a bit confusing.  It took me hours to manually modify the SQL script of a moderately complex database so that I could deploy it into SQL Azure.  What was missing was a good tool that would help with this process.  Fortunately, my good friend and coworker George Huey has made this process much easier by creating the SQL Azure Migration Wizard.

At it’s core, the SQL Azure Migration Wizard help you migrate your SQL Server databases into SQL Azure.  Point to your local database, walk through the wizard, and the end result is a SQL script you can deploy to SQL Azure – in fact, the tool will even deploy it for you.  I used this tool against the same database that took me hours to manually migrate and the process only took a few minutes.

George has made the SQL Azure Migration Wizard available on CodePlex – you can download the source code and/or the binaries.  Additionally, he has put together the following screen cast to demonstrate how easy it is to use this tool.  Take a look:



Get Microsoft Silverlight


Get Microsoft Silverlight


I would like to point out that, while the SQL Azure Migration Wizard is a fabulous tool that will save you a lot of time when migrating your databases to SQL Azure, it’s a temporary solution.  The SQL Server and SQL Azure teams will solve many of these problems before SQL Azure releases later this year. 

Personally, I’d like to thank George Huey for all his hard work putting together this tool.  If you try out the tool and agree, or if you have suggestions on how the tool can provide even more value, please leave some feedback on the CodePlex site.

If you’d like to learn more about SQL Azure, and start using a relational database in the cloud, please take a look at the following resources:

I hope this helps!