Abstract
Recently, NAND flash memory is becoming into the spotlight as a next-generation storage device because of its small size, fast speed, low power consumption, and etc. compared to the hard disk. However, due to the distinct characteristics such as erase-before-write architecture, asymmetric operation speed and unit, disk-based systems and applications may result in severe performance degradation when directly implementing them on NAND flash memory. Especially when a B-tree is implemented on NAND flash memory, intensive overwrite operations may be caused by record inserting, deleting, and reorganizing. These may result in severe performance degradation. Although ${\mu}$-tree has been proposed in order to overcome this problem, it suffers from frequent node split and rapid increment of its height. In this paper, we propose Log-Structured B-Tree(LSB-Tree) where the corresponding log node to a leaf node is allocated for update operation and then the modified data in the log node is stored at only one write operation. LSB-tree reduces additional write operations by deferring the change of parent nodes. Also, it reduces the write operation by switching a log node to a new leaf node when inserting the data sequentially by the key order. Finally, we show that LSB-tree yields a better performance on NAND flash memory by comparing it to ${\mu}$-tree through various experiments.
최근 NAND 플래시 메모리는 하드 디스크에 비해 작고, 속도가 빠르며, 저 전력 소모 등의 장점을 가지고 있어 차세대 저장 매체로 각광받고 있다. 그러나 쓰기-전-소거 구조, 비대칭 연산 속도 및 단위와 같은 독특한 특징으로 인하여, 디스크 기반의 시스템이나 응용을 NAND 플래시 메모리 상에 직접 구현시 심각한 성능저하를 초래할 수 있다. 특히 NAND 플래시 메모리 상에 B-트리를 구현할 경우, 레코드의 잦은 삽입, 삭제 및 재구성에 의한 많은 양의 중첩 쓰기가 발생할 수 있으며, 이로 인하여 급격한 성능 저하가 발생할 수 있다. 이러한 성능 저하를 피하기 위해 ${\mu}$-트리가 제안되었으나, 잦은 노드 분할 및 트리 높이의 빠른 신장 등의 문제점을 가지고 있다. 본 논문에서는 갱신 연산을 위해 특정 단말 노드에 해당하는 로그 노드를 할당하고, 해당 로그 노드에 있는 변경된 데이터를 한 번의 쓰기 연산으로 저장하는 로그 기반의 B-트리(LSB-트리)를 제안한다. LSB-트리는 부모 노드의 변경을 늦추어 추가적인 쓰기 연산의 횟수를 줄일 수 있다는 장점을 가지고 있다. 또한 키 값에 따라 데이터를 순차적으로 삽입할 때, 로그 노드를 새로운 단말 노드로 교환함으로써 추가적인 쓰기 연산의 횟수를 줄일 수 있다. 마지막으로, 다양한 비교 실험을 통하여 ${\mu}$-트리와 비교함으로써 LSB-트리의 우수성을 보인다.