RE: disk layout/striping questions part 2
Posted in 1999
My choice with only 4 drives would be to even the load on all drives at all times by LVM striping over all 4 disks and creating all chunks across all disks. Then place the most used chunks (assuming you can determine this) towards the center of the disk, reducing disk head movement as much as possible. Having done this you can create dbspaces for fragmentating tables, but offsetting the start of each fragmented dbspace as follows: normal dbspace: disk1, disk2, disk3, disk4 fragment 1 dbspace: disk2, disk3, disk4, disk1 fragment 2 dbspace: disk3, disk4, disk1, disk2 etc Thus when you select rows from a fragmented table, the disk reads will be out of sync and not compete with each other. (Does LVM have this control?) AIM: 1. Even the load. 2. Add performance on fragmented tables while minimising contention. Regards Murray Wood -----Original Message----- From: Allen W. Jantzen [SMTP:jantzen@concentric.net] Sent: Tuesday, May 25, 1999 1:34 PM To: informix-list@iiug.org Subject: disk layout/striping questions part 2 (Sorry for posting this a 2nd time - I was hoping for a few opinions.) As part of my 7.22 -> 7.31 upgrade, I am redoing the disk layout. A few questions for the gurus: Environment: HP-UX 10.20 HP quad processor K260 1 gig RAM 20 gig database 3 or 4 mirrored singleton disk drives I will be using HP-UX LVM to create raw 2 gig logical volumes on the drives (which are all larger than 2 gigs). I will then create my chunks in these volumes. Most of the chunks will be 2 gigs, but if smaller (ala detached indexes or single table dbspaces), the offsets will work. Question: Is it better to create lvm volumes striped across the disks and then just create chunks one after another at those volumes? (The OS is striping) OR Is it better to create lvm volumes on single disks (no lvm striping), then create the informix chunks one after another across the disks/volumes? (Informix is striping). Please don't tell me that striping across the disks is the answer - I already know that. _How_ should I stripe across the disks? And why? Should LVM handle the details, and the OS figures things out, or should I create chunks in order across the disks/volumes myself? LVM will have to be involved anyways so that I can break up the large disks into manageable 2 gig logical volumes. Since these are raw chunks, should I involve the OS as little as possible? I am leaning towards Informix mirroring rather than the HP-UX/Mirror. I will probably utilize some expression-based fragmentation. Any opinions? Thanks Allen Jantzen, DBA Ned Davis Research