Azure NetApp Files provides the capability of using snapshots as a way of backing up the data, ransomware protection, or as a mechanism for Dev/Test, along with many others. Snapshots are point-in-time copies of the volumes, that can be restored to a new volume or reverted to the original volume. Probably, you might have read that NetApp’s snapshots are very storage efficient because they only store the differential changes between operations made to a volume. But, how does this look in reality?
First, we will create an Azure NetApp Files volume. For this experiment, we will use the SMB 3.0 protocol. Once that the volume is created and mapped to our system, we will move large data files to the directory where the volume is mapped to. Then, we create several snapshots to check their size.
In the following figures, two different graphs are displayed. The blue line shows how the actual volume consumed size grows when adding more data to the created volume. The orange line represents the size of the snapshots created to backup the data from the volume.
In Figure 1, the total consumed size of the volume is equal to 12.99 GiB. In order to backup this amount of data, snapshots take only 164KiB. In Figure 2, the volume size grows up to 42.88 GiB and it only takes 3.96 MiB of storage for snapshots to backup this data. This means that the snapshot size for both these two cases is less than 0.009% of your actual data! This little fraction of consumed size is all that you need to keep your data secure by using NetApp snapshots.
Snapshot stores point-in-time copies of the incremental changes between your data. Therefore, the following snapshots will only store the changes of the data of the volume. In the file store system -both for Linux and Windows systems- they are shown as hidden directories with the name snapshots. These folders can be hidden or shown to the end-user. They can be browsed to restore any file, as they will show all the previous versions of the files when the snapshot was made. Snapshots are read-only, which means they can be browsed and the files can be recovered but they cannot be deleted.
If a file is deleted from the volume, the size of the snapshot will increase at it can no longer point to the original file due to its deletion. The snapshots will hold the original copy of the file so it can be restored. Figure 3 shows the changes in the size of the volume when large files are deleted. For this example, over 43 GiB of data is deleted. Given that snapshots only store the changes made in the volume, it only takes over 33 GiB of data in the snapshots to back up the deleted data. If the data from the volume is completely deleted, the total volume consumed size is equal to only the snapshots created.
If the volume is restored to the latest snapshot, the deleted files are recovered and the volume and snapshot size go back to the previous state, as it can be seen in Figure 4.
The size of your data and snapshots in an Azure NetApp Files volume can be easily monitored in the Azure portal as the animation shown below.
For more information about how NetApp’s snapshots are created, feel free to visit the following blog posts: