• Title/Summary/Keyword: 인덱스자료구조

Search Result 36, Processing Time 0.021 seconds

Design and Implementation of a High-Performance Index Manager in a Main Memory DBMS (주기억장치 DBMS를 위한 고성능 인덱스 관리자의 설계 및 구현)

  • Kim, Sang-Wook;Lee, Kyung-Tae;Choi, Wan
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.28 no.7B
    • /
    • pp.605-619
    • /
    • 2003
  • The main memory DBMS(MMDBMS) efficiently supports various database applications that require high performance since it employs main memory rather than disk as a primary storage. In this paper, we discuss the index manager of the Tachyon, a next-generation MMDBMS. Recently, the gap between the CPU processing and main memory access times is becoming much wider due to rapid advance of CPU technology. By devising data structures and algorithms that utilize the behavior of the cache in CPU, we are able to enhance the overall performance of MMDBMSs considerably. In this paper, we address the practical implementation issues and our solutions for them obtained in developing the cache-conscious index manager of the Tachyon. The main issues touched are (1) consideration of the cache behavior, (2) compact representation of the index entry and the index node, (3) support of variable-length keys, (4) support of multiple-attribute keys, (5) support of duplicated keys, (6) definition of the system catalog for indexes, (7) definition of external APIs, (8) concurrency control, and (9) backup and recovery. We also show the effectiveness of our approach through extensive experiments.

시뮬레이션 도구 SMPLE의 개발 및 활용

  • 조성만
    • Proceedings of the Korea Society for Simulation Conference
    • /
    • 1992.10a
    • /
    • pp.3-3
    • /
    • 1992
  • 컴퓨터 시스템의 개발 및 분석에 많이 활용되는 시뮬레이션 모델을 구축하는데 있어서 SIMSCRIT, GISS, SIMAN, SLA II등과 같은 시뮬레이션 전용언어가 많이 사용되지만, 이들은 새로운 전용언어의 습득, 시스템 프로그램과의 접속, 시뮬레이션 수행 속도면에서 부담을 주어왔다. 본 연구에서는 기존의 C언어 사용자들이 손쉽게 시뮬레이션 모델을 구축할 수 있도록 기존의 smpl을 확장하여 SMPLE(smpl extended)를 개발하였다. SMPLE의 모체의 smpl은 컴퓨터 시스템의 시뮬레이션 모델을 구현하기 위해 MIT에서 C언어를 이용하여 고안되었으며, C언어의 기능적인 확장으로서 라이브러리 함수들의 집합 형태를 갖는 시뮬레이션 서브 시스템이다. 이러한 라이브러리 함수들의 집합인 smpl 시뮬레이션 서브 시스템은 C언어 자체와 더불어 사건중심(event-oriented) 시뮬레이션 언어를 구성하며, smpl 시뮬레이터는 C 언어 프로그램으로 구현되다. smpl은 시뮬레이션하기 위한 설비(facility)들을 정의, 예약, 해제하거나 상태를 알아보는 함수를 제공하며, 시간의 관점에서 보면 토큰의 흐름은 일련의 대기시간과 활동시간에 의하여 나타낼 수 있게 된다. smpl은 사건의 스케쥴링(scheduling), 확률변수의 생성, 통계자료 수집 등에 관한 함수의 제공과, 시뮬레이션 시간의 전진과 사건발생의 순서를 조절해주는 기능을 제공한다. smpl 시뮬레이션 프로그램은 초기화루틴, 제어루틴 및 결과출력루틴으로 구성된다. 기존의 smpl에서 사용되는 프로그램의 자료구조(data structure)는 배열과 인덱스 구조가 사용되었다. 이러한 구조는 이미 완성되어 있는 프로그램 내에서는 효율성 면에서 좋겠지만, 변경이나 확장하기 위해 이 프로그램을 분석한다거나 필요한 기능을 추가하기 위해서는 매우 많은 어려움이 따르게 된다. 본 논문에서는 배열을 기반으로 하고 있는 smpl의 자료구조를 C의 structure와 pointer를 기반으로 하게끔 변경시키고 이에 따르는 제반 변경 사항을 수정 보완하여 프로그램의 분석을 용이하게 하며 기능의 변경 및 추가가 수월하게 하였고 메모리를 동적으로 관리할 수 있게 하였다. 또한 기존의 smpl에 디버깅용 함수 및 설비(facility) 제어용 함수를 추가하여 시뮬레이션 프로그램 작성을 용이하게 하였다. 예를 들면 who_server(), who_queue(), pop_Q(), push_Q(), pop_server(), push_server(), we(), wf(), printfct() 같은 함수들이다. 또한 동시에 발생되는 사건들의 순서를 조종하기 위해, 동시에 발생할 수 있는 각각의 사건에 우선순위를 두어 이 우선 순위에 의하여 사건 리스트(event list)에서 자동적으로 사건들의 순서가 결정되도록 확장하였으며, 설비 제어방식에 있어서도 FIFO, LIFO, 우선 순위 방식등을 선택할 수 있도록 확장하였다. SIMPLE는 자료구조 및 프로그램이 공개되어 있으므로 프로그래머가 원하는 기능을 쉽게 추가할 수 있는 장점도 있다. 아울러 SMPLE에서 새로이 추가된 자료구조와 함수 및 설비제어 방식등을 활용하여 실제 중형급 시스템에 대한 시뮬레이션 구현과 시스템 분석의 예를 보인다.

  • PDF

