In the last episode (Feb 20), Matt W said:
> Can anyone tell me whether or not some kind of RAID will improve the
> seek/access times during lots of random reads from, say, MyISAM data
> files? I *do not care* about improved [sequential] transfer rates; I
> want the fastest possible random access.
> I'm thinking that RAID won't give an improvement in this case,
> because the disks can't know where to read from until MySQL issues
> the seek calls. :-( About the only thing I can think of that may help
> is if you're using striping, there won't be as much data on each disk
> so the head would need shorter seeks.
Depends on whether you're talking about a single client doing these
random reads or multiple ones.
The bottleneck with random I/O is fact that a read means physically
moving the disk head. If you have multiple disks striping (or
mirroring) the data, you distribute the load across all the heads. It
won't speed up a single client, but with more and more disks, it's less
and less likely that multiple clients will be needing to read data off
the same disk. Mirrors speed up reads more than stripes, but since you
have to write to both mirrors, they don't help writes. Raid-5 lets you
safely scale past 2 disks.
With a single client, get enough RAM to cache the entire table in
memory :) Or at least the entire index. That way you only need to do
one seek per query.