English

Algorithms for Replica Placement in High-Availability Storage

Data Structures and Algorithms 2017-01-09 v4 Distributed, Parallel, and Cluster Computing

Abstract

A new model of causal failure is presented and used to solve a novel replica placement problem in data centers. The model describes dependencies among system components as a directed graph. A replica placement is defined as a subset of vertices in such a graph. A criterion for optimizing replica placements is formalized and explained. In this work, the optimization goal is to avoid choosing placements in which a single failure event is likely to wipe out multiple replicas. Using this criterion, a fast algorithm is given for the scenario in which the dependency model is a tree. The main contribution of the paper is an O(n+ρlogρ)O(n + \rho \log \rho) dynamic programming algorithm for placing ρ\rho replicas on a tree with nn vertices. This algorithm exhibits the interesting property that only two subproblems need to be recursively considered at each stage. An O(n2ρ)O(n^2 \rho) greedy algorithm is also briefly reported.

Keywords

Cite

@article{arxiv.1503.02654,
  title  = {Algorithms for Replica Placement in High-Availability Storage},
  author = {K. Alex Mills and R. Chandrasekaran and Neeraj Mittal},
  journal= {arXiv preprint arXiv:1503.02654},
  year   = {2017}
}

Comments

22 pages, 7 figures, 4 algorithm listings

R2 v1 2026-06-22T08:48:01.938Z