Using Stack Instances to Extract More Value from SQL Server
Author: Charleste King | 4 min read | February 11, 2016
What are stacking instances and how can you use them to save money and extract more value from your SQL Server?
A database engine instance, commonly referred to by database professionals as “an instance,” is a copy of the SQL Server executable that runs as an operating system service, managing several system and user databases. The applications connect to an instance to perform any work in the database that it manages.
Most SQL Server users are only using one instance per server, but with a little math—courtesy of tech startup wiz Don Boxley—you can compare the value of using stacking instances based on your deployment costs to the costs associated with not using them.
Writing in SQL Magazine, Boxley says many people don’t know how stack instances work. Most users are using a single instance on a lone server. This might work for three or fewer servers, but when you add more servers, you’re wasting money. He typically finds users are deploying 20 to 100 instances on a single physical and/or virtual server. That adds up. Boxley explains:
If each of those instances were consuming 60 percent to 70 percent of its respective host server’s CPU cycles, a one-instance-per-server deployment model would be justified, but that’s not the case. On average, most instances only consume 5 percent to 7 percent of its host’s CPU power. That creates an opportunity to save big money.
How much could you save in hardware costs by stacking instances? The example calculation provided assumes a user has 50 instances, each hosted on its own server. (Remember: the run-of-the-mill DBA is still putting one single instance on a server.) Each of these instances uses 10 percent of the host’s CPU resources. If you wanted to maintain a CPU utilization buffer of 30 percent, you could stack seven instances on each server, according to Boxley. This reduces your database server use by 84 percent: from 50 servers to eight.
Boxley also runs total cost of ownership numbers, a complex calculation based on tasks and virtualization, the number of years of support, and other factors. In crunching these numbers from the example and the latest costs for the product license and other costs, he determined that, within a three-year period, “stacking instances unlocks over $2.5M in “hidden” SQL Server license value.”
This calculation doesn’t include a host of other possible cost savings associated with upgrades and administration that could potentially make the savings even greater.
And why not adopt this approach when Microsoft allows users to stack up to 50 instances per SQL Server? What is keeping database administrators from using this approach?
Boxley insists it’s because of one of three primary reasons. First, users typically find moving difficult. Second, ensuring high availability with stacked instances is a challenge. Finally, Boxley notes, patching becomes “a nightmare” for most users.
If you aren’t sure what instances are running on your network and you want to take inventory, The Microsoft Assessment and Planning Toolkit can generate a detailed report of specific SQL Server instances running on Windows or Linux servers.
Considering migration? Running the SQL Server 2014 Upgrade Advisor would be useful prior to upgrading. The tool generates a report for each instance the tool analyzes on a server.
Of course, SQL Server 2016 is on the horizon. You can install an instance if you’ve got the preview. But remember: some components or services may be specific to that instance. Microsoft offers information on how to set up SQL Server 2016 instances and offers other information on its website.
Datavail can help your organization optimize its use of SQL Server or create a custom solution designed for your enterprise.
To learn more about our remote database services and how our experts can help with your ongoing operations or special projects, please contact us. We also have more information about working with SQL Server in our white paper as well as on our frequently updated blog.