One of the biggest problems with Oracle Database tuning is that non-technical people (and even a lot of technical ones as well) can’t understand it. Although we invented Method R in an Oracle context, it’s easy to explain our method in everyday terms, because Method R is probably already the method you use to tune everyday things.
Imagine that your performance problem is this: every time you send your son on a shopping errand, it takes him an hour, and it’s really bothering you that it takes him this long. How can you optimize the process?
You’ve already executed step 1 of Method R by identifying the task that’s important to you: shopping for groceries. Step 2 says to measure that hour in detail. The best way to do that is by creating a profile, which is a spanning, non-overlapping account of your time. Think of a pie chart that explains where all your time has gone.
The pie chart is a good start, but you can do more when you can see the actual numbers behind the chart. Imagine that your profile looks like this:
|Talk with friends||37||62%||3|
|Walk to/from store||8||13%||2|
Now you can see exactly where your time has gone, and exactly how much time you can save. From this profile, it’s easy to begin imagining solutions, which is step 3. For example, you could reduce the shopping time by 62% (from 60 to 23 minutes) if your boy didn’t stop to chat. The profile also tells you what not to do: buying that car he wants is going to save only some fraction of 8 minutes; a car is certainly not where your performance leverage is here.
Step 4 says to stop your analysis when the cost of further optimization exceeds the benefit. It pays to be clever: the smartest optimizations are the ones that produce tremendous benefit at low cost.
We use the same general procedure to optimize computer software performance. The real tricks are learning how to create the profile, and then learning how to attack the problems that your profile reveals. That’s where our software, education, and consulting services enter the picture.