DOI QR코드

DOI QR Code

The Efficient Merge Operation in Log Buffer-Based Flash Translation Layer for Enhanced Random Writing

임의쓰기 성능향상을 위한 로그블록 기반 FTL의 효율적인 합병연산

  • 이준혁 (연세대학교 컴퓨터공학과) ;
  • 노홍찬 (연세대학교 컴퓨터과학과) ;
  • 박상현 (연세대학교 컴퓨터과학과)
  • Received : 2011.12.26
  • Accepted : 2012.03.07
  • Published : 2012.04.30

Abstract

Recently, the flash memory consistently increases the storage capacity while the price of the memory is being cheap. This makes the mass storage SSD(Solid State Drive) popular. The flash memory, however, has a lot of defects. In order that these defects should be complimented, it is needed to use the FTL(Flash Translation Layer) as a special layer. To operate restrictions of the hardware efficiently, the FTL that is essential to work plays a role of transferring from the logical sector number of file systems to the physical sector number of the flash memory. Especially, the poor performance is attributed to Erase-Before-Write among the flash memory's restrictions, and even if there are lots of studies based on the log block, a few problems still exists in order for the mass storage flash memory to be operated. If the FAST based on Log Block-Based Flash often is generated in the wide locality causing the random writing, the merge operation will be occur as the sectors is not used in the data block. In other words, the block thrashing which is not effective occurs and then, the flash memory's performance get worse. If the log-block makes the overwriting caused, the log-block is executed like a cache and this technique contributes to developing the flash memory performance improvement. This study for the improvement of the random writing demonstrates that the log block is operated like not only the cache but also the entire flash memory so that the merge operation and the erase operation are diminished as there are a distinct mapping table called as the offset mapping table for the operation. The new FTL is to be defined as the XAST(extensively-Associative Sector Translation). The XAST manages the offset mapping table with efficiency based on the spatial locality and temporal locality.

최근 플래시 메모리의 꾸준한 용량 증가와 가격 하락으로 인해 대용량 SSD(Solid State Drive)가 점차 대중화 되고 있다. 하지만, 플래시 메모리는 하드웨어적인 제약사항이 존재하며, 이러한 제약사항을 보완하기 위해 FTL(Flash Translation Layer)이라는 특별한 미들웨어 계층을 필요로 한다. FTL은 플래시 메모리의 하드웨어적인 제약사항을 효율적으로 운용하기 위해 필요한 계층으로서 파일 시스템으로부터의 논리적 섹터 번호(logical sector number)를 플래시 메모리의 물리적 섹터 번호(physical sector number)로 변환해주는 역할을 한다. 특히, 플래시 메모리의 여러 제약사항 중 "쓰기 전 지우기(erase-before-write)"는 플래시 메모리 성능 저하의 주요한 원인이 되고 있으며, 이와 관련하여 로그블록 기반의 여러 연구들이 활발히 진행되어 왔지만, 대용량의 플래시 메모리를 효율적으로 운용하기 위해서는 몇몇 문제점들이 존재한다. 로그블록 기반의 FAST는 넓은 지역에 임의쓰기(random writing)가 빈번하게 발생하면 데이터 블록 내 사용되지 않은 섹터들로 인해 효율적이지 못한 합병 연산이 발생한다. 즉, 효율적이지 못한 블록 쓰레싱(thrashing)이 빈번하게 발생하고, 플래시 메모리의 성능을 저하시킨다. 로그블록은 덮어쓰기(overwriting) 발생 시 일종의 캐쉬처럼 운영되며, 이러한 기법은 플래시 메모리 성능 향상에 많은 발전을 주었다. 본 연구에서는 임의쓰기에 대한 성능 향상을 위해 로그 블록만을 캐쉬처럼 운영하는 것이 아니라 플래시 메모리 전체를 캐쉬처럼 운용하고, 이를위해 별도의 오프셋이라는 매핑 테이블을 운용하여 플래시 메모리 성능 저하의 주요한 원인이 되는 합병연산과 삭제연산을 줄였다. 새로운 FTL은 XAST(eXtensively-Associative Sector Translation)이라 명명하며, XAST에서는 공간지역성과 시간지역성에 대한 기본적인 이론을 바탕으로 오프셋 매핑 테이블을 효율적으로 운용한다.

