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

Zdenek Kabelac zkabelac at redhat.com
Wed Jan 4 14:09:32 UTC 2023

Dne 04. 01. 23 v 9:00 Zhiyong Ye napsal(a):
> Dear all,
> The current standard lv implementation of snapshots is COW (Copy-on-write), 
> which creates snapshots very quickly. However, the first write performance of 
> the original lv will be poor after creating a snapshot because of COW. 
> Moreover, the more snapshots there are, the worse the performance of the 
> original lv will be.
> I tested the random read/write performance when the original lv was created 
> with different number of snapshots. The data is shown below:
> Number of snapshots  Randread(iops)  Randwrite(iops)
>          0                21989           22034
>          1                10048           10041
>          2                6770            6773
>          3                5375            5378
> There are scenarios where the performance of the original lv is more 
> demanding, and the speed of snapshot creation is not as strong a requirement. 
> Because it is the original lv that will actually be used, and the snapshot is 
> only a secondary function. Therefore snapshots using the COW approach will not 
> meet the needs of this scenario.
> Therefore, is it feasible to implement another way of taking snapshots? Let's 
> say the first snapshot is created as a full snapshot, and all subsequent 
> snapshots are based on incremental data from the previous snapshot.


Have you played with thin provisioning - as that's the answer to the slow 



More information about the linux-lvm mailing list