How to choose the right Relational Database Service you should use in Windows Azure

Now with Windows Azure SQL Database as well as SQL Server inside a Windows Azure Virtual Machine an important question comes up, and that is, Which Relational Database Service should I use for my solution in Windows Azure?

In order to help answering this question I did a flowchart that should help. (this is a simplification of the process but should answer most of the questions)

image

What are the features that aren’t supported in SQL Database you might be asking. Here’s a list:

  • SQL Server Utility
  • SQL Server PowerShell Provider. PowerShell scripts can be run on an on-premise computer, however, and connect to Windows Azure SQL Database using supported objects (such as System Management Objects or Data-tier Applications Framework).
  • Master Data Services
  • Change Data Capture
  • Data Auditing
  • Data Compression
  • Extension of spatial types and methods through Common Language Runtime (CLR)
  • 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
  • SQL Server Replication
  • Transparent Data Encryption
  • 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 Windows Azure SQL Database.
  • Backup and Restore
  • Replication
  • Extended Stored Procedures
  • SQL Server Agent/Jobs

More about this Windows Azure SQL Database:

More about SQL Server inside a Windows Azure Virtual Machine:

Hope this helps you to make the right choice.