纠删码ReedSolomon

2024-01-03 12:44
文章标签 删码 reedsolomon

本文主要是介绍纠删码ReedSolomon,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 随着大数据技术的发展,HDFS作为Hadoop的核心模块之一得到了广泛的应用。为了数据的可靠性,HDFS通过多副本机制来保证。在HDFS中的每一份数据都有两个副本,1TB的原始数据需要占用3TB的磁盘空间,存储利用率只有1/3。
  • 而且系统中大部分是使用频率非常低的冷数据,却和热数据一样存储3个副本,给存储空间和网络带宽带来了很大的压力。因此,在保证可靠性的前提下如何提高存储利用率已成为当前HDFS面对的主要问题之一。
  • Hadoop 3.0 引入了纠删码技术(Erasure Coding),它可以提高50%以上的存储利用率,并且保证数据的可靠性。
  • 纠删码是采用计算的方法来维持数据的一致性,并用解方程的方法对数据进行恢复,容忍一定的误差。

概念

Reed-Solomon(RS)码是存储系统较为常用的一种纠删码,它有两个参数k和m,记为RS(k,m)。如下图所示,k个数据块组成一个向量被乘上一个生成矩阵(Generator Matrix)GT从而得到一个码字(codeword)向量,该向量由k个数据块和m个校验块构成。如果一个数据块丢失,可以用(GT)-1乘以码字向量来恢复出丢失的数据块。RS(k,m)最多可容忍m个块(包括数据块和校验块)丢失。
在这里插入图片描述

基本原理

容忍度

冗余符号的个数可以人为指定
在这里插入图片描述

数据的生成

把输入数据视为向量D=(D1,D2,…, Dn), 编码后数据视为向量(D1, D2,…, Dn, C1, C2,…, Cm),RS编码可视为如下图所示矩阵运算。
在这里插入图片描述
上图最左边是编码矩阵(或称为生成矩阵、分布矩阵,Distribution Matrix),编码矩阵需要 满足任意n*n子矩阵可逆。 为方便数据存储,编码矩阵上部是单位阵(n行n列),下部是m行n列矩阵。下部矩阵可以选择范德蒙德矩阵或柯西矩阵。
在这里插入图片描述

这里我们假设7和50丢失了 下方是恢复的过程,很简单解一个方程组就行。

7 x
50 y
x + 2*8 + 3 * 9 = y
4x + 5*8 + 6 * 9 = 122

数据的恢复

采用高斯消元的方法,我们来看一个具体的例子。
在这里插入图片描述

在这里插入图片描述

这篇关于纠删码ReedSolomon的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/565731

相关文章

HDFS—存储优化(纠删码)

纠删码原理 HDFS 默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。 Hadoop3.x 引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 此种方式节约了空间,但是会增加 cpu 的计算。 纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。 默认只开启对 RS-6-3-1024k

ceph纠删码精简配置ec4+2:1与ec4+2的切换

概述 近期遇到项目,由于灵活配置,前期只有部分机器,后续扩容,想用ec4+2的纠删码,但前期只有3台机器,需要做精简ec。 erasure-code-profile 首先按照ceph创建纠删码池步骤进行操作。 创建ec4+2的rule ceph osd erasure-code-profile set newecrule k=4 m=2 查看该rule # ceph osd era

TOFEC:使用纠删码实现云存储的最佳吞吐量延迟权衡

第一部分:论文中的名词解释 TOFEC(Throughput Optimal FEC Cloud) 吞吐量最优的FEC云,FEC是指前向纠删码并行连接:指同时使用多个网络来传输数据的一种技术,这样可以提高数据传输的速率和效率,特别是在云存储中。有限分块是指将一个大的数据对象分成若干个较小的段,每个段都有自己的标识符和哈希值。这样可以提高数据去重的能力,减少存储空间的占用,以及降低传输延迟。

Minio入门系列【2】纠删码

1 纠删码 Minio使用纠删码erasure code和校验和checksum来保护数据免受硬件故障和无声数据损坏。 即便丢失一半数量(N/2)的硬盘,仍然可以恢复数据 1.1 什么叫纠删码 纠删码是一种用于重建丢失或损坏数据的数学算法。 纠删码(erasure coding,EC)是一种数据保护方法,它将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,比如磁盘、存储节点

【ceph的通用解决方案】-ceph纠删码理论与实践

作者:【吴业亮】 博客:https://wuyeliang.blog.csdn.net/ 开篇: 目前企业的业务场景多种多样,并非所有Ceph存储解决方案都是相同的,了解工作负载和容量要求对于设Ceph解决方案至关重要。Ceph可帮助企业通过统一的分布式集群提供对象存储、块存储或文件系统存储。在设计流程中,这些集群解决方案针对每项要求都进行了优化。该设计流程的首要因素包括 IOPS 或带宽要求、

分布式存储中常见的容错机制:多副本、纠删码(RS、LRC、SHEC)

文章目录 分布式存储中常见的容错机制浴缸原理多副本纠删码RSLRCSHEC 总结 分布式存储中常见的容错机制 浴缸原理 在存储领域中,通常我们会使用浴缸曲线来描述硬盘的故障率,如下图。 浴缸曲线 故障率随着时间变化,主要分为三个阶段: 早期适配型故障:早期在引入新设备时,会出现系统、软/硬件、驱动等适配型原因的故障。当完成设备适配后,这一类型的故障会急剧下

全网最新最全的 HDFS 文件纠删码技术分析

前言 本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系 正文 概述 HDFS 为了提高可靠性,采用了“暴力”的三副本技术,这就带来了存储成本的问题。业界一直在探索如何降低存储成本。 传统的 RAID 技术就被很自然地借鉴过来与 HDFS 相结合

HDFS 3.x 数据存储新特性-纠删码

HDFS是⼀个⾼吞吐、⾼容错的分布式⽂件系统,但是HDFS在保证⾼容错的同时也带来⾼昂的存储成本,⽐如有5T的数据存储在HDFS上,按照HDFS的默认3副本机制,将会占⽤15T的存储空间。那么有没有⼀种能达到和副本机制相同的容错能⼒但是能⼤幅度降低存储成本的机制呢,有,就是在HDFS 3.x 版本引⼊的纠删码机制。 EC(纠删码) EC(纠删码)是⼀种编码技术,在 HDFS 之前,这种编码

Hadoop3数据容错技术(纠删码)

关注公众号:大数据技术派,回复“资料”,领取资料,学习大数据技术。 背景 随着大数据技术的发展,HDFS作为Hadoop的核心模块之一得到了广泛的应用。为了数据的可靠性,HDFS通过多副本机制来保证。在HDFS中的每一份数据都有两个副本,1TB的原始数据需要占用3TB的磁盘空间,存储利用率只有1/3。而且系统中大部分是使用频率非常低的冷数据,却和热数据一样存储3个副本,给存储空间和网络带宽带

Hadoop3教程(三十):(生产调优篇)纠删码

文章目录 (155)纠删码原理纠删码原理纠删码相关命令纠删码策略解释 (156)纠删码案例实操参考文献 (155)纠删码原理 纠删码原理 默认情况下,一个文件在HDFS里会保留3个副本,以此提高数据的可靠性(容灾),但也带来了2倍的存储上的冗余开销。 于是Hadoop3.x引入了纠删码,采用计算的方式来提高数据的可靠性,可以节省50%左右的存储空间。 如上图(黄色部分)