TY - JOUR
T1 - Efficient processing of client transactions in real-time
AU - Kanitkar, Vinay
AU - Delis, Alex
N1 - Funding Information:
∗This work was supported in part by the National Science Foundation under Grant NSF IIS-9733642 and the Center for Advanced Technology in Telecommunications, Brooklyn, NY.
PY - 2005/1
Y1 - 2005/1
N2 - In traditional client-server databases, a transaction and its requisite data have to be colocated at a single site for the operation to proceed. This has usually been achieved by moving either the data or the transaction. However, the availability of high-bandwidth networking options has led users of today's systems to expect real-time guarantees about the completion time of their tasks. In order to offer such guarantees in a client-server database system, a transaction should be processed by any means that allows it to meet its deadline. To this end, we explore the option of moving both transactions and data to the most promising sites for successful completion. We propose a load-sharing framework that oversees the shipment of data and transactions so as to increase the efficiency of a cluster consisting of a server and a number of clients. Here, efficiency is defined as the percentage of transactions successfully completed within their deadlines by the cluster. The suitability of a client for processing a transaction is measured with respect to the availability of the transaction's required data in its local cache. In addition to the load-sharing algorithm, we use the concept of grouped locks, along with transaction deadline information, in order to schedule the movement of data objects in the cluster in a more efficient manner. We evaluate the real-time processing performance of the client-server architecture using detailed experimental testbeds. Our evaluation indicates that it is possible, in many situations, to achieve better performance than a centralized system.
AB - In traditional client-server databases, a transaction and its requisite data have to be colocated at a single site for the operation to proceed. This has usually been achieved by moving either the data or the transaction. However, the availability of high-bandwidth networking options has led users of today's systems to expect real-time guarantees about the completion time of their tasks. In order to offer such guarantees in a client-server database system, a transaction should be processed by any means that allows it to meet its deadline. To this end, we explore the option of moving both transactions and data to the most promising sites for successful completion. We propose a load-sharing framework that oversees the shipment of data and transactions so as to increase the efficiency of a cluster consisting of a server and a number of clients. Here, efficiency is defined as the percentage of transactions successfully completed within their deadlines by the cluster. The suitability of a client for processing a transaction is measured with respect to the availability of the transaction's required data in its local cache. In addition to the load-sharing algorithm, we use the concept of grouped locks, along with transaction deadline information, in order to schedule the movement of data objects in the cluster in a more efficient manner. We evaluate the real-time processing performance of the client-server architecture using detailed experimental testbeds. Our evaluation indicates that it is possible, in many situations, to achieve better performance than a centralized system.
KW - Client-server databases
KW - Real-time transaction scheduling
KW - Transaction-shipping
UR - http://www.scopus.com/inward/record.url?scp=7544248553&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=7544248553&partnerID=8YFLogxK
U2 - 10.1023/B:DAPD.0000045367.53244.c1
DO - 10.1023/B:DAPD.0000045367.53244.c1
M3 - Article
AN - SCOPUS:7544248553
SN - 0926-8782
VL - 17
SP - 39
EP - 74
JO - Distributed and Parallel Databases
JF - Distributed and Parallel Databases
IS - 1
ER -