[linux-lvm] The feasibility of implementing an alternative snapshot approach

Zhiyong Ye yezhiyong at bytedance.com
Mon Jan 9 06:21:48 UTC 2023

Hi Zdenek,

Thank you for your detailed answer.

For the thin snapshot I will use the latest version of kernel and lvm 
for further testing. I want to use both snapshot methods (thin and 
thick) in the production environment. But if the thick snapshot is only 
still in the maintenance phase, then for thick lv I have to see if there 
is any other way to accomplish the snapshot function.

I use lvm mainly for virtualized environments. Each lv acts as a block 
device of the virtual machine. So I also consider using qemu's own 
snapshot feature. When qemu creates a snapshot, the original image used 
by the virtual machine becomes read-only, and all write changes are 
stored in the new snapshot. But currently qemu's snapshots only support 
files, not block devices.



On 1/6/23 9:42 PM, Zdenek Kabelac wrote:
> Dne 04. 01. 23 v 17:12 Zhiyong Ye napsal(a):
>> Hi Zdenek,
>> Thank you for your reply.
>> Snapshots of thinlv are indeed more efficient compared to standard lv, 
>> this is because data blocks can be shared between snapshot and 
>> original thinlv. But there is also a performance loss after thinlv 
>> creates a snapshot. This is because the first write to the snapshotted 
>> thinlv requires not only allocating a new chunk but also copying the 
>> old data.
>> Here are some performance data and a discussion of the thinlv snapshot:
>> https://listman.redhat.com/archives/linux-lvm/2022-June/026200.html
> Well that's our current  'state-of-the-art' solution.
> Make sure you are using latest kernels for your performance testing - 
> there have been several improvements around the locking (6+ kernels) - 
> but if this still not good enough for your case you might need to seek 
> for some other solutions (although would be nice to know who handles 
> this task better).
> Definitely the old 'thick-snapshot' is mostly in maintenance phase and 
> it's usability (and its design) is limited for some short living 
> temporary snapshoting (i.e. you are making backup and after completing 
> your backup of the filesystem you remove your temporary snapshot - it's 
> been never designed to be used for multi-level multi-GiB snapshots - 
> this will not fly...
> When you use thin snapshots - make sure your metadata LV is located on 
> your fast device and you use best fitting chunksize.
> Regards
> Zdenek

More information about the linux-lvm mailing list