r/oracle•
RefuseBit

Determining proper hardware specs?

I'm running an Oracle 11g instance on a machine that is fairly old and obviously underpowered. We've optimized and indexed as best we can, but for certain operations we're still "too slow." We've discovered that our dept. has the budget for a new server, but we need justification, understandably. What is the simplest set of information I can provide to management (and other experienced DBAs) to justify the expense of a server upgrade?

Posted Aug 6, 2013, 7:15 PM UTC

24
gasmantomato•

You need to prove with numbers that the machine is underpowered - and that means proving one or more of the following is choking the system: CPU, memory, disk (or other I/O such as SAN).

You should ask your host system administrator to use their own monitoring tools for gauging whether the machine is being choked on one of the above 3. If they don't see any issues or problem-areas, then it may simply be a DB configuration issue (which a DBA should be able to help with)

If it's not DB configuration issue, you may be able to combine the host monitoring data with Oracle's AWR or StatsPack reports generated for problem periods, then this data will probably give you a solid footing.
ADDM reports may also be helpful as well.

You can see a bit more information about AWR & ADDM here: http://docs.oracle.com/cd/E11882_01/server.112/e25789/cncptdba.htm#CHDEECCE

Hope that helps.

edit: Depending on how your system is used, another option may be stress-testing (a.k.a. "load testing" or "load generation") your system. Load-testing may help you find out at what point your systems will fall over (and where the problem areas are). There are lots of tools available for stress-testing - some are free. Apache's JMeter tool is a great multi-purpose tool for load-generation, like a "swiss army knife". One advantage of using a load-generation tool is that it's results will allow you to describe to mgmt how bad user experience degrades when the system is under load. e.g. when 10 users using accessing your company site, each webpage takes an average of 1 second to load ; with 100 users each webpage takes an average of 5 seconds to load ; etc. This load-generation approach may or may not be suitable for your application+DB, but I thought I'd mention it.

3
VladimirPuto•

Oracle make a tool called OSWatcher Black Box that can be helpful in tracking down performance issues from the OS side. It's built around io/net/vmstat and top, and it archives the data. We just used it to track intermittent database hang down to a dodgy SAN causing huge I/O waits, for example.

2
BeliefSuspended2008•

It's pricey but I use Quest's Spotlight On Oracle for uncovering performance issues throughout the stack.

1
conditionator•

There is no guarantee that new hardware will improve your performance. In fact, performance often degenerates after hardware upgrade. I would recommend reviewing the Oracle parameters, maybe add some RAM, get better discs or upgrade the CPU, that is if any of these things is in fact a bottleneck in your system setup.

The most effective way to increase performance of a DB is to get rid of unnecessary workload. I obviously don't know anything about your system but I have seen programmers do some unbelievably stupid things, f.x. querying the language setting of the DB 1 million times per minute.

0