Optimizing server placement in distributed systems in the presence of competition

  • Authors:
  • Jan-Jan Wu;Shu-Fan Shih;Pangfeng Liu;Yi-Min Chung

  • Affiliations:
  • Institute of Information Science, Academia Sinica, Taipei, Taiwan, ROC and Research Center for Information Technology Innovation, Academia Sinica, Taipei, Taiwan, ROC;Institute of Information Science, Academia Sinica, Taipei, Taiwan, ROC and Department of Computer Science and Information Engineering, National Taiwan University, Taipei, Taiwan, ROC;Department of Computer Science and Information Engineering, National Taiwan University, Taipei, Taiwan, ROC;Department of Computer Science and Information Engineering, National Taiwan University, Taipei, Taiwan, ROC

  • Venue:
  • Journal of Parallel and Distributed Computing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Although the problem of data server placement in parallel and distributed systems has been studied extensively, most of the existing work assumes there is no competition between servers. Hence, their goal is to minimize read, update and storage cost. In this paper, we study the server placement problem in which a new server has to compete with existing servers for user requests. Therefore, in addition to minimizing cost, we also need to maximize the benefit of building a new server. Our major results include three parts. First, for tree-structured systems, we propose an O(|V|^3k) time dynamic programming algorithm to find the optimal placement of k extra servers that maximizes the benefit in a tree with |V| nodes. We also propose an O(|V|^3) time dynamic programming algorithm to find the optimal placement of extra servers that maximizes the benefit, without any constraint on the number of extra servers. Second, for general connected graphs, we prove that the server placement problems are NP-complete, and present three greedy heuristic algorithms, called Greedy Add, Greedy Remove and Greedy Add-Remove, to solve them. Third, we show that if the number of requests a server can handle (i.e., server capacity) is bounded, the server placement problem is NP-complete even for tree networks. We then derive a variation of the same set of greedy heuristic algorithms, with consideration of server capacity constraint, to solve the problem. Our experiment results demonstrate that the greedy algorithms achieve good results, when compared with the upper bounds found by a linear programming algorithm. Greedy Add performs best in the unconstrained model, yielding a benefit within 12% difference from the theoretical upper bound in average. For the constrained model, Greedy Remove performs best for smaller network sizes, while Greedy Add-Remove performs best for larger network sizes. On average, the heuristic algorithms yield a benefit within 13% difference from the theoretical upper bound in the constrained model.