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.
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.