hadoop0纠删码erasurecoding节一半存储空间-过往记忆.pdfVIP

hadoop0纠删码erasurecoding节一半存储空间-过往记忆.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
hadoop0纠删码erasurecoding节一半存储空间-过往记忆

Hadoop 3.0纠删码(Erasure Coding):节省一半存储空间 Spark大数据博客 - Hadoop 3.0纠删码(Erasure Coding):节省一半存储空间 随着大数据技术的发展,HDFS作为Hadoop的核心模块之一得到了广泛的应用。为了系统的 可靠性,HDFS通过复制来实现这种机制。但在HDFS中每一份数据都有两个副本,这也使得存储 利用率仅为1/3,每TB数据都需要占用3TB的存储空间。随着数据量的增长,复制的代价也变得越 来越明显:传统的3份复制相当于增加了200%的存储开销,给存储空间和网络带宽带来了很大的 压力。因此,在保证可靠性的前提下如何提高存储利用率已成为当前HDFS应用的主要问题之一。 针对这些问题,英特尔、Cloudera、华为以及其他的Apache Hadoop communit共同参与开始引入纠删码(Erasure Coding,EC)技术,在保证数据可靠性的同时大 幅降低存储开销。相关代码已经进入trunk,并计划3.0版本中发布。 Erasure coding纠删码技术简称EC,是一种数据保护技术。最早用于通信行业中数据传输中 的数据恢复,是一种编码容错技术。他通过在原始数据中加入新的校验数据,使得各个部分的数 据产生关联性。在一定范围的数据出错情况下,通过纠删码技术都可以进行恢复。 纠删码(Erasure Code)与 Reed Solomon码 在存储系统中,纠删码技术主要是通过利用纠删码算法将原始的数据进行编码得到校验,并 将数据和校验一并存储起来,以达到容错的目的。其基本思想是将k块原始的数据元素通过一定 的编码计算,得到m块校验元素。对于这k+m块元素,当其中任意的m块元素出错(包括数据 和校验出错),均可以通过对应的重构算法恢复出原来的k块数据。生成校验的过程被成为编码 (encoding),恢复丢失数据块的过程被称为解码(decoding)。 Reed-Solomon(RS)码是存储系统较为常用的一种纠删码,它有两个参数k和m,记为RS(k ,m)。如图1所示,k个数据块组成一个向量被乘上一个生成矩阵(Generator Matrix)GT从而得 到一个码字(codeword)向量,该向量由k个数据块和m个校验块构成。如果一个数据块丢失, 可以用(GT)-1乘以码字向量来恢复出丢失的数据块。RS(k,m)最多可容忍m个块(包括数据块和 校验块)丢失。 1 / 4 Hadoop 3.0纠删码(Erasure Coding):节省一半存储空间 Spark大数据博客 - 块组(BlockGroup) 对HDFS的一个普通文件来说,构成它的基本单位是块。对于EC模式下的文件,构成它的基 本单位为块组。块组由一定数目的数据块加上生成的校验块放一起构成。以RS(6,3)为例,每一 个块组包含1-6个数据块,以及3个校验块。进行EC编码的前提是每个块的长度一致。如果不一致 ,则应填充0。图2给出三种不同类型的块组及其编码。 连续布局(Contiguous Layout) VS 条形布局(Striping Layout) 数据被依次写入一个块中,一个块写满之后再写入下一个块,数据的这种分布方式被称为连 续布局。在一些分布式文件系统如QFS和Ceph中,广泛使用另外一种布局:条形布局。条(strip e)是由若干个相同大小单元(cell)构成的序列。在条形布局下,数据被依次写入条的各个单元 中,当条被写满之后就写入下一个条,一个条的不同单元位于不同的数据块中。 2 / 4 Hadoop 3.0纠删码(Erasure Coding):节省一半存储空间 Spark大数据博客 - 项目计划 由于HDFS的内部逻辑已经相当复杂,所以整个HDFS EC项目的实现主要分为三个阶段: 1、用户可以读和写一个条形布局(Striping Layout)的文件;如果该文件的一个块丢失,后 台能够检查出并恢复;如果在读

文档评论(0)

ailuojue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档