Abstract
Solid-State Disks (SSDs) have been currently considered as a promising candidate to replace hard disks, due to their significantly short access time, low power consumption, and shock resistance. SSDs, however, have drawbacks such that their write throughput and life span are decreased by random-writes, nearly regardless of SSDs controller designs. Previous studies have mostly focused on better designs of SSDs controller and reducing the number of write operations to SSDs. We suggest another method that reallocates data pages that tend to be simultaneously written to contiguous blocks. Our method gathers write operations during a period of time and generates write traces. After transforming each trace to a set of transactions, our method mines frequent itemsets from the transactions and reallocates the pages of the frequent itemsets. In addition, we introduce an algorithm that reallocates the pages of the frequent itemsets with moderate time complexity. Experiments using TPC-C workload demonstrated that our method successfully reduce 6% of total logical block access.
Solid-State Disks (SSDs)는 빠른 접근 시간, 적은 전력소모, 전기 충격에의 내성과 같은 장점으로 인해 하드 디스크를 대체 할 것으로 기대되고 있다. 그러나 SSDs는 임의 쓰기(random write)로 인한 수명 단축이란 단점이 있으며 이는 SSDs 컨트롤러의 구조와는 별개로 나타나고 있다. SSDs와 관련한 기존 연구는 컨트롤러의 더 나은 디자인과 쓰기 연산의 감소에 주력하였다. 본 연구는 동시에 쓰여지는 경향이 있는 여러 데이터 페이지를 연속적인 블록에 배치하는 방법을 제시한다. 이 방식은 우선 특정 기한 동안 쓰기 연산에 대한 정보를 수집한 후 상기 쓰기 연산에 대한 정보를 트랜잭션화 하여 frequent itemset을 추출하고 이를 연속적인 블록에 재배치하는 과정으로 이루어진다. 또한 본 연구는 frequent itemset의 page를 재배치할 수 있는 알고리즘을 소개한다. TPC-C 기반 실험에 있어 본 연구가 제안한 재배치를 수행한 결과 저장 기기 접근 횟수를 평균 6 % 감소시킬 수 있었다.