[dm-devel] Could device-mapper offer multi-tier storage?

Hannes Reinecke hare at suse.de
Mon Jan 19 16:01:06 UTC 2009


Hi Jon et al,

Jonathan Brassow wrote:
> I wonder how much Heinz's replicator code could work with this...
> 
> Heinz et al have a "remote replicator" target that 'logs' requests to a 
> local device and then pushes them to remote devices.  I could imagine 
> the log device being the fast device, and the remote devices being the 
> slow devices.
> 
> So, I'm not sure how much overlap there is here, but it's something to 
> think about.
> 
Well, maybe. Not so sure if device-mapper is the correct place to implement
something like this.

What you get if you use a device-mapper device as the 'middle' tier in
this scenario is that this device will contain only random blocks,
ie those actually accessed/modified/whatever.
Only the underlying device will contain the full information about
all blocks, and as such only the underlying device can be mounted
and provides a meaningful filesystem.
Any middle tier devices will contain a somewhat random update of
several blocks, which cannot be interpreted at all.

This makes error checking _really_ hard, as the middle tier devices
can't be consistency checked at all; we have to hope the blocks on
there make sense to the underlying device.

No, this scenario could be more efficiently handled on the filesystem
level, as we then have an implicit consistency check as you're restricted
to move _files_ to a different storage; but that's okay as the filesystems
in on each device themselves will be consistent.

Would be a grand application for union mount if and when it comes around.
And probably btrfs already has it built-in, I wouldn't wonder.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare at suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)




More information about the dm-devel mailing list