storage systems (208) peterson (103) file systems (11) zachary n. j. peterson (1) zachary peterson (1) znjp (1) ext3cow (1) copy-on-write (1) file system versioning (1) time shifting file system (1)
Of course, this works for more than just text files; images, databases, and binaries, ext3cow does it all.
There are quite a few advantages to system like this, including data availability and reliability, a consistent image for backup, a checkpoint for restoring the state of a file system, a source for data mining, and a way to provide tamper resistant storage.
So, what are the trade-offs for such a system? For every version of a file that exists, an inode must exist to reference it. Therefore, there's a slight increase in metadata overhead of about 5%. Of course this percentage varies with snapshot frequency and the number of files modified between snapshots. If you never take a snapshot, then there's no increase in metadata. Further, no data is every thrown away, so there's higher data block usage. Results on the average increase in data block usage have yet to