本地可修复码和隐式奇偶校验

loic

Ceph OSD 在 纠删码池 中丢失时,可以使用其他 OSD 进行恢复。

例如,如果 OSD X3 丢失,OSD X1, X2, X4X10P1P4 将被主 OSD 检索,并且 纠删码插件 使用它们来重建 X3 的内容。

本地可修复码 旨在降低从单个 OSD 丢失中恢复时的带宽需求。为每个五个块计算一个本地奇偶校验块:S1S2。当 OSD X3 丢失时,不必从 13 个 OSD 检索块,而只需检索 X1, X2, X4, X5S1,即 5 个 OSD。

在某些情况下,本地奇偶校验块可以帮助从比任何单个编码函数可以处理的更多块的丢失中恢复。在上面的示例中,假设丢失了五个块:X1, X2, X3, X4X8。块 X8 可以从 X6, X7, X9, X10S2 恢复。现在只有四个块丢失,初始奇偶校验块足以恢复。本地奇偶校验块和全局奇偶校验块的组合就像存在一个 隐式 奇偶校验块一样。