Trimsient Versioning Algorithm Using Before-Image for Concurrency Control of Transaction

트랜잭션의 동시성제어를 위해 갱신전 이미지를 이용한 일시적 버전 제어 기법

  • 김호석 (인하대학교 전자계산공학과) ;
  • 김명근 (인하대학교 전자계산공학과) ;
  • 조숙경 (인하대학교 전자계산공학과) ;
  • 배해영 (인하대학교 전자계산공학과)
  • Published : 2002.04.01

Abstract

데이터베이스시스템에서 트랜젝션의 동시성제어에 관련된 문제를 해결하고 성능을 향상시키기 위해서 않은 기법들이 소개되어졌다. 그 중에서 멀티버전(Multi-Version) 알고리즘은 각 트랜잭션간의 상호간섭을 최소화시키면서 동시성을 향상시키기 위한 알고리즘 중 하나이다 하지만 멀티버전 알고리즘은 데이터베이스이 레코드에 대한 버전을 저장하기 위한 저장공간의 낭비와 버전에 대만 최신의 정보론 유지하기 위한 Garbage Collection 연산의 부하가 따른다. 본 논문에서는 트랜잭션간의 동시성을 망상시키기 위한 방법으로 시스템의 메모리 광간에 일시적인 레코드의 버전을 생성하여 버전 풀(Version Pool)을 관리하여 레코드의 안정된 버전(Stable version)을 관리할 수 있는 기법을 제안한다. 판독트랜잭션은 안정된 버전을 찾기 위해 별도의 연산에 대한 부하없이 버전 플에서 가장 먼저 생성된 버전을 읽어오기만 하면 된다. 또한 갱신 트랜잭션은 로크(Lock)을 사용하지 않고 레코드의 갱신을 데이터베이스에 곧바로 반영하며, 판독 트랜잭션도 판독연산에 로크를 사용하지 않고 버전 풀에서 관리하는 레코드의 안정된 버전을 선택하여 읽어 가는 기법을 제안한다.

Keywords