SQL Server – Objective Business Reasons to Prefer 2012 Over 2008 R2

sql serversql-server-2008sql-server-2008-r2sql-server-2012

My company is facing the decision whether to purchase SQL Server 2012 Denali or SQL Server 2008 R2 for a new database server. I am looking for objective reasons to choose one over the other.

Our requirements:

  • Standard edition (for financial reasons and a lack of need for enterprise features)
  • OLTP workload (this means we don't need the new windowing functions and column store indexes)
  • Database size of 10-100 GB
  • No business intelligence features needed. Only the relational engine is required
  • Synchronous Database Mirroring

Currently, the following reasons are known to me:

SQL Server 2012 Denali

  • Newest version available

SQL Server 2008 R2

  • Proven technology

I can't seem to find a lot of technical reasons to prefer one over the other. Basically, it comes down to choosing proven technology that is running successfully vs. the newest and greatest version available.

What are objective reasons to make the decision?

Best Answer

Everybody's excited about AlwaysOn and ColumnStore, but many of the benefits of SQL Server 2012 are not exclusive to high-end editions. I don't want to sound like a spokesperson, but I've given plenty of presentations on SQL Server 2012 and I think it has a lot to offer at whatever edition suits you.

  • Partially Contained Databases which allow you to move databases between servers or environments with a few less shackles (namely server-level logins and server collation dependencies - future versions will handle thornier items like linked servers and Agent jobs).

  • Management Studio is now a much better tool, aligned with Visual Studio. IntelliSense is better and a whole bunch of other features make editing easier. Now of course you can have 2008 R2 on your server and use the 2012 version of SSMS, but I'm not sure how that works licensing-wise, and some shops don't want mixed versions (I prefer having the most recent tools on my workstation even to manage downlevel servers). I blogged about the changes early on, when there were still bugs, so please ignore the negatives since most or all are fixed as of RTM. I shudder now when I have to use an earlier version of SSMS.

  • Metadata enhancements allow you to inspect resultsets of objects and ad hoc queries, and also allow you to better shape the output of queries.

  • Custom Server Roles allow you to define a much more granular set of permissions for users at a role level instead of granting/revoking one by one, or just giving in to complexity and giving them sysadmin.

  • FileTable lets you manage a folder like a table of documents, but still have external control over the contents (so imagine being able to do this with T-SQL, and imagine how hard it would be to do in cmd or PowerShell: UPDATE C:\Docs\*.* SET ReadOnly = 1 WHERE Author = 'Bob' AND Created < '20100101';)... think FileStream meets WinFS and gets some usability to boot.

  • T-SQL Enhancements allow you to do many things that were a pain in previous versions:

    • THROW (think of it as re-raise)
    • OFFSET / FETCH (simpler, ANSI-standard paging - also see this post)
    • SEQUENCE (centralized IDENTITY mechanism, like in Oracle)
    • Windowing/Framing enhancements (various things here, such as awesome running totals performance)
    • IIF() / CHOOSE() / CONCAT() / EOMONTH()
    • Date/Time Constructors (e.g. DATEFROMPARTS) similar to DateSerial in VB
    • PARSE() / FORMAT() - like their .NET counterparts (but see this post about the latter)
    • TRY_CONVERT() / TRY_PARSE() - return NULL if CONVERT / PARSE fail
  • Extended Events has an enhanced UI for configuration / viewing, and finally completely covers trace / audit functionality (including much better causality tracking).

  • Lots of new DMVs, system procedures and ShowPlan enhancements for diagnostics and performance troubleshooting. Also take a look at what CSS is calling "The Black Box Recorder."

  • Server Core allows you to run on a bare-minimum server without all the UI components (smaller surface area means it is more secure, and reduced maintenance since less parts of OS are subject to Windows Update).

  • Full-Text Search gets some important underlying performance enhancements, as well as semantic search (think keywords) and customizable proximity / NEAR.

  • AWE is no longer supported, meaning your SQL Server instance on x86 with 32GB of RAM is only going to be able to use 4GB - so you will finally have motivation to get off your old 32-bit hardware.