Vedang Manerikar and Chinmay Kamat
The growing value of data as a strategic asset has given rise to the necessity of implementing reliable backup and recovery solutions in the most efficient and cost-effective manner. We implement Next4 - file system based snapshot feature in Ext4 which provides incremental versions of data, enabling reliable backup and data recovery. The design is integrated into the Ext4 file system and does not require any application level intelligence.
Next4 aims at implementing a snapshot feature as an add-on to the basic Ext4 file system without causing any considerable changes to the original Ext4 on-disk format. It is implemented by infusing the copy-on-write strategy for metadata blocks and the move-on-write strategy for data blocks. Every snapshot is stored as a sparse file and these files are maintained in a linked list. They contain either modified data blocks or a ‘hole’ in case of
unmodified blocks. A ‘hole’ indicates that the corresponding block should be read from other snapshot files. Thus each snapshot is an incremental backup of the data within the system.
What distinguishes our implementation of snapshots is the way that the data is backed up, improving both space utilization as well as performance. Ext4, the successor of most widely used Ext3 file system, is shipped as the base file system with most Linux distributions today. The project discussion has already received positive response from the maintainers of the Ext4 and the code is underway for mainline kernel submission, once approved Next4 will cater the huge number of users with its benefits.