J. N. Matthews, D. Roselli, A. M. Costello, R. Y. Wang,
T. E. Anderson.
Improving the Performance of Log-Structured File Systems with Adaptive
Methods.
Proc. Sixteenth Symposium on Operating Systems Principles.
pp. 238-251.
October 1997.
Also appeared as University of California Technical Report CSD-98-985.
File system designers today face a dilemma, a log-structured file
system (LFS) can offer superior performance for many common workloads
such as those with frequent small writes, read traffic that is
predominantly absorbed by the cache, and sufficient idle time to clean
the log. However, an LFS has poor performance for other workloads,
such as random updates to a full disk with little idle time to
clean. In this paper, we show how adaptive algorithms can be used to
enable LFS to provide high performance across a wider range of
workloads. First, we show how to improve LFS write performance in
three ways: by choosing the segment size to match disk and workload
characteristics, by modifying the LFS cleaning policy to adapt to
changes in disk utilization, and by using cached data to lower
cleaning costs. Second, we show how to improve LFS read performance by
reorganizing data to match read patterns. Using trace-driven
simulations on a combination of synthetic and measured workloads, we
demonstrate that these extensions to LFS can significantly improve its
performance.