In a conventional client-server database system (CS-DBS), a transaction and its requisite data have to be colocated at a single site for the operation to proceed. This has traditionally been achieved by moving either the data or the transaction. Today, the availability of powerful workstations and high-bandwidth networking options has led users to expect real-time guarantees about the completion times of their tasks. So as to offer such guarantees in a CS-DBS, a transaction should be processed by any means that allows it to meet its deadline. In this paper we explore the option of moving both transactions and data to the most promising sites for successful completion. We propose a load-sharing mechanism that oversees the shipment of data and transactions in order to increase the efficiency of a client-server cluster. Additionally, we make use of the concept of grouped locks to schedule the movement of data objects in the cluster in a more efficient manner. An experimental evaluation shows that the use of our load-sharing algorithm provides a considerable improvement in the real-time processing efficiency of a CS-DBS even in the presence of very high volumes of update transactions.
['Vinay Kanitkar', 'Alex Delis']
Site selection for real-time client request handling