Design and Implementation of Transactional Write Buffer Cache with Storage Class Memory

트랜잭션 단위 쓰기를 보장하는 스토리지 클래스 메모리 쓰기 버퍼캐시의 설계 및 구현

  • Published : 2010.02.15

Abstract

Using SCM in storage systems introduce new potentials for improving I/O performance and reliability. In this paper, we study the use of SCM as a buffer cache that guarantees transactional unit writes. Our proposed method can improve storage system reliability and performance at the same time and can recover the storage system immediately upon a system crash. The Proposed method is based on the LINUX JBD(Journaling Block Device), thus reliability is equivalent to JBD. In our experiments, the file system that adopts our method shows better I/O performance even while guaranteeing high reliability and shows fast file system recovery time (about 0.2 seconds).

최근 등장한 비휘발성 속성과 램의 속성을 동시에 제공하는 스토리지 클래스 메모리(SCM)는 스토리지 시스템의 입출력 성능과 안정성 향상을 위한 시스템 소프트웨어 연구에 있어 새로운 가능성을 열어준다. 이에 본 연구에서는 트랜잭션 단위 쓰기를 보장하는 SCM 버퍼 캐시를 통하여 스토리지 시스템의 안전성과 성능을 동시에 향상 시키는 한편 시스템 붕괴 시 즉각적인 복구를 가능하게 한다. 본 연구에서 제안하는 트랜잭션 단위 쓰기를 보장하는 SCM 버퍼 캐시 기법은 리눅스 저널링 블록 디바이스(JBD)의 트랜잭션 메커니즘을 기반으로 하므로 JBD 만큼의 안정성을 제공 한다. 동시에 실제 시스템에서의 성능 평과 결과에서 트랜잭션 단위 쓰기를 보장하는 SCM 버퍼 캐시를 적용한 EXT3 파일 시스템은 높은 수준의 안정성을 보장하는 동시에 최소한의 안정성만을 제공하는 파일시스템보다 더 좋은 수행성능을 보여주었으며, 시스템 붕괴 시 시스템을 즉각적(약 0.2초)으로 복구함을 보여주었다.

Keywords

References

  1. M. I. Seltzer, G. R. Ganger, M. K. McKusick, K. A. Smith, C. A. N. Soules, and C. A. Stein, "Journaling versus Soft Updates: Asynchronous Meta-data Protection in File Systems," In Proceedings of the 2000 USENIX Annual Technical Conference, 2000.
  2. G. W. Burr, B. N. Kurdi, J. C. Scott, C. H. Lam, K. Gopalakrishnan, and R. S. Shenoy, "Overview of candidate device technologies for storage-class memory," IBM Journal of Research and Development, vol.52, no.4/5, 2008.
  3. P. M. Chen, W. T. Ng, S. Chandra, C. Aycock, G. Rajamani, and D. Lowell, "The Rio File Cache: Surviving Operating System Crashes," In Proceedings of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems(ASPLOS-VII), 1996.
  4. I. H. Doh, J. Choi, D. Lee, and S. H. Noh. "Exploiting Non-Volatile RAM to Enhance Flash File System Performance," In Proceedings of the 7th ACM & IEEE International Conference on Embedded Software (EMSOFT'07), 2007.
  5. K. Sovani, "Linux: The Journaling Block Device," Kernel Trap (http://kerneltrap.org/node/6741), 2006.
  6. J. Katcher, "PostMark: a New Filesystem Benchmark," Network Appliance, Tech. Rep. TR3022, 1997.