SQL Azure Talk @ Orange County SQL User Group

Last night I spoke to Orange County SQL user group on SQL Azure, Microsoft’s cloud based relational database. SQL Azure, dubbed as re-launch of SQL Data Services (SDS) (and later SQL Services) is a cloud-based service from Microsoft offering data storage capabilities for Azure Services Platform. In the talk I discussed the challenges of putting a relational database in the cloud and Microsoft’s adaption to user feedback that they wanted SQL server in the cloud and not a schema-less entity-attribute value tables as offered by other vendors and previously was the main focus of SDS. Azure team changed course for a better customer targeted implementation catering to the relational cloud even though conventional wisdom states that relational databases aren’t as scalable as the schemaless Entity-Attribute-Value (EAV) tables used by Amazon SimpleDB, and Google’s BigTable and the App Engine’s data store.

Slides SQL Azure Presentation.pptx and code sample Connectivity.rar

Not surprisingly, a lot of focus during these talks are put on short-comings of the SQL Azure instead of the wonderful capabilities it offer. Being a VLDB aficionado, I found the attempt of putting the relational database in the cloud quite heroic to be honest. Like any v1 product, there are certain limitations but again IMHO, community needs to understand the large scale distributed database implementation issues and therefore comparing it against SQL 2008 on premise is not really an apple to apple comparison.

Along with slides and code samples, I demonstrated the connectivity from SSMS (workaround for connecting with SQL Server Management Studio), discussed SQL Azure Pricing and SQL Azure SLA (Service Level Agreement) for which “Monthly Availability” of 99.9% with a 9.99 fee, is pretty awesome.

  • Web Edition:  Up to 1 GB relational database = $9.99 / month
  • Business Edition:  Up to 10 GB relational database = $99.99 / month
  • Bandwidth = $0.10 in / $0.15 out / GB

The new and improved control panel allows to do simple tasks such as firewall IP additions, connection strings and database provisioning quite easy.

When connecting to SQL Azure, please ensure that your firewall settings (as shown below) includes the IP range you are trying to connect from.


Feedback from Attendees (in the order of strong opinions)

·        Connectivity with SSMS needs to be fixed ASAP to avoid the workarounds

·        10GB is too small and makes the v1 not enterprise ready.

·        Error log un-availability in V1 could be a deal breaker for some DBA’s.

·        SQL Agent Support is an absolute must have from a DR and on-premise replica standpoint.

·        Programmatic way of finding the size of database

·        Linked Server Support is really important.

·        CLR Support is needed for a lot of practical purposes.

·        SQL Profiler support should be there.

The slides, code samples and links from the talk are as follows.

·        SQL Azure Home

·        SQL Azure, Let’s get started - Lynn Langit

·        SQL Azure Training Kit

·        SQL Azure Explorer Add-in

·        SQL Azure Migration Wizard v1.9

·        SQL Azure Explorer on Channel 9

·        David Yack on Starting with SQL Azure

·        geekSpeak: REST and the Windows Azure Services Platform with Adnan Masood

·        Getting Started with SQL Azure | David Gristwood | Channel 9

·        Hands on with SQL Azure (CTP 2) | David Gristwood | Channel 9

·        Billing system testing behind Microsoft's SQL Azure outage this week

·        Amazon Attempts to Preempt PDC 2009 Release of SQL Azure with MySQL 5.1 Relational Database Service

·        SQL Data Services Abandons REST for TDS API and Knocks My Socks Off

·        Frequently asked Questions about SQL Azure

·        Stephen Forte`s Blog - Building a RESTful application with SQL Azure

·        SQL Pass Summit on Azure

·        Project Rivera, Windows Azure Code samples

PS. Conveniently Amazon attempts to Preempt PDC 2009 Release of SQL Azure with MySQL 5.1 Relational Database Service Amazon Relational Database Service (Amazon RDS) Beta, announced on 10/27/2009, which delivers pre-configured MySQL 5.1 instances with up to 68 GB of memory and 26 ECUs (8 virtual cores with 3.25 ECUs each) servicing up to 1 TB of data storage