데이타베이스 관리 시스템에서 대화식 UNDO를 지원하는 회복 기법

A Recovery Method Supporting User-Interactive Undo in Database Management Systems

  • 김원영 (한국과학기술원 전산학과) ;
  • 황규영 (한국과학기술원 전산학과) ;
  • 김상 (강원대학교 정보통시공학과) ;
  • 김장 (한국통신 연구개발본부 연구원)
  • 발행 : 1999.01.01

초록

대화식 UNDO는 수행된 연산을 철회시키거나 재실행시킴으로서 사용자의 오류를 쉽게 교정할 수 있도록 허용하기 위한 일종의 회복기능이다. 소프트웨어 개발, 하이퍼미디어 CAD 등과 같은 새로운 데이터베이스응용 분야에서는 편리한 저작 및 편집 과정으르 위하여 대화식 UNDO 기능의 지원이 필수적이다. 상용 DBMS들이 제공하는 세이브포인트를 이용한 부분 철회는 수행된 연산의 철회만을 허용하는 것으로 대화식 UNDO의 제한적 기능이다. 기존의 응용 시스템들은 데이터 관리를 위해서는 DBMS를 사용하면서도 이러한 대화식 UNDO 기능은 응용시스템에서 직접 제공하고 있다. 대화식 UNDO 기능의 구현은 매우 복잡하기 때문에 응용 프로그래머에게 상당한 개발 오버헤드를 요구한다. 본 연구의 목적은다양한 응용 시스템개발을 위하여 공통적으로 필요한 고급 기능을 응용 프로그래머가 쉽게 이용할 수 있도록 대화식 UNDO 기능을 DBMS에서 직접 지원하는 새로운 회복 기법을 제안하는 것이다. 제안된 기법에서는 트랜잭션 철회시 대화식 UNDO에 의해 UNDO된 연산들을 스킵함으로써 빠른 철회를 보장하고 여러 연산을 한번에 철회할 수 있는 벌크 UNDO 연산 (bulk undo)을 제공한다. 벌크들도 다시 재실행될수 있다는 점에서 부분 철회와 구별된다. 특히,일반 DBMS에서 회복을 위하여 관리해야 하는 정보를 최대한 활용함으로써 새로운 기능의 추가에도 불구하고 제안된 기법의 성능은 이러한 기능을 제공하지 않는 기존의 회복 기법과 비교할만한 좋은 성능을 보인다.

키워드