Log-structured File Systems(LFS) [基于日志结构文件系统]
LFS[Log-structured File System]也是由Berkeley的研究人员最先提出并实现的,他们当时认为随机I/O和顺序I/O之间存在着巨大性能差异,其实就是顺序I/O快,随机I/O慢[因为要磁盘需要seek和rorate的时间]。所以说随机I/O成了bottleneck拖了后腿。但是记得在介绍FFS的blog中说过,即便在FFS中,一个write操作其实是至少5次write操作,因为写入一个data block还要更新对应的metadata信息,这里面就比不可少的需要随机I/O。要是能够只用顺序读写就好了,可以大幅度提高I/O效率了。同时Berkeley的研究人员还认为write操作占据了全部操作的很大一部分,因为Memory在快速增长,能够Cache的数据也越来越多那么就要涉及更多的write操作。所以基于这样两个考虑:(1)write占所有disk操作大部分;(2)随机IO性能比连续IO差很多,要是能只用连续I/O就会大幅度提高性能,LFS不更新任何数据只提供append[追加]操作,同时会建立buffer将多次操作放进一个segment里一次性写入来有效利用顺序IO。