Recent years have witnessed an increasing trend in the implementation of distributed database management systems (DDBMSs) for more effective access to information. An important quality of these systems, consisting of n servers loosely connected via a communication network, is to adjust to changes in workloads. To service increases in demand, for example, additional servers may be added to the existing distributed system and new data allocations computed. Conventionally, this requires a system shutdown and an exhaustive data reallocation. Such static methods are not practical for most organizations for these methods result in high costs and in periods of data unavailability.