Abstract
Recently, flash memory is used to store data in mobile computing devices such as PDAs, SmartCards, mobile phones and MP3 players. These devices need index structures like the B-tree to efficiently support some operations like insertion, deletion and search. The BFTL(B-tree Flash Translation Layer) technique was first introduced which is for implementing the B-tree on flash memory. Flash memory has characteristics that a write operation is more costly than a read operation and an overwrite operation is impossible. Therefore, the BFTL method focuses on minimizing the number of write operations resulting from building the B-tree. However, we indicate in this paper that there are many rooms of improving the performance of the I/O cost in building the B-tree using this method and it is not practical since it increases highly the usage of the SRAM memory storage. In this paper, we propose a BOF(the B-tree On Flash memory) approach for implementing the B-tree on flash memory efficiently. The core of this approach is to store index units belonging to the same B-tree node to the same sector on flash memory in case of the replacement of the buffer used to build the B-tree. In this paper, we show that our BOF technique outperforms the BFTL or other techniques.
최근 PDA, 스마트카드, 휴대폰, MP3 플레이어와 같은 이동 컴퓨팅 장치의 데이타 저장소로 플래시 메모리를 많이 사용하고 있다. 이런 장치는 데이타를 효율적으로 삽입, 삭제, 검색하기 위해 B-트리와 같은 색인기법을 필요로 한다. 플래시 메모리 상에서의 B-트리 구현에 관한 기존 연구로서는 BFTL(B-Tree Flash Translation Layer) 기법이 최초로 제안 되었다. 플래시 메모리는 읽기연산보다 쓰기연산 비용이 훨씬 크며, 덮어쓰기(overwrite)가 불가능하다는 특정을 갖고 있다. 따라서 BFTL 기법에서는 B-트리 구축 시 발생되는 다량의 쓰기연산을 최소화하는데 초점을 맞추고 있다. 하지만 BFTL 기법에 성능 개선의 여지가 많이 남아 있으며, BFTL 기법이 SRAM 메모리 공간을 증가시킨다는 단점 때문에 비현실적이다. 본 논문에서는 플래시 메모리 상에서 효율적으로 B-트리를 구축하기 위한 BOF(B-Tree On Flash Memory)기법을 제안한다. BOF 기법의 핵심은, B-트리 구축 시 사용하는 임시 버퍼의 인덱스 유닛(index unit)들을 플래시 메모리에 저장할 때 같은 노드에 속하는 인텍스 유닛들을 같은 섹터에 저장하는 것이다. 본 논문에서는 성능평가 실험을 통해 BOF 기법의 우수성을 보인다.