When discussions about upgrading to SQL Server 2016 are brought up the usual first question is this: “Why should we upgrade?” Someone, somewhere, wants to know why they should take a perfectly good system that runs just fine and make a bunch of changes.
There exist many valid reasons to upgrade to the latest version of SQL Server. Database and system administrators do not take on upgrade projects simply because we like to make changes and watch things break. There are new performance features, new security features, and new scalability features in SQL Server 2016 that make it worth the time and effort to upgrade.
Here is a short list of reasons why anyone might consider upgrading to SQL Server 2016.
1. New Features in SQL Server 2016
With any new version of SQL Server we always have something shiny to play with. By upgrading to SQL Server 2016 we can take advantage of the following new features:
- Always Encrypted
- Dynamic Data Masking
- Row Level Security
- Stretch Database
- Temporal tables
- Automatic soft NUMA
- Query Store
We also have enhancements to features introduced in recent versions:
- In-Memory OLTP enhancements
- Always On Availability Groups enhancements
- Updateable non-clustered columnstore indexes
- DBCC CHECKDB enhancements
For a complete list of all the things in SQL Server 2016 that have been enhanced, check out SQL Server 2016: It Just Runs Faster.
2. Supportability
End of support is fast approaching for earlier versions. This means no new service packs or updates. Yes, you can purchase extended support, but it is costly. Microsoft has extended support for Win2008 and SQL 2008, that doesn’t mean it’s a good thing to keep using them. At some point you need to let go of that Windows NT 4.0 box running SQL Server 6.5. Just let it go and transport yourself into the 21st century.
3. Vendor Requirements
You may be using software from a third-party vendor that has strict requirements about which version of SQL Server you can be using. Yes, this goes both ways, it could require newer versions, and it could require older versions. You should check with your vendor. That’s what a good DBA would do.
4. Company or Industry Standard
Some companies may not allow for you to be running more than one full major version behind for any software product. And some industries may have those requirements, too. And don’t forget the auditors, they like to have their own suggestions. I also found upgrades to be a good time to revisit such standards and make sure they still apply. And, if they do, the upgrades also offered the opportunity to do some cleaning up of stuff on servers you aren’t using anymore. Like IE 6.
5. Scalability
The SQL Server engine has had many enhancements in the past ten years to address scalability concerns. I listed a few of those above (Columnstore, Availability Groups, In-Memory OLTP), but the engine itself has been updated to include things like new cardinality estimation techniques to help build better query plans based upon the distribution of your data. Upgrading to SQL Server 2016 will bring you greater scalability opportunities than previous versions.
Summary
This post was meant to highlight a handful of reasons as to why you would want to upgrade to SQL Server 2016. You might be interested in new features. Or you might be forced to keep your version current. Or you might be looking for a reason to retire some older servers and migrate your data to something shiny and new.
In the next post, we will take a look at the tasks you need to perform prior to the upgrade taking place.
Don’t forget that you can also download and read the upgrade whitepaper I wrote for SolarWinds. It contains additional information as well as a set of tips and reference links that I believe you will find useful.
One of the features I really like: generating JSON. Now just waiting for true row-wise concatenation support – here’s looking at you vNext. I might be using temporal tables too. Or just storing back ups forever.
Yes, lots of shiny new things to play with in SQL 2016 and SQL 2017!