SQL Azure Incompatibilities list

While 99% of what you do in SQL is supported in SQL Azure, there is a small list of things you’ll have to redesign, or at least reconsider before implementing your code on SQL Azure.  The following is a list of items that are well documented, but I want to create a more complete list.  If you run into problems in your SQL Azure installation, let me know about them.  By learning these incompatibilities before you go into a new project, you should be able to save yourself some time.  You’ll be able to go right to the problem, and create corrections, or workarounds to get the job done.

Without further ado, the list:

SQL Server 2008 Features Not Supported by SQL Azure

  • Change Data Capture
  • Data Auditing
  • Data Compression
  • Extended Events
  • External Key Management / Extensible Key Management
  • FILESTREAM Data
  • Integrated Full-Text Search
  • Large User-Defined Aggregates (UDAs)
  • Large User-Defined Types (UDTs)
  • Performance Data Collection (Data Collector)
  • Policy-Based Management
  • Resource Governor
  • Sparse Columns
  • Spatial data with GEOGRAPHY and GEOMETRY data types
  • SQL Server Replication
  • Transparent Data Encryption

SQL Server 2005 Features Not Supported by SQL Azure

  • Common Language Runtime (CLR) and CLR User-Defined Types
  • Database Mirroring
  • Service Broker
  • Table Partitioning
  • Typed XML and XML indexing is not supported. The XML data type is supported by SQL Azure.

Other SQL Server Features Not Supported by SQL Azure

  • Backup and Restore
  • Replication
  • Extended Stored Procedures
  • WITH (NOLOCK), and possibly other locking hints
I’m continuing to build out a new web service on top of SQL Azure.  During that process I’ll continue to add to this list.  I’ve already shared some problems I’ve run into with simply using the Import and Export wizard.  My current step has be building a SSIS package to read in XML data from a published datasource and write the results to my SQL Azure instance.  So far, the issues I’ve found are more to do with the XML than with SQL Azure.
If you’re in the middle of a project that includes SQL Azure, what problems have you found?  Send them in, and we can discuss them and develop workarounds together!

2 Comments on "SQL Azure Incompatibilities list"


  1. You must be kidding that 99% of features are supported, what are missed are those really important, those features like CLR, service broker solved some aged problems for developers and they rushed to use them once they were available, but now they are missed from SQL Azure, it is not bold to say at least 30% of the features are missing.

    Reply

    1. While user created CLR is not yet supported, some CLR is. I’m using the geography data types and methods in a solution today. It’s CLR.

      Also, instead of considering Service Broker in your port to Azure, you may want to consider other scaling technologies that are supported by Azure, such as federated databases. We’ve been able to build a solution that can handle a more geographically diverse user base than we could with service broker. Plus we get a crazy-awesome amount of HA too! I’d love to geek out with you over the details.

      Azure is still in development, but I stand by my 99% statement. After 13 years in SQL server and many client-built SQL solutions, I haven’t seen a database we couldn’t port to Azure. I still had to clean up the ones that were all heaps (no clustered indexes in ANY table). But the basis of their systems were little more than a series of tables, views, and procs that worked like a charm once converted.

      I’d love a chance to talk with you about your experiences in Azure and see what failures you’re seeing. 2013 is the year I evangelize Azure. I’d love to hear from the other side, so I can talk to those issues when they come up in the Q&A section of the presentations!

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *