linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: "Larry Dickson" <ldickson@cuttedge.com>
To: LVM general discussion and development <linux-lvm@redhat.com>
Subject: Re: [linux-lvm] Snapshot question... [scaling problem]
Date: Thu, 24 Apr 2008 07:21:18 -0700	[thread overview]
Message-ID: <1c748a490804240721g639303d8g5b5071dea15332bb@mail.gmail.com> (raw)
In-Reply-To: <a71bd89a0804232110o28f37e17j486315d745ae7724@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2080 bytes --]

There is also a subtle point here. If one of the older snapshots already
"saw" a change to that block, which came on before a newer snapshot was
started, then you will write to the new COW and not to the old. But as Dan
says, that can still leave a lot of sloshing around... especially with data
of the "hit each one rarely" type.

There's an almost trivial variant on this, where you keep the
(read-only) snapshots in a time-ordered sequence, and freeze the last
snapshot COW at the same moment as you start the next snapshot. Then writing
only ever hits the new snapshot COW, and reading from any older snapshot
(virtual) volume involves figuring out which is the first after that to hold
the block, but still involves reading only one block. I wonder why LVM does
not do this. Perhaps Zumastor does? Or somebody else?

Larry Dickson

On 4/23/08, Dan Kegel <dank@kegel.com> wrote:
>
> On Wed, Apr 23, 2008 at 8:57 PM, Ross Boylan <ross@biostat.ucsf.edu>
> wrote:
> >  > > but
> >  > > when you write to it, the system makes sure that unless it has
> >  > > been done already, the block you're modifying are being copied
> >  > > first from the "real" volume to COW volume before being modified
> >  > > in the "real" volume.
> >  >
> >  > And to be clear, the COW volumes of _all_ snapshots[1].  This is where
> >  > the snapshot scaling problem arises.
> >  Could someone say a bit more, because I definitely don't follow this.
>
> If you have a single original volume, and you keep ten snapshots
> of it, and then you write a block to the original volume, you
> may end up needing to write eleven blocks.  Ouch!
>
> Thus the write overhead of LVM snapshots scales poorly with the
> number of snapshots per volume.
>
> Note that LVM snapshots scale well with the number of volumes,
> but that's not interesting or surprising, as each volume is independent.
> - Dan
>
> _______________________________________________
> linux-lvm mailing list
> linux-lvm@redhat.com
> https://www.redhat.com/mailman/listinfo/linux-lvm
> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
>

[-- Attachment #2: Type: text/html, Size: 3231 bytes --]

  reply	other threads:[~2008-04-24 14:21 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-22 10:30 [linux-lvm] Snapshot question Charles Marcus
2008-04-22 10:47 ` Stephane Chazelas
2008-04-22 16:12   ` Brian J. Murrell
2008-04-22 16:38     ` Stephane Chazelas
2008-04-22 16:54       ` Dan Kegel
2008-04-22 17:39         ` Dan Kegel
2008-04-23 11:49           ` Stephane Chazelas
2008-04-22 16:51     ` Dan Kegel
2008-04-24  3:57     ` [linux-lvm] Snapshot question... [scaling problem] Ross Boylan
2008-04-24  4:10       ` Dan Kegel
2008-04-24 14:21         ` Larry Dickson [this message]
2008-04-24 15:59           ` Stuart D. Gathman
2008-04-24 17:19             ` Larry Dickson
2008-04-22 16:28   ` [linux-lvm] Snapshot question Charles Marcus
2008-04-22 16:47     ` dave
2008-04-22 17:09       ` Charles Marcus
2008-04-23 10:08         ` Charles Marcus
2008-04-22 16:52     ` Stephane Chazelas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1c748a490804240721g639303d8g5b5071dea15332bb@mail.gmail.com \
    --to=ldickson@cuttedge.com \
    --cc=linux-lvm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).