Oracle Performance Firefighting
by Craig Shallahamer

Get the book here



Craig Shallahamer's Blog

You were brought to this page based on an internet search and as a free service to Oracle DBAs.

The text below is an except from the book, Oracle Performance Firefighting, written by Craig Shallahamer of OraPub, Inc. Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click here.


©2009, 2010 by Craig Shallahamer. This is copyrighted material.
Please—Out of respect for those involved in the creation of the book and also for their familes, we ask you to respect the copyright both in intent and deed. Thank you.

-------------------------------

Suppose you have 100 pieces of paper, 25 with the number 1 printed on them, 25 with the number 2, 25 with the number 3, and 25 with the number 4. You round up 100 people and give each one piece of paper. You find four other people and label them 1, 2, 3, and 4. You tell the 100 people to mix, and then stand in a single line on one side of a room. You place the four people on the other side of the room evenly spaced. You then stand at the beginning of the 100-person queue, and once every 10 seconds, you allow one person to walk to the numbered person that matches the number written on her piece of paper. You also tell the four people on the other side of the room that once a person is in front of them, that person must stay there for 5 seconds and then move away. Then you say, "Go!" You'll see that after a few minutes, some of the queues in front of the four people are very long, some are short, and some have no queue. When you look again in a couple of minutes, while the lines may have moved around, the same general situation exists!

The point is that even with the same IO activity perfectly balanced across all devices, because every transaction must go to a specific device, there is no way all devices can always have the same run queue. The result is that even at a low IO device utilization, there will be queuing! And the queue times are highly variable when compared to the CPU queuing configuration. Figure 4-18 graphically shows just how dramatic and immediate queue time occurs when each device has its own queue, resulting in an increase in response time. This happens with the same exact arrival rate and the same speed devices. The only difference is the number of queues in the system.

Figure 4-18. This response-time graph contrasts two configurations with the same device speed and same system arrival rate. The one difference is the dotted line has a queue for each device (like an IO subsystem) and the solid line has a single queue feeding all the devices (like a CPU subsystem). As the graph shows, when each device has its own queue, queuing immediately occurs, resulting in an immediate response time increase.

©2009, 2010 by Craig Shallahamer. This is copyrighted material.
Please—Out of respect for those involved in the creation of the book and also for their familes, we ask you to respect the copyright both in intent and deed. Thank you.


Know what's important before it's too late!

OraPub's
Performance Training

is like no other...





More Class Pics...
Get student testimonials!