编码引擎评判标准
以下几个关键指标可以对编码引擎性能进行分析:
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表现性能最好。

jerasure纠删相关推荐

  1. fabric通过java怎么整合RS纠删码的实现

    fabric是一个分布式账本平台,它提供了一种简单的方式来构建区块链应用程序.如果想要在fabric中使用RS纠删码,可以按照以下步骤进行整合: 首先,需要在fabric中定义一个新的链码(chain ...

  2. 「Ceph源码分析」纠删码解码

    存储系统:ceph-14.2.22 操作系统:ubuntu-server-18.04 总体框架 源码分析 ECBackend::objects_read_and_reconstruct [ 文件路径 ...

  3. 信道编码之纠删码编码

    简介 随着数据的存储呈现出集中化(以分布式存储系统为基础的云存储系统)和移动化(互联网移动终端)的趋势,数据可靠性愈发引起大家的重视.集群所承载的数据量大大上升,但存储介质本身的可靠性进步却很小,这要 ...

  4. 分布式系统下的纠删码技术(一) -- Erasure Code (EC)

    近几个月主要参与一个分布式存储系统的纠删码部分(用于数据容错),纠删码在学术界出现比较早,现在ceph,微软的存储系统,Hadoop 3.0等都用了EC.文章会分为多篇,主要将Erasure Code ...

  5. Ceph 进阶系列(四):Ceph的纠删码特性 EC(Erasure Code)

    从GitHub上Clone Ceph项目,我是基于(ceph version 12.2.11 luminous 版本)的代码来分析的 一.EC(Erasure Code)是什么? Ceph的纠删码特性 ...

  6. ceph的压缩、加密、纠删码

    ceph的压缩.加密.纠删码 ① 压缩(Compression ) 对ceph压缩的一写描述: (1)The Ceph Object Gateway supports server-side comp ...

  7. 我慌了,纠删码是什么?我被面试官问蒙了

    几年前去某大厂面试,岗位是:高级运维工程师.一面二面都很顺利,三面是技术总监,问了很多linux操作系统,shell,python,自动化运维等问题,可以说是对答如流,出口成章,滔滔不绝,心里觉得这下 ...

  8. RS(纠删码)技术浅析及Python实现

    前言 在Ceph和RAID存储领域,RS纠删码扮演着重要的角色,纠删码是经典的时间换空间的案例,通过更多的CPU计算,降低低频存储数据的存储空间占用. 纠删码原理 纠删码基于范德蒙德矩阵实现,核心公式 ...

  9. 纠删码存储系统中的投机性部分写技术

    本文已被USENIX'17年度技术大会录用,此处为中文简译版. 阅读英文论文完整版请点击:Speculative Partial Writes in Erasure-Coded Systems 多副本 ...

最新文章

  1. FreeSWITCH配置文件详解
  2. linux6 yum安装mysql_linux CentOS6.5 yum安装mysql 5.6
  3. Java HasCode equals == 的区别
  4. python用户注册(基于django)
  5. 开单大师(开源可定制的房产管理系统) v3.6.9学习版
  6. Spring学习笔记专题三
  7. java小程序详解_微信小程序登录Java后台接口(详解,附示例代码)
  8. 分析近5年胡润财富排行榜:江山已易主,这是互联网大佬的时代
  9. python epoll多路复用技术_python网络编程——IO多路复用之epoll
  10. 弹幕,是怎样练成的?
  11. 暑假集训-7.31总结
  12. 织梦采集侠破解版_最新dedecms织梦采集侠v2.6破解版
  13. 饿了么开放平台接入(1)——开放平台注册与使用
  14. mac 安装typescript
  15. 性价比高的口粮酒推荐,聪明人都选这3款,口感醇厚,纯粮好喝
  16. Python对5支股票的投资组合进行分析
  17. 用友NC65产品的对账节点联查业务帐
  18. 每日一犬 · 猴头梗
  19. 如何处理json数据
  20. 什么是链接,为什么需要链接?

热门文章

  1. java常见log日志的使用方法详细解析
  2. SAP ABAP 业务对象 BUS2038A MaintNotificBAPIs BAPIs维护通知 BAPI 清单和相关 TCODE
  3. Oracle分页查询示例
  4. 铁蛋白-海藻酸钠纳米包埋ACE抑制肽|海藻酸钠修饰碳纳米管(SAL-MWNTs)
  5. excel oledb mysql_通用Excel设置外部数据源引入Access数据库数据时,提示:“尚未注册 OLE DB 访问接口 Microsoft.Ace.Oledb.12.0”...
  6. 51单片机 蓝牙 循迹 ,定时器产生4个PWM
  7. C# winform 通过Matrix实现图像的自由平移、缩放、旋转
  8. 开源的渗透工具—Sqlmap
  9. 性能测试工具工作原理
  10. Bilinear Filter