• Title/Summary/Keyword: Flash Memory$B^+$-tree

검색결과 32건 처리시간 0.021초

낸드 플래시 메모리 상에서 쓰기 패턴 변환을 통한 효율적인 B-트리 관리 (Efficiently Managing the B-tree using Write Pattern Conversion on NAND Flash Memory)

  • 박동주;최해기
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제36권6호
    • /
    • pp.521-531
    • /
    • 2009
  • 플래시 메모리는 하드디스크와 다른 물리적 특성을 가진다. 대표적으로 읽기연산과 쓰기연산의 비용이 다르고, 덮어쓰기(overwrite)가 불가능하여 소거연산(erase)이 선행되어야 한다. 이러한 물리적 제약을 소프트웨어적으로 보완해주기 위해서, 플래시 메모리를 사용하는 시스템은 대부분 플래시 변환 계층(Flash Translation Layer)을 사용한다. 현재까지 효율적인 FTL 기법들이 제안되었으며, 이들은 임의쓰기(random writes) 패턴보다 순차쓰기(sequential writes) 패턴에 훨씬 더 효율적으로 동작한단. 본 논문에서는 플래시 메모리 상에서 B-트리 인덱스를 효율적으로 생성, 유지하기 위한 새로운 기법을 제안한다. B-트리에 키의 삽입, 삭제, 수정 등치 연산을 수행하면 FTL에 비효율적인 임의쓰기 패턴을 많이 발생시키며, 결국 B-트리 인덱스 유지 비용이 커지게 된다. 제안하는 기법에서는 B-트리에서 발생되는 임의쓰기 패턴을 먼저 플래시 메모리의 쓰기 버퍼에 추가쓰기(append writes) 패턴으로 변환하여 저장하고, 추후 이를 FTL에 효율적인 순차쓰기 패턴으로 FTL에 전달한다. 다양한 실험을 통해 제안하는 기법이 기존의 기법보다 플래시 메모리 I/O 비용 측면에서 우수하다는 것을 보인다.

플래시 메모리 상에서 B-트리 설계 및 구현 (Design and Implementation of B-Tree on Flash Memory)

  • 남정현;박동주
    • 한국정보과학회논문지:데이타베이스
    • /
    • 제34권2호
    • /
    • pp.109-118
    • /
    • 2007
  • 최근 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 기법의 우수성을 보인다.

A Flash-based B+-Tree using Sibling-Leaf Blocks for Efficient Node Updates and Range Searches

  • Lim, Seong-Chae
    • International Journal of Internet, Broadcasting and Communication
    • /
    • 제8권3호
    • /
    • pp.12-24
    • /
    • 2016
  • Recently, as the price per bit is decreasing at a fast rate, flash memory is considered to be used as primary storage of large-scale database systems. Although flash memory shows off its high speeds of page reads, however, it has a problem of noticeable performance degradation in the presence of increasing update workloads. When updates are requested for pages with random page IDs, in particular, the shortcoming of flash tends to impair significantly the overall performance of a flash-based database system. Therefore, it is important to have a way to efficiently update the B+-tree, when it is stored in flash storage. This is because most of updates in the B+-tree arise at leaf nodes, whose page IDs are in random. In this light, we propose a new flash B+-tree that stores up-to-date versions of leaf nodes in sibling-leaf blocks (SLBs), while updating them. The use of SLBs improves the update performance of B-trees and provides the mechanism for fast key range searches. To verify the performance advantages of the proposed flash B+-tree, we developed a mathematical performance evaluation model that is suited for assessing B-tree operations. The performance comparisons from it show that the proposed flash B+-tree provides faster range searches and reduces more than 50% of update costs.

