skip to main content
10.1145/121132.121137acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
Article
Free Access

The design and implementation of a log-structured file system

Authors Info & Claims
Published:01 September 1991Publication History

ABSTRACT

This paper presents a new technique for disk storage management called a log-structured file system. A log-structured file system writes all modifications to disk sequentially in a log-like structure, thereby speeding up both file writing and crash recovery. The log is the only structure on disk; it contains indexing information so that files can be read back from the log efficiently. In order to maintain large free areas on disk for fast writing, we divide the log into segments and use a segment cleaner to compress the live information from heavily fragmented segments. We present a series of simulations that demonstrate the efficiency of a simple cleaning policy based on cost and benefit. We have implemented a prototype log-structured file system called Sprite LFS; it outperforms current Unix file systems by an order of magnitude for small-file writes while matching or exceeding Unix performance for reads and large writes. Even when the overhead for cleaning is included, Sprite LFS can use 70% of the disk bandwidth for writing, whereas Unix file systems typically can use only 5--10%.

References

  1. 1.John K. Ousterhout, Herve Da Costa, David Harrison, John A. Kunze, Mike Kupfer, and James G. Thompson, "A Trace-Driven Analysis of the Unix 4.2 BSD File System," Proceedings of the lOth Symposium on Operating Systems Principles, pp. 15-24 ACM, (1985). Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.Michael L. Kazar, Bruce W. Leverett, Owen T. Anderson, Vasilis Apostolides, Beth A. Bottos, Sailesh Chutani, Craig F. Everhart, W. Anthony Mason, Shu-Tsui Tu, and Edward R. Zayas, "DEcorum File System Architectural Overview," Proceedings of the USENIX 1990 Summer Conference, pp. 151-164 (Jun 1990).Google ScholarGoogle Scholar
  3. 3.Robert B. Hagmann, "Reimplementing the Cedar File System Using Logging and Group Commit," Proceedings of the l lth Symposium on Operating Systems Principles, pp. 155-162 (Nov 1987). Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.John K. Ousterhout, Andrew R. Cherenson, Frederick Douglis, Michael N. Nelson, and Brent B. Welch, "The Sprite Network Operating System," IEEE Computer 21(2) pp. 23-36 (1988). Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.David A. Patterson, Garth Gibson, and Randy H. Katz, "A Case for Redundant Arrays of Inexpensive Disks (RAID)," ACM SIGMOD 88, pp. 109-116 (Jun 1988). Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.Mary G. Baker, John H. Hartman, Michael D. Kupfer, Ken W. Shirriff, and John K. Ousterhout, "Measurements of a Distributed File System," Proceedings of the 13th Symposium on Operating Systems Principles, ACM, (Oct 1991). Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.M. Satyanarayanan, "A Study of File Sizes and Functional Lifetimes," Proceedings of the 8th Symposium on Operating Systems Principles, pp. 96-108 ACM, (1981). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.Edward D. Lazowska, John Zahorjan, David R Cheriton, and Willy Zwaenepoel, "File Access Performance of Diskless Workstations," Transactions on Computer Systems 4(3) pp. 238-268 (Aug 1986). Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 9.Marshall K. McKusick, "A Fast File System for Unix," Transactions on Computer Systems 2(3)pp. 181-197 ACM, (1984). Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10.R. Sandberg, "Design and Implementation of the Sun Network Filesystem," Proceedings of the USENIX 1985 Summer Conference, pp. 119-130 (Jun 1985).Google ScholarGoogle Scholar
  11. 11.John K. Ousterhout, "Why Aren't Operating Systems Getting Faster As Fast as Hardware?," Proceedings of the USENIX 1990 Summer Conference, pp. 247-256 (Jun 1990).Google ScholarGoogle Scholar
  12. 12.Margo I. Seltzer, Peter M. Chen, and John K. Ousterhout, "Disk Scheduling Revisited," Proceedings of the Winter 1990 USENIX Technical Conference, (January 1990).Google ScholarGoogle Scholar
  13. 13.Jim Gray, "Notes on Data Base Operating Systems,'' in Operating Systems, An Advanced Course, Springer-Verlag (1979). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.A. Chang, M. F. Mergen, R. K. Rader, J. A. Roberts, and S. L. Porter, "Evolution of storage facilities in AIX Version 3 for RISC System/6000 processors," IBM Journal of Research and Development 34(1) pp. 105-109 (Jan 1990). Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.Marshall Kirk McKusick, Willian N. Joy, Samuel J. Leffler, and Robert S. Fabry, "Fsck - The UNIX File System Check Program," Unix System Manager's Manual - 4.3 BSD Virtual VAX-11 Version, USENIX, (Apr 1986).Google ScholarGoogle Scholar
  16. 16.Larry McVoy and Steve Kleiman, "Extent-like Performance from a UNIX File System," Proceedings of the USENIX 1991 Winter Conference, (Jan 1991).Google ScholarGoogle Scholar
  17. 17.D. Reed and Liba Svobodova, "SWALLOW: A Distributed Data Storage System for a Local Network," Local Networks for Computer Communications, pp. 355-373 North-Holland, (1981).Google ScholarGoogle Scholar
  18. 18.Ross S. Finlayson and David R. Cheriton, "Log Files: An Extended File Service Exploiting Write- Once Storage," Proceedings of the 11 th Symposium on Operating Systems Principles, pp. 129-148 ACM, (Nov 1987). Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.H.G. Baker, "List Processing in Real Time on a Serial Computer," A.I. Working Paper 139, MIT-AI Lab, Boston, MA (April 1977).Google ScholarGoogle Scholar
  20. 20.Henry Lieberman and Carl Hewitt, "A Real-Time Garbage Collector Based on the Lifetimes of Objects," Communications of the ACM 26(6)pp. 419-429 (1983). Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21.Brian M. Old, Barbara H. Liskov, and Robert W. Scheifler, "Reliable Object Storage to Support Atomic Actions," Proceedings of the lOth Symposium on Operating Systems Principles, pp. 147-159 ACM, (1985). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22.David J. DeWitt, Randy H. Katz, Frank Olken, L. D. Shapiro, Mike R. Stonebraker, and David Wood, "Implementation Techniques for Main Memory Database Systems," Proceedings of SIGMOD 1984, pp. 1-8 (Jun 1984). Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.Kenneth Salem and Hector Garcia-Molina, "Crash Recovery Mechanisms for Main Storage Database Systems," CS-TR-034-86, Princeton University, Princeton, NJ (1986).Google ScholarGoogle Scholar
  24. 24.Robert B. Hagmann, "A Crash Recovery Scheme for a Memory-Resident Database System," IEEE Transactions on Computers C-35(9)(Sep 1986). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The design and implementation of a log-structured file system

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SOSP '91: Proceedings of the thirteenth ACM symposium on Operating systems principles
        September 1991
        253 pages
        ISBN:0897914473
        DOI:10.1145/121132

        Copyright © 1991 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 September 1991

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        Overall Acceptance Rate131of716submissions,18%

        Upcoming Conference

        SOSP '24

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader