Design and Implementation of the Multi-level Pre-fetch and Deferred-flush in BADA-III for GIS Applications

GIS 응용을 위한 바다-III의 다단계 사전인출과 지연쓰기의 설계 및 구현

  • Park, Jun-Ho (Department of Computer Science, Kyungpook National University) ;
  • Park, Sung-Chul (Department of Computer Science, Kyungpook National University) ;
  • Shim, Kwang-Hoon (Department of Computer Science, Kyungpook National University) ;
  • Seong, Jun-Hwa (Department of Computer Science, Kyungpook National University) ;
  • Park, Young-Chul (Department of Computer Science, Kyungpook National University)
  • 박준호 (경북대학교 컴퓨터과학과) ;
  • 박성철 (경북대학교 컴퓨터과학과) ;
  • 심광훈 (경북대학교 컴퓨터과학과) ;
  • 성준화 (경북대학교 컴퓨터과학과) ;
  • 박영철 (경북대학교 컴퓨터과학과)
  • Received : 1998.12.23
  • Published : 1998.12.31

Abstract

Most GIS applications are read-intensive on a large number of spatial objects and when the spatial objects are composite objects, the contained objects within the composite objects are also accessed. In GIS applications, creation, deletion, and update operations on spatial objects occur very rarely, but once they occur they deal with a large number of spatial objects. This paper proposes the concept of the multi-level pre-fetch query to retrieve a large number of spatial objects efficiently, and the functionality of the deferred-flush on the newly created persistent objects into the database with the optimal performance, and presents the design and implementation details of those ideas into an object-oriented DBMS BADA-III while considering these characteristics of GIS applications. The multi-level pre-fetch query retrieves the objects that satisfy the query and the objects that are contained within the objects up to the level specified by users, and registers the retrieved objects on the client cache. The deferred-flush flushes a large number of composite objects that are created by the application with a minimal overhead of the server and a minimal number of communications between the client and the server. These two functionality are suitable for the applications that search or create a large number of composite objects like GIS applications.

대부분의 GIS 응용 프로그램은 다수의 공간객체에 대하여 주로 읽기 연산을 수행하며 접근하는 공간객체가 복합 객체인 경우 그 복합객체와 그 복합객체가 포함하는 공간객체에 모두 접근하게 된다. GIS 응용 프로그램에서 공간객체의 생성, 삭제, 변경연산은 매우 드물게 일어나지만 다수의 공간객체에 대하여 수행된다. 본 논문은 GIS 응용 프로그램의 이러한 특성을 고려하여 다수의 공간객체들을 신속히 탐색하기 위한 다단계 사전인출 질의의 개념을 제시하고 생성하는 영속객체들을 최적의 성능으로 데이타베이스에 반영하기 위한 지연쓰기 기능을 객체지향 데이타베이스 시스템인 바다-III에 설계하고 구현한 내용을 제시한다. 다단계 사전인출 질의는 그 질의를 만족하는 객체들뿐만 아니라 그 객체들이 포함하는 객체들을 사용자가 명시한 단계만큼 데이타베이스로부터 인출하여 클라이언트 캐쉬에 등록하는 기능이다. 지연쓰기 기능은 응용 프로그램이 생성한 객체들에 대하여 서버의 부담을 최소화하고 클라이언트와 서버간의 통신을 최소화하면서 데이타베이스에 반영하는 기법이다. 이들 두 기능은 GIS 응용과 같이 다수의 복합객체를 탐색하고 생성하는 응용에 적합하다.

Keywords

Acknowledgement

Supported by : 한국과학재단