AS B-트리: SSD를 사용한 B-트리에서 삽입 성능 향상에 관한 연구 (AS B-tree: A study on the enhancement of the insertion performance of B-tree on SSD)

  • 김성호;노홍찬;이대욱;박상현
    • 정보처리학회논문지D
    • /
    • 제18D권3호
    • /
    • pp.157-168
    • /
    • 2011
  • 최근 플래시 메모리 및 SSD가 노트북이나 PC의 저장장치로 사용되는 것뿐 아니라, 기업용 서버의 차세대 저장장치로 주목 받고 있다. 대용량의 데이터를 처리하는 데이터베이스에서는 삽입, 삭제, 검색을 빠르게 하기 위해 다양한 색인 기법을 사용하는데 그 중B-트리 구조가 대표적인 기법이다. 하지만 플래시 메모리 상에서는 하드디스크와 달리 덮어쓰기(overwrite) 연산을 수행하기 위해서는 먼저 해당 블록(block)에 대하여 플래시 메모리의 연산 중 가장 비용이 많이 요구되는 삭제(erase) 연산을 수행 해야만 한다. 이러한 문제점을 극복하기 위해 플래시 메모리 사이에 위치하는 플래시 변환 계층(Flash memory Translation Layer)을 사용한다. 이 플래시 변환 계층은 수정한 데이터를 동일한 논리 주소에 덮어쓰기를 하더라도 실제로 임의의 다른 물리 주소에 저장하도록 하여 이 문제를 해결할 수 있다. NAND 플래시 메모리를 배열 형태로 포함하고 있는 SSD는 한 개 이상의 플래시 메모리 패키지를 병렬로 접근할 수 있다. 이러한 병렬 접근 방식을 사용하여 쓰기 연산 성능을 향상하기 위해서는 연속한 논리 주소에 쓰기 연산을 요청하는 것이 유리하다. 하지만 B-트리는 구성 노드에 대한 삽입 삭제 연산 시에 대부분 연속되지 않은 논리 주소 공간에 대한 갱신 연산이 일어나게 된다. 따라서 SSD의 병렬 접근 방식을 최대한 활용할 수 없게 된다. 본 논문에서는 수정한 노드를 연속한 논리 주소에 쓰도록 하는 AS B-트리 구조를 제안하여 SSD의 병렬 접근 방식을 최대한 활용할 수 있도록 하였다. 구현 및 실험한 결과 AS B-트리에서의 삽입 시간이 B-트리보다 21% 개선된 것을 확인하였다.

플래시 메모리 상에서 B+-트리 노드 크기 증가에 따른 성능 평가 (Effect of Node Size on the Performance of the B+-tree on Flash Memory)

  • 박동주;최해기
    • 정보처리학회논문지A
    • /
    • 제15A권6호
    • /
    • pp.325-334
    • /
    • 2008
  • 플래시 메모리는 크기가 작고 적은 전력을 사용하며 충격에 강하기 때문에 휴대폰, MP3 플레이어, PDA와 같은 이동 기기에 널리 사용되고 있다. 또한, 노트북과 개인용 컴퓨터에서 사용하던 하드디스크를 플래시 메모리로 교체하려는 시도도 진행되고 있다. 최근에는 플래시 메모리 저장 시스템에서 대용량의 데이터를 효율적으로 검색하기 위한 플래시 메모리용 $B^+$-트리 인덱스를 개발하려는 연구가 이루어지고 있다. 이러한 연구는 $B^+$-트리에 키의 삽입 또는 삭제 시 발생하는 "덮어쓰기"를 최소화하는데 초점을 두고 있다. 그러나 이것뿐만 아니라 하나의 $B^+$-트리 노드에 할당되는 물리적 페이지의 크기도 $B^+$-트리 성능에 영향을 줄 수 있다. 본 논문에서는 다양한 실험을 통해 노드 크기에 따른 $B^+$-트리의 구축 성능, 검색 성능, 그리고 저장 공간 사용량을 비교 및 분석한다. 노드에 키 삽입 시 정렬 및 비정렬 알고리즘을 제시하며, 또한 효율적인 노드 검색을 위한 적절한 인덱스 노드 헤드 구조를 제안한다.

