• Title/Summary/Keyword: B-tree 구조

Search Result 175, Processing Time 0.023 seconds

An Index Data Structure for String Search in External Memory (외부 메모리에서 문자열을 효율적으로 탐색하기 위한 인덱스 자료 구조)

  • Na, Joong-Chae;Park, Kun-Soo
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.32 no.11_12
    • /
    • pp.598-607
    • /
    • 2005
  • We propose a new external-memory index data structure, the Suffix B-tree. The Suffix B-tree is a B-tree in which the key is a string like the String B-tree. While the node in the String B-tree is implemented with a Patricia trio, the node in the Suffix B-tree is implemented with an array. So the Suffix B-tree is simpler and easier to be Implemented than the String B-tree. Nevertheless, the branching algorithm of the Suffix B-tree is as efficient as that of the String B-tree. Consequently, the Suffix B-tree takes the same worst-case disk accesses as the String B-tree to solve the string matching problem, which is fundamental and important in the area of string algorithms.

Development of B-tree Analyzing Tool for macOS Filesystem (macOS 파일시스템의 B-tree분석 디지털 포렌식 도구의 개발)

  • Cho, Gyu-Sang
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2021.01a
    • /
    • pp.287-288
    • /
    • 2021
  • 본 논문에서는 macOS의 파일시스템인 HFS+의 B-tree구조를 디지털 포렌식의 관점에서 분석할 수 있는 기능을 갖춘 도구의 구현에 대하여 다룬다. HFS+ 파일시스템의 파일과 디렉토리에 대한 메타정보를 카탈로그 B-tree에서 구하여 디지털 포렌식 정보로 활용한다. HFS+파일시스템 포렌식 분석도구는 C/C++언어로 구현된다. 텍스트 기반의 명령행 프로그램으로 구현되며 macOS/Windows에서 터미널/명령프롬프트에서 각각 실행될 수 있도록 제작된다. 타임스탬프/파일크기/위치 등의 메타데이터의 파싱기능, 리프노드에 저장된 데이터를 이용한 파일/디렉토리 트리 구조의 재구성, B-tree구조에 의한 키워드 탐색 기능, 인덱스 노드 없이 B-tree 리프노드의 구성에 의한 파일/디렉토리 파싱/검색 기능 등이 구현된다.

  • PDF

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

  • Kim, Seon Hwan;Kwak, Jong Wook
    • Journal of the Korea Society of Computer and Information
    • /
    • v.20 no.6
    • /
    • pp.1-11
    • /
    • 2015
  • Recently, NAND flash memories are used for storage devices because of fast access speed and low-power. However, applications of FTL on low power computing devices lead to heavy workloads which result in a memory requirement and an implementation overhead. Consequently, studies of B+-Tree on embedded devices without the FTL have been proposed. The studies of B+-Tree are optimized for performance of inserting and updating records, considering to disadvantages of the NAND flash memory that it can not support in-place update. However, if a general garbage collection method is applied to the previous studies of B+-Tree, a performance of the B+-Tree is reduced, because it generates a rearrangement of the B+-Tree by changing of page positions on the NAND flash memory. Therefor, we propose a novel garbage collection method which can apply to the B+-Tree based on the NAND flash memory without the FTL. The proposed garbage collection method does not generate a rearrangement of the B+-Tree by using a block information table and a proxy block. We implemented the B+-Tree and ${\mu}$-Tree with the proposed garbage collection on physical devices with the NAND flash memory. In experiment results, the proposed garbage collection scheme compared to greedy algorithm garbage collection scheme increased the number of inserted keys by up to about 73% on B+-Tree and decreased elapsed time of garbage collection by up to about 39% on ${\mu}$-Tree.

CL-Tree: B+ tree for NAND Flash Memory using Cache Index List (CL 트리: 낸드 플래시 시스템에서 캐시 색인 리스트를 활용하는 B+ 트리)

  • Hwang, Sang-Ho;Kwak, Jong Wook
    • Journal of the Korea Society of Computer and Information
    • /
    • v.20 no.4
    • /
    • pp.1-10
    • /
    • 2015
  • NAND flash systems require deletion operation and do not support in-place update, so the storage systems should use Flash Translation Layer (FTL). However, there are a lot of memory consumptions using mapping table in the FTL, so recently, many studies have been proposed to resolve mapping table overhead. These studies try to solve update propagation problem in the nand flash system which does not use mapping table. In this paper, we present a novel index structure, called CL-Tree(Cache List Tree), to solve the update propagation problem. The proposed index structure reduces write operations which occur for an update propagation, and it has a good performance for search operation because it uses multi-list structure. In experimental evaluation, we show that our scheme yields about 173% and 179% improvement in insertion speed and search speed, respectively, compared to traditional B+tree and other works.

Performance of Spatial Join Operations using Multi-Attribute Access Methods (다중-속성 색인기법을 이용한 공간조인 연산의 성능)

  • 황병연
    • Spatial Information Research
    • /
    • v.7 no.2
    • /
    • pp.271-282
    • /
    • 1999
  • In this paper, we derived an efficient indexing scheme, SJ tree, which handles multi-attribute data and spatial join operations efficiently. In addition, a number of algorithms for manipulating multi-attribute data are given , together with their computational and I/O complexity . Moreover , we how that SJ tree is a kind of generalized B-tree. This means that SJ-tree can be easily implemented on existing built-in B-tree in most storage managers in the sense that the structure of SJ tree is like that of B-tree. The spatial join operation with spatial output is benchmarked using R-tree, B-tree, K-D-B tree, and SJ tree. Results from the benchmark test indicate that SJ tree out performance other indexing schemes on spatial join with point data.

  • PDF

