Re: disk layout + performance

From: James R Grinter <jrg@dont-contact.us>
Date: Mon, 10 Feb 1997 16:45:25 +0000

On Mon 10 Feb, 1997, Ong Beng Hui <ongbh@singnet.com.sg> wrote:
>tie all the heads together. So access to the disks is limited
>to one access at one time. I would think that using each of the
>disks as a single cache_dir would be better since the simultaneous
>access will be possible to each individual dusks.

I'm not sure I agree with your "tieing all the heads together".
(Maybe that's some oddity of the OSs you're familiar with?). With
Squid and the current IO routines you're issuing one request at a
time; for writing that will be happening through buffers long after
the write() call has returned and Squid is onto something else and
that's where striping really comes in useful. (We have greater
proportions of write to read operations. Anyone else care to comment?)

Still, my very rough testing with asynchronous IO indicated that
striping was better than seperate spool directories. If you lose
one disk you'd lose the cache contents either way so even that
isn't an issue. Additionally, if I really needed to I could grow
the single filesystem, whereas I couldn't add another cache_dir
without scrapping the contents [*].

>access is very random, and very small. Average object size
>will be around the region of 20K for my environment. I
>believe that single disk approach will be better.

My measurements gave a mean average of 14kB and a mode of less than
2kB. 50% of all objects were within 4kB so I went with that as a
stripe unit. (90% were under 22kB).

-- jrg.
[* possibly not very important for me, but it would seem this is useful
for some]
Received on Mon Feb 10 1997 - 09:08:55 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:34:25 MST