효율적 범위 검색을 위한 플래시 메모리 기반 B+-트리 (A Flash Memory B+-Tree for Efficient Range Searches)

  • 임성채;박창섭
    • 한국콘텐츠학회논문지
    • /
    • 제13권9호
    • /
    • pp.28-38
    • /
    • 2013
  • 지난 수십 년간 B+-트리는 디스크 기반 데이터베이스를 위한 색인 구조로 가장 널리 사용되고 있다. 디스크 기반 B+-트리에서의 노드 갱신은 해당 노드가 저장된 디스크 페이지를 제자리 갱신함으로써 간단히 수행되며, 이런 제자리 갱신 비용은 크지 않다. 반면에 B+-트리를 플래시 메모리에 저장하여 사용할 때는 플래시 메모리의 과도한 제자리 갱신 비용 문제로 인해 기존 디스크 기반 B+-트리 알고리즘을 그대로 사용하기 어렵다. 이런 이유로 기존 플래시 메모리 기반 B+-트리 연구에서는 실시간으로 발생하는 갱신 연산 정보를 추가적인 임시 공간에 저장하는 방식을 사용하였다. 이런 방식은 B+-트리의 제자리 갱신 횟수를 쉽게 줄일 수 있다는 장점이 있지만 저장 공간의 추가 사용과 키 검색 시간을 지연시킬 수 있다는 문제가 있다. 특히 단말노드 계층의 링크 연결을 사용한 범위 검색을 효과적으로 수행할 수 없다는 문제를 가지고 있다. 이런 문제점을 해결하기 위해 본 논문에서는 단말노드들과 이들의 부모노드를 p-node 블록이라는 하나의 플래시 메모리 블록에 저장할 수 있는 알고리즘을 제안한다.

플래시 메모리상에 B+트리를 위한 효율적인 색인 버퍼 관리 정책 (An Efficient Index Buffer Management Scheme for a B+ tree on Flash Memory)

  • 이현섭;주영도;이동호
    • 정보처리학회논문지D
    • /
    • 제14D권7호
    • /
    • pp.719-726
    • /
    • 2007
  • 최근 NAND 플래시 메모리는 충격에 강한 내구력과, 저 전력 소비, 그리고 비휘발성이라는 특징 때문에 MP3 플레이어, 모바일 폰, 노트북과 같은 다양한 이동 컴퓨팅 장비의 저장 장치로 사용되고 있다. 그러나 플래시 메모리의 특수한 하드웨어적 특징 때문에 디스크 기반의 시스템을 플래시 메모리상에 곧바로 적용 하는 것은 여러 단점들을 발생 시킬 수 있다. 특히 B트리가 구축될 때 레코드의 삽입, 삭제연산 및 노드 분할 연산은 많은 중첩쓰기 연산을 발생하기 때문에 플래시 메모리의 성능을 심각하게 저하시킬 것이다. 본 논문에서는 IBSF로 불리는 효율적인 버퍼 관리 기법을 제안한다. 이것은 색인 단위에서 중복된 색인 단위를 제거하여 버퍼가 채워지는 시간을 지연시키기 때문에 B트리를 구축할 때 플래시 메모리에 데이터를 쓰는 횟수를 줄인다. 또한 다양한 실험을 통하여 IBSF 기법이 기존에 제안되었던 BFTL 기법보다 좋은 성능을 보이는 것을 증명한다.

