An Efficient Log Buffer Management Through Join between Log Blocks

로그 블록 간 병합을 이용한 효율적인 로그 버퍼 관리

  • Published : 2009.05.22

Abstract

Flash memory has rapidly deployed as data storage. However, the flash memory has a major disadvantage that recorded data cannot be dynamically overwritten. In order to solve this "erase-before-write" problem, the log block buffer scheme used Flash memory file system. however, the current managements of the log buffer, in case random write pattern, BAST technique have problem of frequent merge operation, but FAST technique don't consider merge operation by frequently updated data. Previous methods not consider merge operation cost and frequently updated data. In this paper, we propose a new log buffer management scheme, called JBB. Our proposed method evaluates the worth of the merge of log blocks, so we conducts the merge operation between infrequently updated data and its data blocks, and postpone the merge operation between frequently updated data and its data blocks. Through the method, we prevent the unnecessary merge operations, reduce the number of the erase operation, and improve the utilization of the flash memory storage. We show the superiority of our proposed method through the performance evaluation with BAST and FAST.

플래시 메모리는 이미 데이터가 기록된 섹터에 대해 덮어 쓰기 연산이 되지 않는 특징이 있다. 이러한 플래시 메모리의 특징을 극복하기 위해 로그 버퍼 관리 기법이 소개 되었다. 그러나 현재 까지 연구된 로그 버퍼 관리 기법들 중 BAST 기법은 쓰기 연산의 패턴이 임의 쓰기인 경우 잦은 병합 연산을 발생시키는 문제가 있으며, 이를 개선한 FAST 기법은 자주 갱신되는 데이터에 의해 빈번하게 발생되는 병합 연산을 고려하지 않았다. 본 논문에서는 새로운 로그 버퍼 관리기법인 JBB를 제안한다. 제안하는 기법은 로그 블록의 병합 가치를 평가하여 빈번하게 갱신이 발생하지 않는 데이터에 대해서 데이터 블록과의 병합연산을 수행하고, 빈번하게 갱신되는 데이터에 대해 데이터 블록과의 병합을 최대한 지연한다. 이를 통해 불필요한 데이터 블록의 병합 연산을 방지하여 플래시 메모리의 소거 횟수를 크게 감소시켰고, 공간 활용을 극대화 하였다. 로그 버퍼 관리 기법의 대표적인 기법인 BAST와 FAST와의 성능 비교를 통해 본 논문에서 제안하는 기법의 우수성을 증명하였다.

Keywords