0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

固态硬盘内RAID5技术

VIBT_dputech 来源:大普微 作者:大普微 2020-09-25 17:24 次阅读

提到冗余保护,最容易想到的就是RAID(Redundant Arrays of Independent Disks)。它是一种把多块独立的物理硬盘按不同方式组合形成一个硬盘组,以此提供比单个硬盘更高的存储性能和数据冗余的技术。该技术在服务器和存储阵列产品中广泛应用。

近年来,随着固态硬盘的使用率上升,提升固态硬盘的性能和可靠性(包括寿命)一直是行业攻关的重点。RAID技术在固态硬盘内已经得到了广泛应用。关键数据多副本,可以看作是RAID1保护,用户数据更常见的则是使用性价比较高的RAID5。具体使用什么RAID级别,一般是根据实际情况进行选择。DapuStor的HaiShen系列产品就使用RAID5技术为用户数据提供冗余保护,提升可靠性。这里,我们就将盘内RAID5技术做一个简单介绍。

RAID5原理

数据按条带分布在不同位置,比如图中A1~Ap是一个条带,B1~Bp是另一个条带,每个条带中的一份数据(比如A1)叫做条带单元。每个条带有一份校验数据(比如Ap),所以我们一般也称它为N+1的RAID组。RAID5校验计算通常采用异或(XOR)算法。现在很多主控也提供RAID5计算的硬件加速功能。

盘内RAID5条带布局

为了保证任意时候,一个Block或者DIE损坏,不会导致数据丢失。一个RAID5条带中的每个条带单元最好是来自不同的Block和不同的DIE。这种我们一般称为DIE级别的RAID冗余。跟上图对应,比如A1数据在DIE 1的某个Block,A2数据在DIE2的某个Block。最直观的组条带方式就是每个DIE各选一个Block,然后每个Block的相同Page组成一个条带。各个Block的Page组成RAID5条带有下面几种常见布局:

1)固定DIE的布局

在组成一个RAID组的Block中,使用一个固定DIE的Block存储校验(类似传统的RAID3),但是组成不同RAID组的Block可以不同。

2)旋转布局

组成一个RAID组的Block中,校验不固定在某个Block上,而是有规律的旋转变化(RAID5的旋转布局有多种方式,此处只列举了一种)。

不同的数据布局,会产生不同的盘内数据布局。最直观的,顺序写后,顺序读,各个DIE或者Block上的压力模型,在前面提到两种布局下是不同的。

RAID5数据恢复

如果Host 读某个Nand Page发生UNC(UNCorrectable)错误,这时RAID5恢复的原理是读这个条带内其他数据和校验数据,进行计算,得到期望的数据。

盘内RAID的异常处理

RAID5的数据恢复依赖分条的完整性,因为故障可能发生在任何阶段,所以数据恢复前必须判断出校验的有效性,避免恢复出错误数据。

典型场景1:某个Nand Block故障时,这个Block已经在一个写完成的条带上,此时RAID其实处于降级状态,较优的想法是把相关条带的数据重新放到一个健康的条带或者重建出故障Block的数据来替换它。

典型场景2:某个Nand Block 故障时,此时还没有数据写入,尽量把它从RAID组的Block中剔除,选一个健康的Block替换或者让当前RAID组从N+1保护转换成(N-1)+1。

典型场景3:一个条带单元的数据写入Nand 过程中发生了Program fail,同时另一个位置的读又遇到UNC,这些场景在DapuStor的HaiShen系列产品中都有专门处理,保障可以恢复出正确数据。

因为错误可能发生在任何时刻,所以其他场景这里就不一一列举。

RAID带来的影响

1.OP(Over Provisioning)空间降低

引入RAID后,有的Nand空间用于存储校验数据,间接导致用户数据的可用OP空间降低,

2.WA(Write Amplification)变大

因为每个条带额外写入了一份校验数据,所以整个生命周期的WA会增大。

3.性能影响

前面两点提到的OP变小,写放大变大,其实最终也都会表现成对性能的影响。另外,一个直观感受是顺序写和读的过程,因为每个条带都有一个DIE没有提供给Host IO服务,所以性能也必定会有影响。

盘内冗余技术发展

RAID5为用户数据提供了N+1级别的冗余保护。随着盘内功能增强,业务对盘内可靠性要求的提高,不同成本和可靠性定位的用户可能会需要不同冗余保护的级别。技术上还有一些更高级别的冗余保护:

1.RAID6

相比RAID5的N+1,它提供了N+2的保护。对应在SSD产品中,它当然也会带来更大的OP损耗。

2.EC(Erasure Coding)

现在分布式存储时代,多备份和EC相比传统RAID是更广泛的应用。EC算法提供了N+M的保护级别,可以有更广阔的选择空间。

原文标题:盘内数据冗余保护

文章出处:【微信公众号:大普微】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 固态硬盘
    +关注

    关注

    11

    文章

    1356

    浏览量

    56494

原文标题:盘内数据冗余保护

