Abstract
In Distributed Batch-processing Systems (DBSs), CPU-intensive jobs are automatically transferred and executed using idle computers across a network, there by increasing the resource usage and throughput. To be successful, the systems must guarantee the scalablility, fault-tolerance, and flexibility of dynamic configurations. In practice, however, it is very difficult to provide such capabilities in a non-deterministic environment in which the available set of resources is unpredictable because of network failures, computer failures, or voluntary withdrawal from a pool by a machine owner. In this paper, we present the design and implementation of the J-JDBS (Jini-based Java Distributed Batch-processing System) system which is based on the core Jini services like Discovery service, Lookup service, Lease service and etc. We show that the Jini core services can be very effectively used to build reliable, scalallle, fault-tolerant, and flexible DBS systems with little effort.
분산 일괄처리 시스템은 네트워크 상에 있는 유휴상태의 컴퓨터를 활용하여 각 컴퓨터에 의하여 제출된 CPU-intensive한 작업을 수행시킴으로써 컴퓨터 자원의 활용도 및 작업의 생산성을 높일 수 있도록 하는 시스템이다. 이러한 시스템이 효과적으로 운용되기 위해서는 규모확장성, 결함 허용성, 그리고 머신 풀(pool) 구성의 유연성 등이 보장되는 것이 바람직하다. 그러나, 네트워크의 결함이나 컴퓨터의 다운 또는 컴퓨터 소유자의 자율적 의지에 의한 풀에서의 탈퇴 등으로 인하여 사용 가능한 컴퓨터가 비결정적(non-deterministic)일 수밖에 없는 동적 환경 하에서 그와 같은 특성을 보장하기는 매우 어렵다. 본 논문에서는 Jini의 core 서비스를 이용한 분산 일괄처리 시스템인 J-JDBS (Jini-based Java Distributed Batch-processing System) 시스템의 설계 및 구현을 제시함으로써, Discovery 서비스, Lookup 서비스, Lease 서비스 등의 Jini 코아 서비스가 규모확장성, 결함 허용성, 풀 구성의 유연성을 보장하는 신뢰성 있는 분산 일괄처리 시스템을 쉽고 빠르게 구축하는 데 매우 유용하게 적용될 수 있음을 보인다.