- SLBFTL을 이용한 임베디드 DBMS에서의 효율적인 저장소
- ㆍ 저자명
- 김상현,최화영,박상원,Kim. Sang-Hyun,Choe. Hwa-Young,Park. Sang-Won
- ㆍ 간행물명
- 데이타베이스 연구
- ㆍ 권/호정보
- 2009년|25권 3호|pp.3-22 (20 pages)
- ㆍ 발행정보
- 한국정보과학회
- ㆍ 파일정보
- 정기간행물| PDF텍스트
- ㆍ 주제분야
- 기타
최근 플래시 메모리는 디지털 카메라, 휴대폰, PDA, 넷북 등 엠베디드 기기 및 컴퓨팅 기기의 저장장치로 많이 이용되고 있다. 그러나 플래시 메모리는 덮어쓰기(overwrite) 연산이 되지 않는 물리적 특성이 있어 디스크와 같은 저장장치를 플래시 메모리로 바로 대체할 수 없다. 또한 현재 데이터베이스시스템은 디스크 기반 저장장치를 고려하여 설계 되었기 때문에 플래시 메모리를 데이터베이스시스템의 저장장치로 바로 사용할 수 없다. 플래시를 저장매체로 사용하기 위해 FTL(Flash Translation Layer)이라는 소프트웨어 변환 계층이 필요하다. FTL은 복사블록기법, 여유영역기법, 로그블록기법 등이 있고, 이러한 FTL 알고리즘 중 복사블록기법이나 여유영역기법 등은 변동섹터(out-of-place) 방식을 사용하고 섹터 맵을 유지하지 않는 특징이 있다. 이 두 FTL은 원하는 섹터를 찾기 위해 추가적인 연산이 발생한다. 따라서 본 논문은 섹터 맵의 일부를 캐싱하는 SLB(Sector Lookaside Buffer)정책을 두어, 블록 매핑을 사용하는 변동섹터방식의 FTL의 문제점을 개선한 FTL을 제안한다. SLB는 엔트리 수에 따라 플래시 메모리의 블록내 섹터에 대한 맵 정보를 메모리에 유지한다. 섹터 검색 시, SLB를 기존 맵 테이블에서 논리적 섹터 번호를 이용하여 물리적 블록과 섹터 위치를 찾기 전에 SLB 엔트리에서 물리 섹터 번호를 먼저 찾음으로써 읽기 성능을 향상시켰다. SLB를 적용한 FTL은 작은 랜덤 읽기 및 쓰기가 많이 발생하는 데이터베이스시스템에서 읽기 연산의 횟수를 획기적으로 줄임으로써 기존 FTL에 비해 개선된 I/O 성능을 보였다. 본 논문에서는 SLB를 사용한 FTL를 구현하여 임베디드 리눅스와 DBMS에서 실험 결과를 나타내고 분석하여 플래시 메모리 저장장치로서 효과적으로 사용될 수 있도록 성능을 개선하였다.
Flash Memory is widely used as a storage device of embedded devices and computers these days. The basic hardware characteristics of flash memory are non-volatility, low power consumption, shock resistance, and erase-before-write feature. The most important characteristic of flash memory, namely "erase-before-write", has to be erased in the unit of block before new data can be overwritt b. Due to its hardware characteristic, Flash Memory requires a software layer called FTL(Flash Translation Layer) to be used as a mass storage. There are three kinds of typical FTL algorithms such as, mirror block(FMAX) method, log block method, and spare space block(MITS) method. The FTL algorithms, mentioned as above, write the data to other locations with out-of-place mappiarewhen they are asked to be overwritt b. Espeanally, mirror block and spare space block method have no sector map tablestt b.sector iat bmation. It allows them iacrease additional read operations to search demanded sectors. Therefore, we propose an improved FTL rdware ch(Sector Lookaside Buffer)tt b.rectitywarethe drawbacks of FTL with out-of-place mappiar. SLB supports FTL to cache iat bmation of some desired sectors. SLB has a hash table to retain setctor iat bmation. It helps read and write operations find physical sector locations. We implemented several FTL schemes and experimented on them rdwareI/O benchmark and TPC-A benchmark. We show that FTL with SLB has a good performance of read operation as twice as one without SLB in embedded linux and DBMS.