Yesterday Microsoft announced SQL Server 2016 was launching on June 1st. I can say this is the most production ready version of SQL Server I have ever worked on. I have had a customer on production since last August. We have been very happy and stable, and performance has been fantastic, we are using columnstore, availability groups, and lately R integration. All of these features are tested first in Azure, then deployed to the on-premises product which allows you to have a fully tested enterprise class RDBMS on day 1 of GA.
But What About Standard Edition
In my circles, there are number of people who are complaining about the lack of features in standard edition. While I do agree that Always Encrypted should be in every version, as lack of strong data encryption is a problem that continues to confound IT. Putting Always Encrypted in all editions would be a good start to having wide ISV adoption of the Always Encrypted feature.
However, even without Always Encrypted, Microsoft added a LOT of new features to Standard Edition. Let’s list them (no specific order here):
- Temporal Tables
- Query Store
- Basic Availability Groups
- Row Level Security
- Dynamic Data Masking
- Basic R Integration
- Tabular Mode of Analysis Services
- JSON Support
- I saw a complaint about the Tabular support only being 16 GB, which equates to (with typical compression) 100-150 GB which a very reasonable size model. I’ve also seen complaints about Standard Edition only addressing 128 GB of RAM. Microsoft is not a charity, their end goal is to make their shareholders money. There are a bunch of smart finance people, who make these calculations. If Microsoft increased the memory limit to standard edition to say 512 GB, this might mean 25% fewer customers (note—I made these numbers up) buy Enterprise Edition. Here is the Microsoft description of the aim of standard edition.
SQL Server Standard provides core data management and business intelligence capabilities for non-critical workloads with minimal IT resources.
If you are running mission critical workloads, and need high levels of uptime, and the tools that come with Enterprise Edition, you need to pay the big bucks (and it’s still way the hell cheaper than Oracle, no matter how your calculate it) or there’s another option.
The Other Option—Azure SQL DB
You may have noticed Microsoft is making a push towards cloud computing (sarcasm). Cloud computing is going to be the defining trend of the next decade and beyond. Microsoft has been careful to avoid feature limitations in Azure SQL Database (there are a couple, columnstore and in-memory are only available in Premium, but that’s just because of limited hardware resources). Want features like partitioning, data compression, and online index rebuilds? Use SQL DB and all of those features are available to you. Always Encrypted is available at all service tiers, and has been since last summer. You can even have scale out readable secondaries now, even in Basic edition. Microsoft, through these actions, has incentivized moving your databases into Azure (and with elastic pools, it’s easier than ever). While there while there will always be some on-premises systems,the cloud is changing the way products are developed and sold, and the way customers deploy. Don’t get left behind!