存储的基础构建正在发生根本性的转变,它就像20年前RAID刚出现时候一样具有颠覆性。这个革新性的发展通常被称为“自主自愈存储”,它给磁盘系统带来前所未有的高可靠性。 自主自愈存储这个词听起来不像一个根本性的变革,倒更像一个夸大其辞的概念。现在的RAID、RAIN(redundant array if independent nodes冗余节点阵列)、快照、连续数据保护(CDP)和镜像不都是吗?如果你将自愈定义为从损坏状况下恢复的能力,那确实是这样的。
所有这些大家熟悉的技术都是设计来从损坏状况下恢复数据的。但是说得更精确的话,这些技术实际都是自愈数据,而不是自愈存储。他们在出现存储损坏的时候恢复……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
存储的基础构建正在发生根本性的转变,它就像20年前RAID刚出现时候一样具有颠覆性。这个革新性的发展通常被称为“自主自愈存储”,它给磁盘系统带来前所未有的高可靠性。
自主自愈存储这个词听起来不像一个根本性的变革,倒更像一个夸大其辞的概念。现在的RAID、RAIN(redundant array if independent nodes冗余节点阵列)、快照、连续数据保护(CDP)和镜像不都是吗?如果你将自愈定义为从损坏状况下恢复的能力,那确实是这样的。所有这些大家熟悉的技术都是设计来从损坏状况下恢复数据的。但是说得更精确的话,这些技术实际都是自愈数据,而不是自愈存储。他们在出现存储损坏的时候恢复数据并向应用掩盖存储的损坏——他们不会恢复那个损坏的硬件。
自愈存储的更准确定义是在出现损坏的时候透明地恢复数据和存储。这可能有点听起来像吹毛求疵,但其实这不是。这是治标和治本的区别。
磁盘失效的时候会发生什么
现代通常存储系统的标准公分母是硬盘。硬盘驱动器是整个存储系统中唯一的电磁设备,而且它具有最高的损坏率和最低的平均正常工作时间(MTBF mean time between failures)(参见:MTBF: 奇妙的失效)。大家公认的事实是,磁盘部件是存储系统的要害。
多数公司内空前的数据增长带来了存储系统和硬盘驱动器爆炸式的增加。统计表明随着磁盘数量的增加,磁盘损坏的数量也会随之增长,而这可能意味着数据丢失。对磁盘损坏的情形的分析显示出如下问题。
1.一个磁盘驱动器失效
2.磁盘必须被物理替换,或者通过手动替换或者通过在线的磁盘池。
3.针对不同的RAID组级别,磁盘的数据会在备用盘上重建。
1.RAID 1、3、4、5、6、10、60都能依据数据校验和重建数据。
2.RAID 0无法重建硬盘数据。
4.重建硬盘数据的时间随磁盘容量、速度和RAID类型而变化。
1.一个使用RAID 5的1TB 7200转SATA硬盘需要大约24-30小时来重建数据,前提是假设重建进程具有较高优先级。
2.如果重建进程的优先级较低,并被指派为在空闲时段运行的后台进程,重建可能会需要8天。在重建的过程中,如果出现第二块盘失效和出现不可恢复的读错误,RAID组会有更高的的风险,这将导致数据丢失。这是因为校验数据需要从RAID组里所有盘里读出每个比特的数据才能重建数据。(除掉RAID6、RAID60和NEC美国公司的双校验RAID 3之外)。
1.典型SATA驱动器的不可恢复读错误率为10^14:大约每100,000,000,000,000比特就会有1比特的数据出现读错误。这意味着一个7块1TB SATA盘的RAID 5磁盘组将有50%的可能性会重建失败并导致该磁盘组的数据丢失。
2.企业级磁盘(光通道或者SAS)的不可恢复读错误率为10^15,也就是低于5%的RAID 5磁盘组重建失败率。
3.RAID 6避免了出现两块磁盘失败的时候丢失数据。为了安心你付出的代价是低于RAID 5的写性能,以及RAID组里一块额外的校验磁盘。
最后,磁盘驱动器会被送回厂家。根据《MTBF: 奇妙的失效》中的MTBF例子,这意味着每年会有越40次这种磁盘“保修事件”。
多数的存储管理员知道磁盘被送回厂家之后会发生什么都会大吃一惊。经过厂家的一系列错误检测流程之后,结果是大多数的(在67%到90%之间)失效磁盘驱动器都是“未发现故障”——磁盘是好的。但是返修已经做了,而且RAID数据也必须要重建。对“未发现故障”来说,这就是白费气力。
未发现的数据损坏
磁盘的另一个很少被提及但却非常流行的问题是“静默的数据损坏”。静默的数据损坏是指存储系统中未被察觉也未被告知的错误,结果就是给应用的数据是损坏了的,而没有任何的告警、日志、错误信息、或者任何形式的通知。
多数的存储系统不会检测此类错误,而通常其发生频率是SATA硬盘为17个月内0.6%,企业级硬盘为0.06%(据“存储栈中的数据损坏分析,” L.N. Bairavasundaram et al., 在加利福尼亚 San Jose的 FAST ’08大会上宣读)。在RAID没有发现例如错误或丢失写操作之类数据损坏错误的时候就会发生静默数据损坏。还有发生破碎的写数据的时候,最终的数据是新数据和旧数据的融合,而存储系统没有发觉或者没有尝试进行修复,这样也会发生静默数据损坏。
自主自愈系统
在这些新一代的系统中,有些使用了端到端的错误检测和纠正机制,能检测包括静默数据损坏在内的错误。另外的一些系统也使用相同的手段,但是加入了更加复杂的算法来尝试将失效的磁盘“原地修复”,从而避免进行RAID数据重建。最后一类系统则具备这些能力同时通过新的“原地失效”概念来增加筹码,也就是说当磁盘确实失效的时候(例如,无法继续使用),不需要对其进行替换操作就能进行RAID数据重建。
端到端错误检测和纠正
提供端到端错误检测和纠正的厂家和产品包括:DataDirect的带有OoS和SATAssure 的Silicon Storage Architecture (硅存储架构S2A);EMC的带有Double Checksum双校验和的Symmetrix DMX-4;NEC的D系列支持美国标准组织新的企业级光通道或SAS硬盘T10 DIF (Data Integrity Field数据一致性域) 标准,以及他们自己的针对SATA硬盘的扩展DIF功能; Panasas 公司的ActiveStor带有SATA硬盘垂直校验功能; Sun 微系统公司基于 Zettabyte File System (ZFS)镜像卷的系统;以及Xiotech公司的 Emprise 5000 (又称Intelligent Storage Element只能存储单元),也是基于T10 DIF标准的 (参阅“自愈系统产品”)。
T10 DIF是一个较新的标准,只支持SCSI协议的硬盘(SAS或者光通道)(参见“细看ANSI的 T10 DIF标准”)。2009年和2010年计划发布的多款存储系统都计划支持这一标准。尽管如此,目前还没有针对SATA硬盘端到端错误检测和纠正的标准。这就是为什么EMC、DataDirect网络和NEC都自己发展了各自的SATA端到端错误检测和纠正机制。
EMC DMX-4使用的双校验技术和Oracle数据库里的经过实践检验能降低数据库损坏的双校验十分类似,DataDirect网络公司的S2A SATAssure技术在每次读操作的时候进行Reed-Solomon纠错计算,并将硬盘上的数据与校验和进行比较,来保证数据一致性。如果发现不一致,SATAssure会修复数据,然后将其发回给请求数据的应用程序并将其写回磁盘以避免更多的问题。所有这些都是实时完成的。
NEC的D系列EDIF基于ANSI的T10 DIF标准。区别是EDIF为SATA内置的IDE协议做了相应修改。
Panasas的垂直校验设计目的为保证单个磁盘的可靠性。垂直校验可以在RAID阵列察觉之前就在SATA磁盘上发现并修复磁盘磨损、丢失或者错位的写操作(通过使用水平RAID条带中的冗余信息)。
Sun的ZFS现在使用于几种统一存储系统中(Sun 4500和7000系列,以及OnStor公司最新的Pantera LS 2100)。ZFS依靠自己的端到端错误检测算法来检测静默数据损坏,它需要镜像卷并通过从未损坏的镜像成员处拷贝数据来改正检测到的错误。
作者
相关推荐
-
自愈存储(二)
存储的基础构建正在发生根本性的转变,它就像20年前RAID刚出现时候一样具有颠覆性。这个革新性的发展通常被称为“自主自愈存储”,它给磁盘系统带来前所未有的高可靠性。
-
分析:重复数据删除技术的劣势
复数据删除是目前存储行业最热门的技术之一,用户和厂商们都很看好这种技术。有的厂商在开发硬件,有的厂商在开发软件,还有的厂商同时开发相关的软件和硬件。
-
从央视新址工地大火谈到企业灾难恢复(一)
2月9日晚8时,央视新址附属文化中心工地发生火灾,北京市委书记、市长迅速赶赴现场指挥扑救。至10日凌晨2时大火全部扑灭。7名消防人员因烟熏导致呼吸系统受伤……
-
重复数据删除技术弱点大剖析
本文讨论的是数据不定期损坏的问题,并非一定会发生,即使是发生数据损坏事故的概率远低于廉价SATA的高端企业光纤信道驱动器也不能例外。