Mutual Fund Performance and Fund Flows: Medium-Term Relations in Korean Market (한국시장에서의 뮤추얼펀드의 성과와 현금흐름 간의 중기적 관계)

  • Kwon, Kyoung-Min;Kim, Noolee
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.16 no.10
    • /
    • pp.6534-6542
    • /
    • 2015
  • This study examines the relation between mutual fund performance and fund flows in Korean market using weekly and monthly data. The results are as follows. First, the relation between the two variables varies across fund types. Even the relations in equity fund and index fund are different from each other. Second, the structural change in the mutual fund market affect significantly the relation between the two variables. Third, return chasing flow is observed constantly in bond fund and it is observed only after the structural change for equity fund and MMF. However, no return chasing flow is observed for index fund. Fourth, mutual fund flows affect subsequent fund returns only in MMF after the structural change.

An Indexing Scheme for Efficient Retrieval and Update of Structured Documents Based on GDIT (GDIT를 기반으로 한 구조적 문서의 효율적 검색과 갱신을 위한 인덱스 설계)

  • Kim, Young-Ja;Bae, Jong-Min
    • The Transactions of the Korea Information Processing Society
    • /
    • v.7 no.2
    • /
    • pp.411-425
    • /
    • 2000
  • Information retrieval systems for structured documents which are written in SGML or XML support partial retrieval of document. In order to efficiently process queries based on document structures, low memory overhead for indexing, quick response time for queries, supports to powerful types of user queries, and minimal updates of index structure for document updates are required. This paper suggests the Global Document Instance Tree(GDIT) and proposes an effective indexing scheme and query processing algorithms based on the GDIT. The indexing scheme keeps up indexing and retrieval effciency and also guarantees minimal updates of the index structure when document structures are updated.

  • PDF

Implementation and analysis of a parallel suffix tree construction algorithm using TBB and Cilk Plus (TBB, Cilk Plus를 이용한 병렬 접미사 트리 생성 알고리즘 구현 및 성능 분석)

  • Seo, Jun-Ho;Na, Joong-Chae
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06a
    • /
    • pp.403-405
    • /
    • 2012
  • 접미사 트리는 문자열 압축, 텍스트 처리, 생물정보학 등 다양한 응용 분야에서 사용되는 인덱스 자료구조이다. 최근 64bit 하드웨어와 멀티코어 CPU가 보급됨에 따라 메모리상에서 병렬로 접미사 트리를 생성하는 알고리즘이 활발히 연구되고 있다. 본 논문에서는 McCreight의 선형시간 알고리즘과 Chen의 병렬 알고리즘을 기반으로 메모리상에서 접미사 트리를 병렬로 생성하는 구현 방법을 보였으며, TBB, Cilk Plus와 같은 병렬 프로그래밍 라이브러리를 이용하여 병렬 알고리즘을 구현하였다. 알고리즘 실험 결과 병렬로 수행한 알고리즘이 직렬로 수행한 결과보다 최대 4배 가량 성능 향상을 얻을 수 있었으며, 병렬 라이브러리를 사용함으로써 가지는 오버헤드는 극히 적은 것으로 나타났다.

Data Modeling Methods for Performance Enhancement (성능 향상을 위한 데이터 모델링 방법)

  • 김수연;이상호;서의호
    • Journal of Intelligence and Information Systems
    • /
    • v.4 no.2
    • /
    • pp.85-102
    • /
    • 1998
  • 현재의 시스템 개발 프로젝트에서 대부분의 기업은 관계형 데이터베이스를 목표 환경으로 채택하고 있지만 설계자들은 기존의 파일 시스템이나 계층형 데이터베이스의 설계 방식을 관계형 데이터베이스 설계 시에도 그대로 적용하려는 경향이 있다. 또한 모델링 시 시스템 특성과는 무관한 업무 중심의 엔티티 관계도를 작성함으로써 구현 시에 모델을 상당 부분 변경하거나 추가해야 하는 오버헤드가 발생하기도 한다. 관계형 데이터베이스의 경우 구조를 어떻게 설계하느냐에 따라 효율의 차이가 크게 나타나므로 성능 향상을 위한 데이터 모델링 기법이 중요한 이슈로 등장하게 되었다. 본 논문에서는 관계형 데이터베이스 성능과 관련하여 이미 연구되고 실험된 내용을 여러 문헌과 자료를 참고하여 조사하였다. 성능 항상을 위한 모델링 기법들을 테이블, 릴레이션쉽, 인덱스 등의 객체별로 분류하여 정리하였고, 조사된 내용 중에서 몇 가지를 선택하여 Oracle DBMS 환경에서 실제로 실험을 실시하였다. 대용량 테이블에 대한 질의를 수행하여 소요되는 시간을 측정하고 그 결과를 분석하였다. 실험을 통해 검증된 결과를 토대로 제안되는 모델링 방법을 제시한다.

  • PDF

