Piggybacking codes are a special class of MDS array codes that can achieve small repair bandwidth with small sub-packetization by first creating some instances of an $(n,k)$ MDS code, such as a Reed-Solomon (RS) code, and then designing the piggyback function. In this paper, we propose a new piggybacking coding design which designs the piggyback function over some instances of both $(n,k)$ MDS code and $(n,k')$ MDS code, when $k\geq k'$. We show that our new piggybacking design can significantly reduce the repair bandwidth for single-node failures. When $k=k'$, we design piggybacking code that is MDS code and we show that the designed code has lower repair bandwidth for single-node failures than all existing piggybacking codes when the number of parity node $r=n-k\geq8$ and the sub-packetization $\alpha<r$. Moreover, we propose another piggybacking codes by designing $n$ piggyback functions of some instances of $(n,k)$ MDS code and adding the $n$ piggyback functions into the $n$ newly created empty entries with no data symbols. We show that our code can significantly reduce repair bandwidth for single-node failures at a cost of slightly more storage overhead. In addition, we show that our code can recover any $r+1$ node failures for some parameters. We also show that our code has lower repair bandwidth than locally repairable codes (LRCs) under the same fault-tolerance and redundancy for some parameters.
翻译:背负代码是一个特殊类别的 MDS 阵列代码, 可以在小小分包化的参数下实现小型修理带宽。 我们显示, 我们的新背负设计可以大幅降低单节故障的修理机带宽, 比如 Reed- Solomon 代码, 然后设计背负函数。 在本文中, 我们提议一种新的背负编码设计, 设计一个新的背负代码, 在某些情况下, 包括$ (n, k) MDS 代码和$ (n, k) $ (n, k) 美元 MDS 代码, 当 美元时, 以小小小分包的形式实现修理机带宽。 我们表示, 我们的新背载设计 $ (k) 美元) 的机重代码可以比 美元 重新修理机重的代码更低一些。 我们的提议是, 以美元 美元 的机重代码来显示我们的新代码, 以美元 显示我们的新代号 的代码, 也可以以美元 新的代号显示我们的新代号 。