A Framework for workload allocation in distributed transaction processing systems

  • Erhard Rahm
  • Published 1992 in Journal of Systems and Software

Abstract

Ever-increasing demands for high transaction rates, limitations of high-end processors, high availability, and modular growth considerations are all driving forces toward distributed architectures for transaction processing. However, a prerequisite to taking advantage of the capacity of a distributed transaction processing system is an effective strategy for workload allocation. The distribution of the workload should not only achieve load balancing, but also support an efficient transaction processing with a minimum of intersystem communication. To this end, adaptive schemes for transaction routing have to be employed that are highly responsive to workload fluctuations and configuration changes. Adaptive allocation schemes are also important for simplifying system administration, which is a major problem in distributed transaction processing systems. In this article we develop a taxonomic framework for workload allocation, in particular, transaction routing, in distributed transaction processing systems. This framework considers the influence of the underlying system architecture (e.g., shared nothing, shared disk) and transaction execution model as well as the major dependencies between workload, program, and data allocation. The main part of the framework covers structural (or architectural) and implementational alternatives for transaction routing to help identify key factors and basic tradeoffs in the design of appropriate allocation schemes. Finally, we show how existing schemes fit our taxonomy. The framework substantially facilitates a comparison of the different schemes and can guide the development of new, more effective protocols.

DOI: 10.1016/0164-1212(92)90126-5

Extracted Key Phrases

5 Figures and Tables

Cite this paper

@article{Rahm1992AFF, title={A Framework for workload allocation in distributed transaction processing systems}, author={Erhard Rahm}, journal={Journal of Systems and Software}, year={1992}, volume={18}, pages={171-190} }