Buying Development Servers

  • I'm a developer who is in the fortunate position to be able to make strong recommendations on the type of hardware we'll be buying to host our databases.

    in the past, my company has usually bought the most powerful machine they could afford, and thrown as many databases on that server as it could handle. this has obvious flaws.

    i would like to recommend that each major application receive its own dedicated server with its own instance of SQL Server that has one database.

    i don't have a lot of knowledge on what constitutes a "medium" sized database server.

    currently we run compaq proliant 8500 that's 4 proc (p4) 3.3GB of ram, and this machine supports us decently.

    this company is a managed health care contract company, so we deal with large datasets and are applications are geared nearly 100% to data intensive work on our DB servers. our largest and most used database requires about 300GB of storage.

    my question is, given my current situation and goals, can anyone point me to a website, white papers, or books out there that will help me with this strategic hardware decision?

    thanks!

    matthew



    Matthew Mamet

  • Lots of servers is a lot of hassle in my opinion. Hard to justify in cost as well. You have to look at HOW you'll be growing. Just more data? More concurrent users? Both? We upgraded from a 4 proc to an 8 proc box earlier this year rather than going to two boxes, has worked out extremely well. We moved from SCSI to FibreChannel at the same time. Only thing I wish - that we would have had the money to buy a 16 way box with just 8 processors! The problem with one database per server is the usage is never even. You'll have one idling while another is maxed out.

  • honestly, that was not the answer i was expecting, and i'm kinda surprised.

    but more importantly, is there any documentation/white papers out there that discuss this kind of thing?



    Matthew Mamet

  • Steve, you have links to any? We'll have to see what we can find and put in the FAQ maybe, not an uncommon question.

    Why not the answer you expected?

  • if you and steve could spend some time on this issue, i would greatly appreciate it.

    well, its not the answer i expected because we've found that 1 mega server is putting all our eggs in one basket. of course, during the progress of application development, its possible for 1 app's bungled Stored proc to suck up way too much resources (sql server 7 only utilizes 1 proc per instance, right?) and bring all the other apps down the toilet with it.

    but, i'm more of a developer, not a DBA so i'm going to defer to ppl who have more experience!



    Matthew Mamet

  • I tend to agree with Andy, though I dislike sharing boxes for 2 load intensive apps, especially for different clients or departments. They are always battling. In gerenal, however, you should load your boxes with more than one database and take advantage of greater hardware.

    I have some refs, but I'll have to look for them (vacation today).

    Steve Jones

    steve@dkranch.net

  • Clustering or some type of load balancing, or even log shipping/replication are ways to avoid the eggs in one basket situation. My main production stuff runs on a 8 way box that replicates to a 4 way. In a pinch the 4 way could handle the entire load if the server self destructed. I'd love a cluster, but for a mid size business it's a tough call (though with prices dropping not as much as it used to), but you can at least buy good hardware with lots of redundancy.

    The key is to buy a big dog - if you're running at 75% utilization, any tough query brings everything to a crawl. My 8 way box normal load is maybe 20%. Saves headaches. Saves trying to optimize every single bit of code run against it.

    Andy

  • We are an HP shop and I have the good fortune to know and trust (but verify!)an HP Systems Engineer that supports the Sales staff. So my method is to call the vendor's technical staff and narrow things down. It often takes more than one conversation but that is what the vendors are there for so use them! Then get the sales drone to come make the pitch. Depending on your time frame you can even get a loaner box to try stuff out in your lab.

    I like Andy's comment on percent utilization. If you deal with a bursty type of environment with month end, quarter end, and year end then it is all to easy to load your systems for the "norm" and then go into shock when year end comes around.

  • Keep one thing in mind.

    Cost of DBA/developer: $$/hr.

    Cost of hardware $$$$/life of server.

    The human cost can quickly exceed the box cost in trying to optimize/profile code. Not that it shouldn't be done, but you can concentrate on the worst offenders with hardware protecting you from the items that don't help much.

    Steve Jones

    steve@dkranch.net

Viewing 9 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic. Login to reply