LVM and VxVM

Re: lvcreate: strict or contiguous?

Go to solution
Alexander Bolle
Occasional Contributor

lvcreate: strict or contiguous?


system: HP UX 11.0 / N4000 / MirrorUX

I am wondering what the performance difference can be between two 'identical systems'. Config is OK. But as it turned out some of the logical volumes on which the oracle db is residing have not been identically created.

Some of the LV's have the allocation set to strict whereas on the slower system that is set to strict / contiguous.
Also I see some difference in the Consistency Recovery part. Some have MWC and some have NOMWC (all disks are mirrorred and all disks have alternate links).

From the man pages I can find the global difference in the functionality, but is somebody able to indicate what differences in performance could be?

Steven E. Protter
Exalted Contributor

Re: lvcreate: strict or contiguous?

The root fs must have strict and contiguous settings.

Beyond that, there is a benefit for say oracle to not have to have pieces of the database spread over different disks, especially since it benefits from RAID 1 configuration.

Other applications get little or no benefit because they read less data or don't need it so fast.

To make a decision on changing things, you need to figure out what works best for the applications involved.

There may be other factors other than strict/contiguous such as load factors rpm speed on the disk, scsi card type that have more of an impact on this.

Steven E Protter
Owner of ISN Corporation
Alexander Bolle
Occasional Contributor

Re: lvcreate: strict or contiguous?

Hi Steven,

Thanks for that.

So in theory you want to have a strict allocation. That way the mirroring is always done on another PV. Fair enough.

Could the contiguous setting cause a slowdown effect then? eg. if all extents are allocated in ascending order would it then rearrange everything everytime something changes and cause a backlog because of that?

To me the strict / contiguous setting seems like the best but apperently it is slower then the strict allocation. Could the mirror consistency have impact or am I competely missing the point?

Thanks and regards,
Honored Contributor

Re: lvcreate: strict or contiguous?

Ok to get some clearence about your problem I repeat how I understand your problem.

strict: This parameter is used in conjunction with the mirror option.
If a lv is marked strict it can not mirrored on same disk or PVG.

contigous: means that all PE of a lv must be in "row". So if you want extend your lv the next free PE must direct behind your last PE which is used in your lv.

I recommend you following way for your oracle-db disks lv's to get best performance.

1. You should switch on stripping on your disks. The size of the stripping blocks should be minimum your db-block size.
2. As you created your oracle vg have you added your disks to the vg in a changing order? i. e. Add first disks from first device file of your disk and add the second disk from the second device file of the disk the third is again from the first device file from the disk and so on.
What you get then is (in counjuction with stripping) that the first disk is always entered over the first controller and the second disks is always entered over second controller. This is the fastes way for a alternate path configuration with best performance.



Sometimes you lose and sometimes the others win