Approximation algorithms for scheduling unrelated parallel machines
Mathematical Programming: Series A and B
An approximation algorithm for the generalized assignment problem
Mathematical Programming: Series A and B
Randomized algorithms
Handbook of combinatorics (vol. 2)
Approximation algorithms for scheduling
Approximation algorithms for NP-hard problems
Approximation algorithms for bin packing: a survey
Approximation algorithms for NP-hard problems
STOC '97 Proceedings of the twenty-ninth annual ACM symposium on Theory of computing
Hi-index | 0.00 |
Motivated by applications to web caching and other distributed server architectures, we analyze load balancing algorithms from the standpoint of spread, which measures the number of different assignments an item receives across multiple iterations of the algorithm on varying load distributions. Minimizing spread while balancing load is important in order to make efficient use of server resources such as memory and in order to minimize service latency. In the paper, we consider both on-line and off-line versions of the problem. Most importantly, we describe on-line load balancing algorithms with very low spread, which means that the assignments made for most items do not change even when the loads associated with the items do change. This means that load balancing is an example of a problem for which it is possible to find highly stable (or, consistent) on-line algorithms --- i.e. algorithms for which the output changes only slightly (with high probability) even if the inputs change dramatically.This paper is dedicated to the memory of Danny Lewin, who pioneered the notion of consistent hashing and its applications to load balancing and content distribution on the Internet. Danny's ideas furnished many of the underpinnings for the problem and algorithms studied herein.