A Segment Space Recycling Scheme for Optimizing Write Performance of LFS

LFS의 쓰기 성능 최적화를 위한 세그먼트 공간 재활용 기법

  • 오용석 (서울시립대학교 컴퓨터통계학과) ;
  • 김은삼 (홍익대학교 정보컴퓨터공학부) ;
  • 최종무 (단국대학교 컴퓨터학과) ;
  • 이동희 (서울시립대학교 컴퓨터통계학과) ;
  • 노삼혁 (홍익대학교 정보컴퓨터공학부)
  • Published : 2009.12.15

Abstract

The Log-structured File System (LFS) collects all modified data into a memory buffer and writes them sequentially to a segment on disk. Therefore, it has the potential to utilize the maximum bandwidth of storage devices where sequential writes are much faster than random writes. However, as disk space is finite, LFS has to conduct cleaning to produce free segments. This cleaning operation is the main reason LFS performance deteriorates when file system utilization is high. To overcome painful cleaning and reduced performance of LFS, we propose the segment space recycling (SSR) scheme that directly writes modified data to invalid areas of the segments and describe the classification method of data and segment to consider locality of reference for optimizing SSR scheme. We implement U-LFS, which employs our segment space recycling scheme in LFS, and experimental results show that SSR scheme increases performance of WOLF by up to 1.9 times in HDD and 1.6 times in SSD when file system utilization is high.

LFS(Log-structured File System)는 쓰기 요청을 세그먼트 버퍼에 모으고, 세그먼트 단위로 순차 기록함으로써 무작위 쓰기에서도 최적의 성능을 보여준다. 그러나 디스크의 공간이 유한하여, LFS는 여유 세그먼트를 생성하는 클리닝을 수행해야 한다. 파일 시스템의 사용률이 증가함에 따라 세그먼트 클리닝 비용이 급격히 증가하는 단점이 있다. 본 논문에서는 LPS의 쓰기 성능 최적화를 위한 세그먼트 공간 재활용 기법을 설명한다. 이 기법은 유효 세그먼트를 재활용하여 여유 공간을 생성하는 방법으로 빈 세그먼트가 없이 쓰기요청을 처리 할 수 있다. 따라서 높은 비용의 클리닝 동작 없이, 데이터를 세그먼트 내 여유공간에 동적 재배치하여 쓰기요청을 처리한다. 또한 효율적인 세그먼트 공간 재활용을 위해 데이터 및 세그먼트의 지역성을 고려하는 분류기법을 설명한다. 실험 결과에서 이 기법은 파일 시스템의 사용률이 90%인 경우에도 기존 WOLF 기법을 사용한 LFS 보다 HDD에서 1.9배, SSD에서 1.6배의 성능향상을 보여준다.

Keywords

References

  1. M. Rosenblum, and J. K. Ousterhout, “The design and implementation of a log-structured file sys-tem,” ACM Trans. Comput. Syst., vol.10, no.1, pp.26-52, 1992 https://doi.org/10.1145/146941.146943
  2. M. Seltzer, K. Bostic, M. K. Mckusick et al., “An implementation of a log-structured file system for UNIX,” in Proceedings of the USENIX Winter Conference, San Diego, California, 1993
  3. T. Blackwell, J. Harris, and M. Seltzer, “Heuristic cleaning algorithms in log-structured file sys-tems,” in Proceedings of the USENIX 1995 Tech-nical Conference, New Orleans, Louisiana, 1995
  4. J. N. Matthews, D. Roselli, A. M. Costello et al., “Improving the performance of log-structured file systems with adaptive methods,” in Proceedings of the sixteenth ACM symposium on Operating systems principles, Saint Malo, France, 1997
  5. J. Wang, and Y. Hu, "WOLF - A Novel Reor-dering Write Buffer to Boost the Performance of Log-Structured File Systems," in Proceedings of the Conference on File and Storage Technologies, 2002
  6. W. Wang, Y. Zhao, and R. Bunt, "HyLog: A High Performance Approach to Managing Disk Layout," in Proceedings of the 3rd USENIX Conference on File and Storage Technologies, San Francisco, CA, 2004
  7. M. K. McKusick, W. N. Joy, S. J. Leffler et al., “A fast file system for UNIX,” ACM Trans. Comput. Syst., vol.2, no.3, pp.181-197, 1984 https://doi.org/10.1145/989.990
  8. M. Szeredi, 'Filesystem in userspace,' Located at http://fuse.sourceforge.net, 2005