Keywords

References

  1. D. Roselli, J. R. Lorch, T. E. Anderson. "A comparison of file system workloads," Proceedings of the annual conference on USENIX Annual Technical Conference, 2000.
  2. J. S. Kim, J. M. Kim, S. H. Noh, S. L. Min and Y. K. Cho, "A space-efficient flash translation layer for CompactFlash systems," IEEE Transactions on Consumer Electronics, Vol.48, No.2, pp.366-375, 2002. https://doi.org/10.1109/TCE.2002.1010143
  3. T.S. Chung, S. Park, M. J. Jung and B. S. Kim, "STAFF: State Transition Applied Fast Flash Translation Layer," Lecture Notes in Computer Science, Organic and Pervasive Computing - ARCS 2004, Vol.2981, pp.67-80, 2004.
  4. 정태선, 박형석, "플래시 메모리를 위한 효율적인 사상 알고리즘," 정보과학회논문지, Vol.32, No.9, 2005.
  5. J. U. Kang, H. S. Jo, J. S. Kim and J. W. Lee, "A superblock-based flash translation layer for NAND flash memory," In Proceedings of the 6th ACM & IEEE International conference on Embedded software. 2006.
  6. S. W. Lee, D. J. Park, T. S. Chung, D. H. Lee, S. W. Park and H. J. Song, "A log buffer-based flash translation layer using fully-associative sector translation," ACM Transactions on Embedded Computing Systems, Vol.6, No.3, July, 2007.
  7. S. J. Kwon and T. S. Chung, "An efficient and advanced space-management technique for flash memory using reallocation blocks," IEEE Transactions on Consumer Electronics, Vol.54, No.2, pp.631-638, May, 2008. https://doi.org/10.1109/TCE.2008.4560140
  8. C. I. Park, W. M. Cheon, J. U. Kang, K. H. Roh, W. H. Cho and J. S. Kim, "A reconfigurable FTL (flash translation layer) architecture for NAND flash-based applications," ACM Transactions on Embedded Computing Systems, Vol.7, No.4, July, 2008.
  9. S. J. Lee, D. K. Shin, Y. J. Kim and J. H. Kim, "LAST: locality-aware sector translation for NAND flash memory-based storage systems," ACM SIGOPS Operating Systems Review, Vol.42, No.6, October, 2008.
  10. H. J. Kim and S. J. Ahn, "BPLRU: a buffer management scheme for improving random writes in flash storage," Proceedings of the 6th USENIX Conference on File and Storage Technologies, 2008.
  11. A. Gupta, Y. J. Kim and B. Urgaonkar, "DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings," Proceeding of the 14th international conference on Architectural support for programming languages and operating systems, March, 2009.
  12. H. J. Cho, D. K. Shin and Y. I. Eom, "KAST: K-associative sector translation for NAND flash memory in real-time systems," Design, Automation & Test in Europe Conference & Exhibition, pp.507-512, April, 2009.
  13. T. S. Chung, D. J. Park, S. W. Park, D. H. Lee, S. W. Lee and H. J. Song, "A survey of Flash Translation Layer," Journal of Systems Architecture, Vol.55, No.5-6, pp.332-343, May, 2009. https://doi.org/10.1016/j.sysarc.2009.03.005
  14. 윤태현, 김광수, 황선영, "섹터 매핑 기법을 적용한 효율적인 FTL 알고리듬 설계," 한국통신학회논문지, Vol.34, No.12, pp.1418-1425, 2009.
  15. 조혜원, 한용구, 이영구, "플래시메모리 DBMS를 위한 블록의 비고정적 로그 영역 관리 기법," 정보과학회논문지, Vol.37, No.5, 2010.
  16. M. Russinovich, "DiskMon for Windows v.2.01," http://www.microsoft.com/technet/sysinternals/utilities/diskmon.mspx, 2006.
  17. Samsung Electronic, "128M ${\times}$ 8 Bit NAND Flash Memory," http://www.datasheet4u.com, 2006.
  18. S. W. Lee, B. K. Moon, C. I. Park, "Advances in Flash Memory SSD Technology for Enterprise Database Applications," Proceedings of the 35th SIGMOD international conference on Management of data, 2009.