Saturday, November 01, 2008

SQL Data Services (SDS) Test Harness Updated to the Windows Azure Services Platform

The original Windows form test harness for SQL Server Data Services (SSDS) from my “Test-Drive SQL Server Data Services” cover article for the July 2008 issue of Visual Studio Magazine has been updated to SQL Data Services (SDS) Sprint #5, which now runs on the Windows Azure Services Platform.

Update 11/1/2008: Users with SSDS accounts now have have access to SDS authorities, but SSDS containers won’t be migrated to SDS until mid-November. See the SQL Data Services (SDS) Update announcement in the recently renamed SQL Data Services (SDS) - Getting Started forum.

Here’s a screen capture of the new SDSNwindEntitiesAzure.sln project in the process of uploading Northwind Orders entities to the oakleaf authority’s Northwind container using the SOAP protocol:

And here’s the same capture proceeding with the REST protocol with the Orders template:

The following project modifications were required to upgrade from Sprint #3 running on SSDS to Sprint #5 running on Windows Azure:

  1. The time to log in and list authorities, containers, and entities with the SOAP protocol has dropped by 50% (~20 secs. to ~10 secs.), but this still appears rather slow to me.
  2. Time to upload the entire Nothwind sample database (without bitmapped images) is 455 sec. with the SOAP protocol and 964 secs. with the REST wire format. The discrepancy between REST and SOAP upload times is greater than with SSDS Sprint #3.
  3. Only minor changes were required to the source code to support the move from https://data.beta.mssds.com/v1/ to https://data.database.windows.net/v1/.
  4. The SitkaClient service client must be recreated from the new location rather than updated. You’ll find substantial additions to App.config and Web.config files to support Azure’s .NET Services.
  5. You must specify the endpoint Name in using (SitkaSoapServiceClient proxy = new SitkaSoapServiceClient("BasicAuthEndpoint")) statements because there are now multiple client endpoints defined in App.config.
  6. REST code required no significant changes for the move to Azure.

Here’s the Azure Services Platform Management Console displaying a few Order entities:

You can download the C# source code from SkyDrive by clicking here. Mark the Use Folder Names check box to expand the files to a \SDSNwindEntitiesAzure folder and subfolders. The source code’s Readme file includes operating instructions.

0 comments: