这篇文章给大家分享的是有关Ceph纠删码如何实现的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。纠删码Erasure Code是一种编码技术,它可以将n份原始数据,增加m份数据,并能通过n+m份中的任意n份数据,还原为原始数据。即如果有任意小于等于m份的数据失效,仍然能通过剩下的数据还原出来。 纠删码技术在分布式存储系统中的应用主要有三类,阵列纠删码(Array Code: RAID5、RAID6等)、RS(Reed-Solomon)里德-所罗门类纠删码和LDPC(LowDensity Parity Check Code)低密度奇偶校验纠删码。 LDPC码目前主要用于通信开发云主机域名、视频和音频编码等领域。目前主流的分布式存储包括HDFS、Ceph、Minio等主要使用的是RS(Reed-Solomon)码。数据将在主 OSD 进行编码然后分发到相应的 OSDs 上去。从相应的OSDs中获取数据后进行解码。如果此时有数据丢失,Ceph会自动从存放校验码的OSD中读取数据进行解码。 Ceph支持不同的纠删码插件:Jerasure,ISA-l 和 LRC,默认为Jerasure此处列出的三种纠删码插件其实是分成两种类型Jerasure和ISA-l属于纠删码代码库 LRC是一种纠删码编码,类似于RS码Jerasure2.0 使用 C 语言封装后的指令,这样代码更加的友好。另外 Jerasure2.0 不仅仅支持 GF(2^8) 有限域的计算,其还可以进行 GF(2^4) – GF(2^128) 之间的有限域。并且除了 RS 码,还提供了 Cauchy Reed-Solomon code (CRS 码)等其他编码方法的支持。它在工业应用之外,其学术价值也非常高。目前其是使用最为广泛的编码库之一。目前 Jerasure2.0 并不支持 AVX 加速。Intel ISA-L代表英特尔智能存储加速库,使用的汇编代码,ISA-L是针对存储应用程序而优化的低级功能的开源集合。它包括针对Intel AVX和AVX2指令集优化的快速块Reed-Solomon类型纠删码,它的性能是业界最佳,主要是因为整体的矩阵运算都放在汇编之中Reed-Solomon(RS)码是存储系统较为常用的一种纠删码,它有两个参数n和m,记为RS(n,m)。n代表原始数据块个数。m代表校验块个数。简单来讲指定RS(4,1)时,有4个数据块和1个校检块D1-4任意数据块损坏,都可以通过P1进行解码恢复重建,同样的P1校检块损坏也可以通过数据块编码计算重建LRC(Locally Repairable Codes),是一种局部校验编码方法,其核心思想为:将校验块(parity block)分为全局校验块(global parity)、局部校验块(local reconstruction parity),故障恢复时分组计算。对比RS,这里是4个数据块分成了两组,D1+D2=P1D3+D4=P2D1+D2+D3+D4=P3P1、P2是局部校验块,P3是全局校验块。优势在于,当组内数据块损坏时,由于减少了网络I/O传输的数据量,组内恢复运算的数据量和重建时间基本上能缩短一半。劣势是因为校检块的增加,磁盘使用率和可靠性都会降低感谢各位的阅读!关于“Ceph纠删码如何实现”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
相关推荐: 服务器出现Event ID 26 Source Application Popup该怎么办
今天就跟大家聊聊有关服务器出现Event ID 26 Source Application Popup该怎么办,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。服务器上报Application Popup:…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。