文章出处:【微信号:dputech,微信公众号:DapuStor】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    服务器数据恢复—StorNext文件系统下raid5数据恢复案例

    服务器数据恢复环境: 昆腾某型号存储,8个存放数据的存储柜+1个存放元数据的存储柜。 元数据存储:8组RAID1阵列+1组RAID10阵列+4个全局热备硬盘。 数据存储:32组RAID5
    的头像 发表于 04-22 14:51 89次阅读
    服务器数据恢复—StorNext文件系统下<b class='flag-5'>raid5</b>数据恢复案例

    服务器数据恢复—RAID5上层SAP+oracle数据恢复案例

    服务器存储数据恢复环境: 某品牌服务器存储中有一组由6块SAS硬盘组建的RAID5阵列,其中有1块硬盘作为热备盘使用。上层划分若干lun,存放Oracle数据库数据。 服务器存储故障&
    的头像 发表于 04-15 16:52 109次阅读

    服务器数据恢复—不同型号服务器的RAID5数据恢复策略

    RAID5作为应用最广泛的raid阵列级别之一,在不同型号服务器中的RAID5出现故障后,处理方法也不同。 RAID5阵列级别是无独立校验磁盘的奇偶校验磁盘阵列,采用数据分块和独立存
    的头像 发表于 04-12 14:51 105次阅读

    raid5热备盘同步过程中磁盘离线导致同步失败的数据恢复案例

    一台存储上有一组由多块硬盘组建的raid5阵列,该raid5阵列中的一块硬盘掉线,热备盘自动上线同步数据的过程中,raid阵列中又有一块
    的头像 发表于 03-14 15:47 120次阅读

    服务器数据恢复—华为OceanStor存储raid5数据恢复案例

    服务器数据恢复环境: 华为OceanStor某型号存储,存储内有一组由24块硬盘组建的raid5阵列,配置1块热备盘。 服务器故障: 该存储raid5阵列中有一块硬盘离线,热
    的头像 发表于 01-18 11:58 175次阅读
    服务器数据恢复—华为OceanStor存储<b class='flag-5'>raid5</b>数据恢复案例

    【服务器数据恢复】Raid5硬盘离线导致热备盘上线同步失败的数据恢复案例

    服务器数据恢复环境: 两组由4块磁盘组建的raid5磁盘阵列,两组raid5阵列划分为lun并组成了lvm结构,ext3文件系统。 服务器故障: 一组raid5阵列中的一块硬盘
    的头像 发表于 01-08 13:38 117次阅读

    服务器数据恢复-raid5硬盘异常导致的上层分区无法识别的数据恢复案例

    一台服务器上3块磁盘组建了一组raid5磁盘阵列。服务器运行过程中有一块硬盘的指示灯变为红色,raid5磁盘阵列出现故障,服务器上层操作系统的分区无法识别。
    的头像 发表于 12-18 15:49 183次阅读
    服务器数据恢复-<b class='flag-5'>raid5</b><b class='flag-5'>硬盘</b>异常导致的上层分区无法识别的数据恢复案例

    服务器数据恢复—Raid5部分磁盘重建新raid5如何恢复原raid数据?

    一台服务器上搭建了一组由5块硬盘组建的raid5阵列,服务器上层存放单位重要数据,无备份文件。
    的头像 发表于 12-11 13:20 379次阅读

    服务器数据恢复—raid5阵列多块硬盘出现坏道掉线的数据恢复案例

    某品牌服务器中有一组16块SAS接口硬盘组建的raid5磁盘阵列。
    的头像 发表于 11-13 15:06 245次阅读
    服务器数据恢复—<b class='flag-5'>raid5</b>阵列多块<b class='flag-5'>硬盘</b>出现坏道掉线的数据恢复案例

    服务器数据恢复-EMC存储RAID5崩溃的数据恢复案例

    北京某单位有一台EMC某型号存储,有一组由10块STAT硬盘组建的RAID5阵列,另外2块磁盘作为热备盘使用。RAID5阵列上层只划分了一个LUN,分配给SUN小机使用,上层文件系统为ZFS
    的头像 发表于 09-08 14:04 219次阅读
    服务器数据恢复-EMC存储<b class='flag-5'>RAID5</b>崩溃的数据恢复案例

    DELL存储raid5阵列中2块盘离线的服务器数据恢复案例

    DELL PowerVault系列某型号存储,15块硬盘搭建了一组RAID5磁盘阵列。
    的头像 发表于 07-06 13:45 423次阅读

    EMC存储raid5两块硬盘离线的数据恢复案例

    某公司一台EMC某型号存储中有一组由12块硬盘组建的raid5磁盘阵列,其中有2块盘作为热备盘使用。
    的头像 发表于 06-30 16:19 309次阅读
    EMC存储<b class='flag-5'>raid5</b>两块<b class='flag-5'>硬盘</b>离线的数据恢复案例

    Raid5热备盘同步失败的数据恢复案例

      两组分别由4块SAS硬盘组建的raid5磁盘阵列,ext3文件系统,通过LVM管理磁盘存储。
    的头像 发表于 06-28 15:49 297次阅读
    <b class='flag-5'>Raid5</b>热备盘同步失败的数据恢复案例

    【存储数据恢复】华为OceanStor存储raid5数据恢复案例

    华为OceanStor某型号存储,十几块FC硬盘组建一组RAID5磁盘阵列,配备了一块热备盘;上层使用EXT3文件系统,配置了oracle数据库。
    的头像 发表于 06-13 15:32 471次阅读
    【存储数据恢复】华为OceanStor存储<b class='flag-5'>raid5</b>数据恢复案例

    同友存储raid5崩溃的数据恢复案例

    同友存储,底层由数块物理硬盘组建的raid5磁盘阵列,存储池划分若干lun,每个lun下有数台虚拟机。
    的头像 发表于 05-05 14:30 421次阅读
    同友存储<b class='flag-5'>raid5</b>崩溃的数据恢复案例