随着大数据规模的不断增长,对存储系统的需求也不断提高。然而,为了确保可靠性和可用性,很多存储系统在数据存储时会将数据进行冗余备份。一种常见的冗余备份方式是擦除编码(Erasure coding),它通过将数据切割成若干块并分配给不同的节点,从而保证即使某些节点出现故障也不会丢失数据。然而,擦除编码所带来的成本却是 CPU 利用率的增加。

为了探究这种现象,我们在 MinIO 平台上进行了实验。在容量相同的情况下,我们将数据分别采用复制和擦除编码两种方式进行存储,并统计了两种方式下的 CPU 利用率。实验结果表明,当采用编码处理方式存储数据时,与之对应的 CPU 利用率有所增加。然而,通过单个数据块的压缩和优化,可以在几乎不影响数据可靠性的前提下降低 CPU 利用率。

通过本次实验,我们可以看到,擦除编码是一种可靠的冗余备份方式,但它所带来的成本也是不可避免的。通过对数据进行压缩和优化处理,可以在不牺牲数据可靠性的前提下降低 CPU 利用率。

详情参考

了解更多有趣的事情:https://blog.ds3783.com/