1 research outputs found

    Storage Codes with Flexible Number of Nodes

    Full text link
    This paper presents flexible storage codes, a class of error-correcting codes that can recover information from a flexible number of storage nodes. As a result, one can make a better use of the available storage nodes in the presence of unpredictable node failures and reduce the data access latency. Let us assume a storage system encodes kβ„“k\ell information symbols over a finite field F\mathbb{F} into nn nodes, each of size β„“\ell symbols. The code is parameterized by a set of tuples {(Rj,kj,β„“j):1≀j≀a}\{(R_j,k_j,\ell_j): 1 \le j \le a\}, satisfying k1β„“1=k2β„“2=...=kaβ„“ak_1\ell_1=k_2\ell_2=...=k_a\ell_a and k1>k2>...>ka=k,β„“a=β„“k_1>k_2>...>k_a = k, \ell_a=\ell, such that the information symbols can be reconstructed from any RjR_j nodes, each node accessing β„“j\ell_j symbols. In other words, the code allows a flexible number of nodes for decoding to accommodate the variance in the data access time of the nodes. Code constructions are presented for different storage scenarios, including LRC (locally recoverable) codes, PMDS (partial MDS) codes, and MSR (minimum storage regenerating) codes. We analyze the latency of accessing information and perform simulations on Amazon clusters to show the efficiency of presented codes
    corecore