Friday, April 15, 2011

how to understand a disk I/O graph?

Hi All,

My server admins told me that I might give out too many streams from my site causing a problem with the disk I/O.
What exactly are disk I/Os?

If I understand, it is all the user input(forms, uploads, queries,....) and outputs(streaming,downloading,browsing), Am I right?

Now, how would an I/O be calculated on my dedicated server, this is just for the HD, Am I right?

How would you understand each graphs?

http://docs.cacti.net/usertemplate:data:host_mib:diskio


As I understand the problem, you could have a very powerful processor and a lot of ram on a Linux dedicated server, if your Hard drive has a poor I/O score it will still give a slow website to the customers.

How do you calculate I/O? and How can I find out the I/O level of my own HDs?


If you had a good reply with a good understanding of such problems please let me know.

I have installed CACTI but now would like to install the plug shown above, the problem is that I do not understand the data on it.


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


The "easiest" way to explain it is like this:

Your harddrive has several platters or "plates" in it. With a spindle on one side, with several probes attached to it.

These platters spin, and these spindles move the probes across the surface of the platter.

Your limited by how physically fast the harddrive can spin, and also by how fast the probes can move from one end of the disk to another.

A physically slower harddrive can only do X amount of "seeks" or probe movements across the harddrive platters.

If you have a server asking for data 100 times a second, and the probes and platters can only move fast enough to supply your server with 80 data sets a second, then your spending time or "IO Wait", waiting for those next 20 pieces of data in the next second.

Or another way to compare it:

You have a 100mbit internet connection, you can have 8 simultaneous connections since thats your limit imposed by the Ethernet cable (yes I know thats not correct, but this is for explanations sake).

You have 10 users on your site, even though you have plenty of internet speed (or disk RPMs), you can only service 8 of those users. The other 2 users twiddle their thumbs until its their turn.