知识卡片
SHEC用参数直接控制恢复读取量
内容
SHEC(K,M,L)比 [[LRC用全局与局部双层校验降低单块恢复成本|LRC]] 更进一步,把”恢复一块数据要读多少块”直接做成一个可调参数 L——每个校验块只由相邻的 L 个数据块计算得出(而不是像 LRC 那样把数据块严格分组),恢复单个数据块只需读取这 L 块,恢复代价与 L 直接挂钩、与总数据块数 K 无关。代价体现在可靠性公式 M×L/K 上:SHEC(10,6,5) 算出最大可容忍失效数是 3 块,明显低于同样开销级别的 LRC 或 RS。三种编码呈现出一条清晰的谱系:RS 恢复代价最高但可靠性最强,LRC 折中,SHEC 把恢复代价压到最低但进一步让出可靠性——参数化设计让这条谱系上的位置可以按需精细调节,而不是只能在几个预设档位之间选择。
参考来源
《Ceph源码分析》第8章《Ceph纠删码》