플래시 메모리 기반 인덱스 구조에서 대리블록 이용한 가비지 컬렉션 기법 (Garbage Collection Method using Proxy Block considering Index Data Structure based on Flash Memory)

  • 김선환;곽종욱
    • 한국컴퓨터정보학회논문지
    • /
    • 제20권6호
    • /
    • pp.1-11
    • /
    • 2015
  • 낸드 플래시 메모리는 빠른 접근 시간과 저전력의 특성을 가지고 있어 저장장치로 많이 사용되고 있는 추세이다. 하지만 저사양의 임베디드 장치에서는 메모리 요구사항과 구현상의 복잡성으로 FTL을 적용하기에는 비용이 많이 든다. 이러한 이유로 FTL을 구현하기 힘든 임베디드 장치에 적용할 수 있는 B+ 트리 연구들이 다수 제안되었다. 이런 연구들은 낸드 플래시 메모리에서 제자리 업데이트가 불가하다는 단점을 고려하여 삽입과 갱신의 성능을 최적화 하였다. 하지만 B+ 트리에 기존의 가비지 컬렉션 기법들을 적용하면 낸드 플래시 메모리의 페이지 위치를 변경하게 되고 B+ 트리의 재구성을 발생시켜 전체적인 성능을 저하시킨다. 이러한 문제를 해결하고자 본 논문에서는 낸드 플래시 메모리를 기반으로 하는 B+ 트리와 이와 유사한 인덱스 트리 구조에 적용할 수 있는 가비지 컬렉션 기법을 제안한다. 제안하는 가비지 컬렉션 기법은 블록 정보 테이블과 대리 블록을 이용하여 B+ 트리의 재구성을 발생시키지 않는다. 제안된 기법의 성능평가를 위해, 낸드 플래시 메모리가 장착된 실험 장치에 B+ 트리와 ${\mu}$-Tree를 구현하고 제안된 기법을 적용하였다. 구현 결과 B+ 트리에서 제안된 기법이 GAGC(Greedy Algorithm Garbage Collection)보다 삽입된 키의 개수가 약 73% 많았으며, ${\mu}$-Tree에서 제안된 기법이 GAGC보다 시간 오버헤드가 약39% 적었다.

플래시 메모리 B-트리를 위한 저비용 노드 갱신 기법 (An Efficient Flash Memory B-Tree Supporting Very Cheap Node Updates)

  • 임성채
    • 한국콘텐츠학회논문지
    • /
    • 제16권8호
    • /
    • pp.706-716
    • /
    • 2016
  • B-트리는 공간 효율성과 빠른 키 검색 시간으로 인해 하드 디스크 기반 DBMS의 색인 기법으로 널리 쓰이고 있다. 하지만 B-트리를 플래시 메모리에 저장해 사용한다면, 높은 노드 갱신 비용으로 인해 DBMS 성능을 크게 저하시킬 수 있다. 이는 B-트리 단말노드에 발생하는 임의(random) 갱신 연산이 플래시 저장 장치의 과도한 가비지 수집 비용을 낳을 수 있기 때문이다. 논문에서는 이런 문제를 막기 위해 단말노드의 부모 계층 노드들을 물리적으로 저장하지 않고 가상(virtual) 노드로 둔다. 키 검색을 위해 가상 노드가 필요할 때는 자식 노드들을 참조하여 가상 노드를 동적으로 생성한 후 버퍼에 두고 사용한다. 제안된 플래시 B-트리 알고리즘은 노드 갱신과 트리 재구성 동작이 단일 플래시 블록 안에서 수행되기 때문에 가비지 수집 비용과 노드 갱신 비용을 낮게 할 수 있다. 또한 기존에 제안된 플래시 기반 B-트리와 비교하여 매우 빠른 키 검색 시간을 보장한다. 논문에서는 수학적 성능 모델을 통해 제안된 플래시 B-트리의 성능을 검증한다.

내장형 정보기기를 위한 플래시 메모리 기반 색인 기법 (Flash Memory based Indexing Scheme for Embedded Information Devices)

  • 변시우;노창배;허문행
    • 대한전기학회:학술대회논문집
    • /
    • 대한전기학회 2006년도 심포지엄 논문집 정보 및 제어부문
    • /
    • pp.267-269
    • /
    • 2006
  • Recently, flash memories are one of best media to support portable computer's storages in mobile computing environment. The features of non-volatility, low power consumption, and fast access time for read operations are sufficient grounds to support flash memory as major database storage components of portable computers. However, we need to improve traditional Indexing scheme such as B-Tree due to the relatively slow characteristics of flash operation as compared to RAM memory. In order to achieve this goal, we devise a new indexing scheme called F-Tree. F-Tree improves tree operation performance by compressing pointers and keys in tree nodes and rewriting the nodes without a slow erase operation in node insert/delete processes.

  • PDF