  The explosion of the amount of data stored in cloud systems calls for more
efficient paradigms for redundancy. While replication is widely used to ensure
data availability, erasure correcting codes provide a much better trade-off
between storage and availability. Regenerating codes are good candidates for
they also offer low repair costs in term of network bandwidth. While they have
been proven optimal, they are difficult to understand and parameterize. In this
paper we provide an analysis of regenerating codes for practitioners to grasp
the various trade-offs. More specifically we make two contributions: (i) we
study the impact of the parameters by conducting an analysis at the level of
the system, rather than at the level of a single device; (ii) we compare the
computational costs of various implementations of codes and highlight the most
efficient ones. Our goal is to provide system designers with concrete
information to help them choose the best parameters and design for regenerating
codes.