Skeleton Tree for Shape-Based Image Retrieval (모양 기반 영상검색을 위한 골격 나무 구조)

  • Park, Jong-Seung
    • The KIPS Transactions:PartB
    • /
    • v.14B no.4
    • /
    • pp.263-272
    • /
    • 2007
  • This paper proposes a skeleton-based hierarchical shape description scheme, called a skeleton tree, for accurate shape-based image retrieval. A skeleton tree represents an object shape as a hierarchical tree where high-level nodes describe parts of coarse trunk regions and low-level nodes describe fine details of boundary regions. Each node refines the shape of its parent node. Most of the noise disturbances are limited to bottom level nodes and the boundary noise is reduced by decreasing weights on the bottom levels. The similarity of two skeleton trees is computed by considering the best match of a skeleton tree to a sub-tree of another skeleton tree. The proposed method uses a hybrid similarity measure by employing both Fourier descriptors and moment invariants in computing the similarity of two skeleton trees. Several experimental results are presented demonstrating the validity of the skeleton tree scheme for the shape description and indexing.

Efficient OFTL (Octree Flash Translation Layer) Technique for 3-D Vertical NAND Flash Memory (3차원 수직구조 NAND 플래시 메모리를 위한 효율적인 OFTL (Octree Flash Translation Layer) 기법)

  • Kim, Seung-Wan;Kim, Hun;Youn, Hee-Yong
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2014.07a
    • /
    • pp.227-229
    • /
    • 2014
  • 플래시 메모리는 빠른 처리 속도, 비휘발성, 저 전력, 강한 내구성 등으로 인해 최근 스마트폰, 태블릿, 노트북, 컴퓨터와 같은 여러 분야에서 많이 사용하고 있다. 최근 기존에 사용하던 NAND 플래시가 미세화 기술의 한계에 봉착함에 따라 기존 2차원 구조의 NAND플래시를 대처할 장치로 3차원 수직구조 NAND 플래시 메모리(3D Vertical NAND)가 주목받고 있다. 기존의 플래시 메모리는 데이터를 효율적으로 삽입/삭제/검색하기 위해 B-tree와 같은 색인기법을 필요로 한다. 플래시 메모리 상에서 B-tree 구현에 관한 기존 연구로서는 BFTL(B-Tree Flash Translation Layer)기법이 최초로 제안되었다. 현재 3차원 V-NAND 구조의 플래시 메모리가 시작품으로 제작되어 머지않아 양산 될 예정이다. 본 논문에서는 향후 출시될 3차원 구조의 플래시 메모리에 적합한 Octree 기반의 파일시스템을 제안한다.

  • PDF

Log-Structured B-Tree for NAND Flash Memory (NAND 플래시 메모리를 위한 로그 기반의 B-트리)

  • Kim, Bo-Kyeong;Joo, Young-Do;Lee, Dong-Ho
    • The KIPS Transactions:PartD
    • /
    • v.15D no.6
    • /
    • pp.755-766
    • /
    • 2008
  • 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.

Comparison of Directory Structures for SAN Based Very Large File Systems (SAN 환경 대용량 파일 시스템을 위한 디렉토리 구조 비교)

  • 김신우;이용규
    • The Journal of Society for e-Business Studies
    • /
    • v.9 no.1
    • /
    • pp.83-104
    • /
    • 2004
  • Recently, information systems that require storage and retrieval of huge amount of data are becoming used widely. Accordingly, research efforts have been made to develop Linux cluster file systems in the SAN environment in which clients themselves can manage metadata and access data directly. Also a semi-flat directory structure based on extendible hashing has been proposed to support fast retrieval of files[1]. In this research, we have designed and implemented the semi-flat extendible hash directory under the Linux system. In order to evaluate the practicality of the directory, we have also implemented the B+-tree based directory and experimented the performance. According to the performance comparisons, the extendible hash directory has the better performance at insert, delete, and search operations. On the other hand, the B+-tree directory is better at sorting files.

  • PDF

Concurrency Control and Recovery Method of B+-Tree using Bulk Loading and Extended Lazy Deletion (일괄구성과 확장된 지연삭제를 이용한 B+-Tree의 동시성 제어 및 회복)

  • 김대일;김성희;조숙경;배해영
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04b
    • /
    • pp.128-130
    • /
    • 2000
  • B+-Tree는 데이트베이스 관리 시스템에서 대용량의 데이터를 관리하기 위해 가장 널리 사용되는 인덱스이다. 그런 기존의 B+-Tree는 데이터베이스의 초기 구성 및 재구성시 많은 비용이 들고, 또한 삭제 연산의 빈번한 발생시 색인 구조 변경연산의 발생빈도가 높아져 동시성이 떨어진다는 단점이 있다. 이러한 문제점을 해결하기 위해서 기존 대부분의 데이터베이스 관리시스템에서는 일괄구성과 지연삭제를 이용하고 있으나, 동시성 및 회복에 대한 처리가 미흡하여 실제 시스템에 적용하기에는 문제가 있다. 따라서 본 논문에서는 일괄구성과 지연삭제 방법을 적용한 B+-Tree에서의 동시성 및 회복기법을 제안한다. 제안된 기법은 일괄구성 시에 잠금의 부하와 연속적인 철회(Cascade Rollback)가 없고, 또한 지연 삭제기법을 확장함으로써 빈 페이지 리스트 관리에 대한 부하가 없으며, 삭제 연산에 대한 회복 시 논리적 복귀(Logical Undo)가 빨라지고 구현이 간단해진다는 장점이 있다.

  • PDF