Prediction of transcription factor binding sites by extracting common sequences (공통서열 추출을 통한 전사인자 결합부위 예측)

  • 임명은;심정섭;정명근;박선희
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10b
    • /
    • pp.820-822
    • /
    • 2003
  • 접미사 배열이나 접미사 트리는 대용량의 서열데이터를 효율적으로 검색, 저장할 수 있는 인덱스 자료구조로서 바이오인포매틱스와 같이 대용량 데이터의 처리. 분석이 필요한 분야에 이용될 수 있다. 최근 들어 접미사 배열에 대한 연구가 활발히 진행되어 접미사 배열의 효율적인 저장, 선형시간 생성 및 선형시간 탐색 알고리즘들이 개발되었다. 본 논문에서는 같은 전사인자가 결합할 것으로 예상되는 여러 개의 전사조절부위에 대한 DNA 서열들이 입력으로 주어졌을 때 전사인자가 결합하는 부위를 예측하는 방법을 제시한다. 이를 위해 최근에 제시된 선형시간 접미사 배열 생성 알고리즘을 이용하고 TRANSFAC과 EMBL 등의 DB를 이용하여 실험을 통해 본 논문에서 제시하는 방법의 정확도를 평가한다.

  • PDF

Real-time Stream Data Monitoring Using Windows (윈도우를 이용한 스트림 데이터의 실시간 모니터링 기법)

  • Han, Xiaoyue;Choi, Ok-Ju;Lee, Min-Soo
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2011.04a
    • /
    • pp.1231-1233
    • /
    • 2011
  • WBAN(Wireless Body Area Network)과 같은 스트림 데이터의 환경에서는 데이터가 아닌 질의들이 등록되어 있고 데이터들이 끊임없이 시스템에 도착한다. 때문에 도착한 데이터에 대해서 처리할 수 있는 질의만을 찾아 해당 질의들만을 수행하도록 해서 시스템의 질의 부담을 덜어주는 방법이 필요하다. 기존의 단순하고 단편적인 질의의 문제점을 해결하고자 본 연구에서는 Interval Skip List 자료 구조와 시간기반 윈도우를 이용하여 효율적인 실시간 모니터링 시스템을 구현하였다. 특히 산소포화도 생체 센서들로부터 연속적으로 전송되는 스트림 데이터에 대해 다양한 조건을 포함하는 질의들이 실행 되는데 이러한 실시간 모니터링 질의들을 효율적으로 식별하기 위한 질의 인덱스를 설계하였다.

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

  • Choi, Hae-Gi;Park, Dong-Joo;Kang, Won-Seok;Lee, Dong-Ha
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2006.11a
    • /
    • pp.333-336
    • /
    • 2006
  • 플래시 메모리는 휴대폰과 PDA 와 같은 이동 기기에서 저장 장치로 널리 사용되고 있다. 또한 기가바이트(GB) 단위의 대용량화로 인해 노트북과 개인용 컴퓨터에서 보조기억장치로 사용되고 있다. 요즘에는 대용량의 데이터를 효율적으로 다루기 위한 B+트리와 같은 자료구조를 플래시 메모리상에서 저비용의로 구현하려는 연구들이 이루어지고 있다. 지금까지의 연구에서는 플래시 메모리에서 B+트리를 구축할 때 노드 크기를 플래시 메모리의 섹터(sector) 크기로 사용해왔다. 본 논문에서는 노드 크기가 플래시 메모리의 섹터 크기보다 더 커졌을 경우, 플래시 메모리에서 구현되는 B+트리의 구축성능과 검색성능 그리고 저장 공간 사용량을 비교 분석한다. 키 삽입 시 정렬 알고리즘과 비정렬 알고리즘을 각각 사용해 구축비용을 측정하였으며 효율적인 노드 검색을 위해 인덱스 노드 헤드 구조를 사용한다. 그리고 이러한 실험결과는 B+트리 노드 크기를 섹터 크기보다 블록 크기로 할당할 때 B+트리 성능의 우수성을 보인다.

  • PDF

Design of ALTIBASE(TM) Storage Manager for High Performance and High Availability (고성능 고가용성을 위한 ALTIBASE(TM) 자료저장 관리기의 설계)

  • Jeong, Gwang-Cheol;Lee, Gyu-Ung;Bae, Hae-Yeong
    • The KIPS Transactions:PartD
    • /
    • v.10D no.6
    • /
    • pp.949-960
    • /
    • 2003
  • Main memory database systems use the different implementation techniques to sturucture and organize the user dta and system catalogs, since traditional database systems are optimized for the characteristics of disk storage environment. We present, in this paper, the design considerations for our main memory database system $ALTIBASE^{TM}$ that is currently applied to the time-critical applications. We focus on the design issues of storage manager in $ALTIBASE^{TM}$. The major components are introduced, and features and characteristics of transaction management and recovery method are described. We also present the database replication mechanism and its conflict resolution mechanism for high availability and performance. In order to evaluate our transaction performance, we show various experimental reports as measured by the TPS.