Re: Volume Managers in Linux

Theodore Y. Ts'o (tytso@mit.edu)
Tue, 3 Nov 1998 15:01:11 -0500


Date: Mon, 2 Nov 1998 17:31:19 -0600 (CST)
From: Shawn Leas <sleas@ixion.honeywell.com>

All well and good. BUT what of simple multi-volume block devices?
Requiring userland to use EXT2 to get RAID or multivolume is broken.
I just think MD is not the way to go about it.

I've never claimed that the ext2 is the best way to do RAID; I think MD
is the way to do that. However, allowing ext2 to be able to support
filesystems which span multiple block devices is a good thing to do, and
a cleaner way of supporting multivolume support. Examples of
filesystems which do this include the UDF filesystem used by DVD-ROM's,
and Digital Unix's Advanced Filesystem.

The reason why I think the LVM approach is more complex than it needs to
be is its approach of taking a disk, and chopping it into thousands of
4MB pieces, as if LVM were a Ginsu knife, and then having to stich those
pieces back together into LVM partitions.

In fact, if you look at the AIX LVM implementation, yes, it does chop
the disks into little-bitty 4M pieces, but the filesystem is also
involved in the picture. So (typically of AIX) it has all of the
complexity of both worlds. :-)

Does the 4M ginsu-knife approach buy you something? Yes, it allows you
to have infinitely configurable partitions, which can be scattered
across the entire disk in a non-contiguous fashion. Whether or not this
is a good thing or not can be debated. I will say that if the
filesystem isn't involved, some of its optimizations to reduce seek
times get thrown out the door since there are no guarantees whether
adjacent 4M blocks are anywhere near each other or not. Then again,
some people may prefer the ability to create partitions without needing
any kind of advance planning as being more important than performance.
(I don't, but clearly some people do.)

- Ted

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/