As you might be aware, SQL Server 2012 Standard Edition has some hardware-related licensing limits that I think should be adjusted in light of the capabilities of modern, commodity server hardware.
As a DBA and consultant, I would like to see everyone running SQL Server 2012 Enterprise Edition. It has many, many truly compelling features that make it absolutely worth the extra licensing cost compared to SQL Server 2012 Standard Edition. Despite this, I recognize that some organizations simply cannot afford these extra licensing costs (even though it is still far more affordable than Oracle licensing).
The first SQL Server 2012 Standard Edition licensing limit is that you are restricted to 64GB of RAM for the Database Engine and 64GB of RAM for SSAS and SSRS. Even if your database server has a much higher amount of RAM than 64GB, it will only be able to use 64GB of RAM for each of these services.
I think that is is a ridiculously low RAM limit, given the fact that DDR3 ECC RAM for servers is currently priced at around $10-$15/GB for 16GB DIMMs. Microsoft is essentially limiting you to using about $1000.00 of RAM if you are using SQL Server 2012 Standard Edition.
Modern, two-socket servers have 24 memory slots, so they can hold 384GB of RAM with these affordable 16GB DIMMs. Even though you are limited to 64GB of RAM per service per instance, you should strongly consider getting a slightly larger amount, such as 72GB or 96GB, so that you can set your Max Server Memory setting to 65536 (which would be 64GB), and still leave plenty of RAM for the operating system.
This 64GB RAM limit did not exist for SQL Server 2008 Standard Edition, which could use up to the OS limit for RAM. It was first introduced in SQL Server 2008 R2 Standard Edition, and was not changed for SQL Server 2012 Standard Edition. That was a mistake, in my opinion, designed to drive more Enterprise Edition sales.
Windows Server 2012 Standard Edition can use up to 4TB of RAM (unlike Windows Server 2008 R2 Standard Edition, which was limited to 32GB of RAM), so there is even more precedent for not placing artificially low RAM limits on the Standard Editions of Microsoft Server products.
The second hardware-related licensing limit for SQL Server 2012 Standard Edition is that you are limited to the lesser of 16 physical processor cores or four processor sockets, whichever is less. I don’t really have a problem with the four processor socket limit, but I do think that a 16 physical processor core limit is simply too low. A two-socket, AMD Opteron 6200 or 6300 series based system could have 32 physical cores, while a two-socket Intel Xeon E7-2800 series based system could have 20 physical cores.
Of course, you really should not be using any of those processor families for SQL Server 2012 usage, since the Intel Xeon E5-2600 series is far superior for single-threaded performance and would also have a lower core-based licensing cost. It is also likely that the upcoming Intel Xeon E5-2600 v2 series (Ivy Bridge-EP) could have up to ten physical cores per processor, which would put a two-socket server over the 16 physical core limit.
I would really like to see Microsoft eliminate both the RAM limit and the physical core count limit for SQL Server 2012 Standard Edition. The features and advantages of SQL Server 2012 Enterprise Edition are valuable enough to convince people to buy Enterprise Edition when it is appropriate without these artificially low license limits. Microsoft could support this notion by doing a better job of explaining and selling the benefits of Enterprise Edition, with some blog posts and whitepapers.
I would love to hear your thoughts and opinions on this!
Filed under: Computer Hardware, Microsoft, SQL Server 2012 Tagged: SQL Server 2012, Standard Edition