Kubernetes SQL Server or Azure SQL Server PaaS Kubernetes SQL Server or Azure SQL Server PaaS azure azure

Kubernetes SQL Server or Azure SQL Server PaaS


I'll formulate my comment as answer.

Azure SQL Databases

Is a service that takes care of the hard parts of managing a database for you.Including:

  • Backup & Restores
  • High Availability
  • Data replication
  • Scaling
  • Choosing the right hardware
  • Always up to date, if a new version rolls out, you can increase the compatibily level and you can use new features
  • Security
  • Azure AD Integration
  • Index recommendations
  • Elastic pools
  • Azure support
  • Licensing

What you can't do in Azure SQL Databases:

  • CLR: Loading custom .NET code, that you can execute from SQL Server.
  • Trace flags
  • SQL Agent jobs (Elastic database jobs are in preview)
  • Change Data Capturing (cdc)
  • Cross database transactions
  • Database Mail
  • Attach Database
  • BACKUP or RESTORE statements
  • Altering Collation
  • Mirroring
  • Snapshots
  • Some DBCC Statements
  • Some DMV's
  • Linked servers
  • Minimal logging in bulk import
  • OpenQuery/OpenDataSource
  • Resource Governor
  • Service Broker
  • ...

See this comparison between Azure SQL Databases and Azure SQL Managed instances.

List of T-SQL differences

Containerized SQL Server

You are limited to run a linux version of SQL Server. Which still has a high number of issues. All the things Azure takes care of, you need to do your self. It's quite new, so you may be hitting issues that nobody has seen before, the community however is growing. You also need to buy a SQL Server license.

When should you use containerized SQL Server?You want to be cloud agnostic, to be able to switch cloud providers.

At the moment I wouldn't want to run a production workload on a containerized SQL Server. When SQL Server Linux gets mature this will change.