Published: 22 Apr 2012
More on SQL Server 2012
Check out our SQL Server 2012 guide
What you need to know about SQL Server 2012
Looking at column-store indexes in SQL Server 2012
Another even-numbered year brings another new version of SQL Server to consider. Microsoft has already doing a good job of communicating why it thinks you should upgrade, but their reasons are largely based on features. The other side to the upgrade story has less to do with features and more to do with your business. So let’s consider some of the non-feature-related pros and cons behind a SQL Server 2012 upgrade:
Pro: Performance. Whether they advertise it a lot or not, Microsoft invests heavily in SQL Server’s core database engine in every new version. Back in the old days, a nine-table join was a recipe for disaster; now it’s no big deal. The same holds true for SQL Server 2012: You can expect better overall performance when compared side-by-side to older versions, and “better performance” is always a reason to consider an upgrade.
Con: Changes. This new version of SQL Server brings some significant changes, and change isn’t always best. For example, your IT team will have to re-think how they engineer database availability given the completely-changed high availability features in SQL Server. Most other administrative tasks will remain significantly unchanged, but if availability is an important concern for your organization, make sure you understand what you’re getting into with this new version.
Pro: Lifecycle. If you’re on a version of SQL Server that’s beginning to exit – or has already exited – its formal technical support period, then an upgrade is something you should consider. Older versions will no longer receive bug fixes, service packs, and the other things we tend to rely on to keep SQL Server humming along. That said, don’t let the “out of support” reason be your only reason to consider an upgrade. If you have an application that runs just fine on an existing version of SQL Server, then the odds are it will continue to run just fine indefinitely. So long as you’re okay taking the risk of being “unsupported” if problems do arise, upgrading just to get “in support” may be less urgent for you.
Con: Compatibility. This is the top reason some organizations have so many versions of SQL Server in their environments. It’s not uncommon for one organization to run SQL Server 2000, 2005, 2008, 2008 R2, and soon 2012, all at the same time. When you’ve got an application using SQL Server as its back-end data store, you’re pretty much locked into whatever version of SQL Server that application’s vendor is willing to provide support for. It’s often safe to upgrade the back-end regardless – there’s not a ton of applications out there that have hard dependencies on version-specific behaviors, and the “compatibility level” database setting can often resolve what issues arise. However, the risk of an application vendor saying, “nope, we won’t help you if you’re running our app on that version of SQL” can be enough to make organizations extremely wary.
Pro: Manageability. This strays into the “feature” argument a bit, but it’s true that each new version of SQL Server brings improvements to manageability, and SQL Server 2012 is no exception. With greatly expanded support for Windows PowerShell and other management improvements, there’s a definite argument that upgrading existing servers to SQL Server 2012 will make your overall management of SQL Server easier.
Con: The Unknown. SQL Server 2012 is a new version of SQL Server. It’ll bring surprises, and some organizations just don’t like surprises. You’re likely to find subtle differences in how it manages stability, availability, and performance; there will likely be subtle behavior differences that cause the occasional gnashing of teeth. “The Unknown” doesn’t just involve compatibility issues; it involves concerns about the way SQL Server fits into the overall environment. With SQL Server in particular, those concerns aren’t always serious, as the product team typically does a good job of communicating changes well ahead of time. But there’s always that lingering fear of the unknown that will keep some organizations from upgrading unless they must.
In an age when companies continue to survive and even thrive on a decade-plus-old client operating system (Windows XP), the idea of upgrading just because there’s a new version is pretty much out the window. These days, organizations tend to look at new versions to see if there’s any compelling features that solve heretofore unsolved problems and challenges, or if they have any hard requirements (such as an application pre-requisite) for that new version. SQL Server 2012 promises improvements in performance, manageability, and more than make it worth at least a look – even if you’re not getting excited about any specific new features.