Log-structured filesystems write down all data in a continuous log-like format that is only appended to, never overwritten. The approach is said to reduce seek times, as well as minimizing the kind of data loss that occurs with conventional Linux filesystems.
For example, data loss occurs on ext3 filesystems when the system crashes during a write operation. When the system reboots, the journal notes that the write did not complete, and any partial data writes are lost.
The UFS filesystem used by Solaris provides a data "snapshot" feature that prevents such data loss, NTT Labs says, but filesystem operation must be suspended to use the feature, reducing performance. NILFS, in contrast, can "continuously and automatically [save] instantaneous states of the file system without interrupting service," NTT Labs says.
"Checkpoint" snapshot feature
The "instantaneous states" that NILFS continously saves can actually be mounted, read-only, at the same time that the actual filesystem is mounted read-write—a capability useful for data recovery after hardware failures and other system crashes.