Abstract
Recently, a GIS has been applicable to the most important computer applications such as urban information systems and transportation information systems. These applications require spatial operations for an efficient management of a large volume of data. In particular, a spatial join among basic operations has the property that its response time is increased exponentially according to the number of spatial objects included in the operation. Therefore, it is not proper to the systems demanding the fast response time. To satisfy these requirements, the efficient parallel processing of spatial joins has been required. In this paper, the efficient method for creating and allocating tasks to balance statically the load of each processor in a parallel spatial join is presented. A task graph is developed in which a vertex weight is calculated by the cost model I have proposed. Then, it is partitioned through a graph partitioning algorithm. According to the experiments in CC16 parallel machine, our method made an improvement in the static load balance by decreasing the variance of a task execution time on each processor.
현재의 지리 정보 시스템(GIS : Geographical Information System)은 컴퓨터 응용 시스템의 중요한 분야로서 도시 정보 시스템, 교통 정보 시스템 등에 활용되고 있다. 이들 응용 분야 는 대용량의 공간 데이터를 다루기 때문에 효율적인 공간 연산 수행을 위한 기본 연산자를 필요로 한다. 특히, 기본 연산자 중에서 공간 조인은 연산에 참여하는 객체의 수가 증가함에 따라 수행 시간이 지수적으로 증가하는 특성을 가지고 있으므로 빠른 응답 시간을 요구하는 시스템에는 부적합하다. 따라서 이러한 요구 사항을 만족시키기 위해서는 공간 조인의 효율 적인 병렬 수행이 필요하다. 본 논문에서는 공간 조인의 효율적인 병렬수행을 위하여 정적 부하 균등화를 위한 작업 생성 및 할당 방법을 제시한다. 이 방법은 공간 지역성을 고려하 여 작업을 생성하고, 비용 모댈을 통하여 작업량을 예측하여 표현한 뒤 작업 그래프로 나타 낸다. 그리고 생성된 작업 그래프를 그래프 분할 알고리즘을 통하여 균등하게 할당한다. 본 논문에서 제시된 방법은 독일 Parsytec 사의 CC16 병렬머쉰에서 실험한 결과로 볼 때, 기 존의 정적 할당을 통한 작업 생성 및 할당 방법에 비하여 각 프로세서간의 작업 수행시간의 편차를 줄임으로써 부하 균등화의 효과를 가져온다.