jerasure纠删

本文介绍了jerasure编码引擎的关键性能指标,包括高速编解码、参数可配置性等,并详细阐述了Erasure Code的参数设定,如k、m、w、packetsize和buffersize的作用。通过实例展示了如何使用jerasure进行编码,讨论了有限域GF(2^w)的概念,以及纠删码在分布式存储中的应用,如HDFS的分块和MapReduce模型。
摘要由CSDN通过智能技术生成

编码引擎评判标准
以下几个关键指标可以对编码引擎性能进行分析:
1、高编/解码速度;
2、参数可配置;
3、编码速度稳定性;
4、代码简洁、稳定;
5、降低修复开销等。
一个可配置参数的编码引擎可以根据数据的冷热程度和数据重要程度选择不同的编码系数而不需要改动引擎本身,这大大降低了后续的开发和维护所需要的精力。比如可靠性要求高的数据可以选择更多冗余。数据恢复和更新代价高,因此常常针对只读数据,或者冷数据。

Erasure Code 参数说明

用法:./encoder ‘data/test.rar’ k m ‘reed_sol_van’ wordsize packetsize buffersize

1.纠删码将一个源文件以若干字节为单位分成k个等长的数据块,通过矩阵运算生成m个与数据块等长的冗余块,用于还原源文件。编码效率R=k/m。

  1. RS编解码中涉及到矩阵求逆,若采用高斯消元法,需要进行实数加减乘除四则运算,无法作用于字长为w位的二进制数据。为了解决这个问题,RS采用伽罗华群GF(2^w)中定义的四则运算法则,RS code是基于有限域 的一种编码算法,k+m个数据块就是这个有限域中的元素,因此满足 。RS编码依赖于两张2w-1大小的log表。每个数据块包含若干个字节, 每个字节的长度为w位, w∈{8 , 16 , 32 , 64}, w可在程序设计时自由选择, w值一般选取2的幂,w值越大,纠删码越丰富(可生成更多地数据块和冗余块),但随w值增大,在伽罗瓦域上的计算复杂度提高。通常选择w =8, 因为系统中包含少于28个磁盘, 而且w=8表现性能最好。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值