Re: How to find the Golden Ratio of databases per given resource?

  • From: Alex Gorbachev <ag@xxxxxxxxxxxx>
  • To: sacrophyte@xxxxxxxxx
  • Date: Wed, 4 Mar 2009 11:00:53 +1100

Sorry no real recipe from me and I would actually discourage from seeking a silver bullet here as Jared already mentioned. the only way to go is right capacity planning. You will have situations when 5 databases will chew up the whole storage box and in other cases 40 databases keep it idle.


Some time ago I raised this issue and why there is still no wide adoption of Storage QoS - http://www.pythian.com/blogs/759/where-is-storage-qos . This is exactly the scenario when we need it. In the absence of that you will have to control the workload using operational procedures and throttling down your IO on the hosts.

The problems shouldn't come as a surprise - nothing comes for free so you are saving by sacrificing performance and/or stability.

Magic triangle rule is valid everywhere - cost <-> performance <-> reliability.

Cheers,
Alex

On 04/03/2009, at 6:48 AM, Charles Schultz wrote:

Good day, list,

In our environment, we try to cut corners and save a few bucks by attaching a number of hosts to a small number of EMC SANs. The question (rather, questions) has come up as to what thresholds exist that would determine how many databases can/should go on each host, and how many hosts can/should be attached to a given array. For example, we have a development environment:
Sun F15k, 40 GB RAM, 20 CPUs, Solaris 10
10.3 TB of disk for databases
26 databases

I am not exactly familiar with all that is hooked up the SAN, but from time to time the load from one host will significantly affect the other hosts (especially during database clones or parallel file copies). We have three groups who jointly manage the back-end infrastructure (Storage, Sysadmins, DBAs), with very little crossover in job knowledge/skillset. The hosts are generally allocated by functional area or application; thus, all of one application's developement environment will reside on one host, seperated physically at the host level, but usually joined at the SAN level.

Are there established so-called "Best Practices" that outline how to architect such an environment, or a white paper that might go into details (ie, stripe levels, how to spread load, what limits to be aware of, etc)? Any out there who wish to speak from experience? *grin* I am hoping to get a question into Kevin Closson and Christian Bilien, but both men are quite busy.

Any and all help would be greatly appreciated.
Thanks,

--
Charles Schultz

Other related posts: