This post is primarily a reminder that SQL Server is very expensive to license. Which, in turn, means that smart organizations are always looking for ways to cut costs when it comes to licensing SQL Server. In this post I’ll cover two ideas, or options, for ways to help with that.
Virtualization – Or, Growing Into your Licenses as Needed
At the risk of making things overly-simplistic: Suppose that you’ve got a SQL Server workload that you know will require around 12GHz of processing power now and will grow into needing an estimated 15GHz of processor within 6 months and then weigh in at needing around 18-20GHz of processing in a year. Assume, too, that you’re planning on being able to keep the hardware you purchase for this workload for 2-3 years and therefore you want/need to throw a 2-Socket server at the problem because that will allow you to throw 2x10-core processors (at 3.4GHz each) at the problem.
If you don’t end up using virtualization, then right out of the gate—even if you only purchase/deploy one of your processors (i.e., start with 10 cores instead of 20), then you’re going to need to license ALL of the cores on the physical box for your ‘physical’ SQL Server workload. Assuming roughly $3,000 for Standard Edition 2-core license packs and roughly $18,000 for Enterprise Edition 2-core packs, you’re now looking at 5 packs or either $15,000 or $90,000 depending upon whether you’re running Standard Edition or Enterprise Edition. (Likewise, once you ‘slap’ your other processor (i.e., an additional 10 cores) into this machine, go ahead and count on doubling your licensing costs.)
On the other hand, and assuming the exact-same host and processors, let’s assume that you decided to use virtualization. Initially, you’d only need a virtual machine (VM) with 4 cores (i.e., 4 cores * 3.4GHz = 13.6GHz)—a perfect fit since 4-cores are the MINIMUM number of cores you can license on a VM anyhow. At this point, you’d only need 2x 2-core packs—so roughly $6,000 for Standard Edition or roughly $36,000 for Enterprise Edition.
In six months you’d end up needing to bump your VM up to a total of 6 cores (6 * 3.4GHz is 20.4GHz) and pick up an additional 2-core license pack ($3,000 or $18,000). Likewise, six additional months later you’d either need to take that VM up to 8 or 10 cores depending upon load—and pick up additional licensing packs as needed.
The point, though, is that with virtualization thrown into the mix, you end up only using and licensing the SQL Server processing power that you absolutely need (compared to paying for the entire box when virtualization isn’t being used). Granted, it’s arguable that within 12 months after initial deployment, both approaches end up with (let’s say) all 10 cores licensed on both servers (virtualized or not). But, if you’re using virtualization, you were able to defray when those costs were incurred. Moreover, if you’re LEASING licenses (i.e., say you’re running on hosted hardware and leasing SQL Server licenses via an SPLA license), then you’ve saved a huge amount of money—especially if you’re using SQL Server Enterprise Edition.
More Expensive Processors
It should go without saying, but another way that savvy organizations can save significant money when licensing SQL Server, is to pay for more expensive processors. Stated differently, if SQL Server is licensed per core, then you want to make sure that the cores your buying are giving you the most bang for your buck. So, instead of buying cheaper, lower-end, 2.0GHz processors, you should really be looking at the fastest processors you can find.
In my experience, however, it’s pretty common to find bean counters and managers that try to nit-pick and fiddle with many of the options on newer servers to try and help keep the costs contained. The problem, however, is that this kind of savings is very shortsighted when it comes to licensing SQL Server.
To put this into perspective, assume the scenario mentioned above (and assume we’ll be using virtualization)—where we have an initial need for 12GHz, then 15GHz (6 months later) and 18-20GHz (a year later). If we were to use, say, Intel Xeon E5-2660v2 processors (10 cores at 2.2GHz for roughly $1,552), then we’d need 6 of those cores right out of the gate to meet our requirement for an initial 12GHz of compute. On the other hand, if we were using Intel Xeon E5-2690v2 processors (10 cores at 3GHz each—for roughly $2,057), then we’d potentially be able to squeak by at just 4 processors to get our initial 12GHz of processing power—instead of six. Out of the gate that’d be one whole 2-core licensing pack less. Yes, the processor would cost roughly $500 more, but we’d be saving a further $3,000 or a further $18,000 in initial licensing costs right away.
Saving $18,000 with Higher Clock-speed Processors
As such, sometimes this might mean you actually want to look at slightly FEWER cores—at higher frequencies when dealing with SQL Server. So, for example, the Intel Xeon E5-2690v2 has 10 cores at 3GHz each (i.e., 30GHz total), while the Intel Xeon E5-2687Wv2 has only 8 cores—but with each at 3.4GHz instead (i.e., 27.2GHz total). Both are fairly comparable in terms of the total GHz they bring to the table (and in terms of price), but if you needed roughly 27-30GHz for SQL Server Enterprise Edition, the 8 core processor would end up being a full $18,000 less to license.
Related: Find SQL Server Cost Savings