Transaction multicasting scheme for resilient routing control in parallel cluster database systems
A disk cluster environment (DCE) refers to a distributed architecture for high performance transaction processing in which the computing nodes are locally coupled via a high-speed network and share a common database at the disk level. In the DCE, it is crucial to determine at which node the incoming transactions are processed. This is called transaction routing. The aim of disk sharing in DCE is not only to achieve high performance by distributing the workload among the processing nodes but also to obtain fault-tolerance against possible system failures, like a single node failure. Although a number of transaction routing schemes have been reported for DCE, it is true that most of them are not sufficiently resilient against system dynamics, which inevitably requires changing the routing information. In this paper, we propose a new dynamic transaction routing scheme for DCE, called multicast transaction routing scheme, MTR for short, that is able to change the transaction routing information in the presence of critical events without imposing too much overhead to the transaction processing system. In our scheme, when it is required to change the routing information dynamically, the routing algorithm sends multiple clones of a transaction to a group of candidate processing nodes and selects the processing node that first completes the multicasted transaction as a new processing node for re-routed transaction. The selected processing node is expected to be a best affinity node when the system load is evenly distributed, or a relatively unloaded processing node that is idle enough to process a transaction faster than other nodes. The novel aspect of MTR is that it automatically achieves an optimal balance between affinity-based routing and load balancing. The simulation study shows that MTR rapidly stabilizes the system and produces an optimal routing information so that it finally guarantees faster response time.
transaction multicasting transaction routing load balancing disk-cluster database parallel database systems