URE到底是什么?


14

最近,我一直在研究RAID5与RAID6,而由于URE额定值和驱动器尺寸的增加,我一直看到RAID5不再足够安全。基本上,我发现的大多数内容都说在RAID5中,如果发生磁盘故障,如果阵列的其余部分为12TB,那么您几乎有100%的机会满足URE并丢失数据。

12TB的数字来自这样的事实,即磁盘的额定读取速率为10 ^ 14位,可以达到一个URE。

好吧,有些事情我没有到达这里。读取是由扇区上的磁头完成的,导致读取失败的原因是磁头死了或扇区死了。也可能是由于其他某些原因导致读取无法正常工作(我不知道,就像是振动使磁头跳了起来……)。因此,让我解决所有3种情况:

  • 阅读无效:这不是无法恢复的,对吗?可以再次尝试。
  • 头部死了:这肯定是无法恢复的,但是,这也意味着整个盘子(或至少侧面)是不可读的,这会更加令人震惊,不是吗?
  • 该扇区消失:以及完全无法恢复,但是在这里我不明白为什么URE的4TB磁盘的额定值为10 ^ 14,而URE的8TB磁盘的额定值为10 ^ 14,这意味着磁盘上的扇区8TB(最有可能是较新的技术)的可靠性是4TB的一半,这没有意义。

如您所见,从我确定的3个故障点来看,没有任何道理。那么具体来说,URE是什么意思?

有谁可以向我解释吗?

编辑1

在第一波答案之后,似乎原因是该部门失败了。好消息是固件,RAID控制器和OS +文件系统都有适当的程序来尽早发现并重新分配扇区。

好吧,我现在知道什么是URE(实际上,这个名称是不言自明的:))。

我仍然对根本原因以及它们给出的稳定评级感到困惑。

一些人将失效的部分归因于外部来源(宇宙波),然后令我感到惊讶的是,那么URE率是基于读数计数而不是年龄,宇宙波的确会影响更多的旧磁盘,仅仅是因为它已经暴露了此外,尽管我可能错了,但我认为这更像是一种幻想。

现在来谈谈与磁盘磨损有关的另一个原因,有人指出,较高的密度会导致较弱的磁畴,这完全是有道理的,我将按照说明进行操作。但是,正如在这里很好地解释的那样,不同大小的新磁盘主要是通过在HDD机箱中放置或多或少的相同的盘片(然后是相同的密度)来获得的。扇区是相同的,并且所有扇区都应具有相同的可靠性,因此,较大的磁盘应比较小的磁盘具有更高的额定值,而扇区的读取较少,事实并非如此,为什么?但这可以解释为什么采用新技术的新磁盘没有比旧磁盘获得更好的评级,这仅仅是因为更好的技术收益被更高密度带来的损失所抵消。


“肯定会丢失您的数据”(我可能是错的),一个URE意味着仅丢失了一些数据,而不是全部数据-您可以在击中URE之后再次尝试重建。也就是说,raid 10或zfs有点像现在这样。
Sirex's

1
(新光盘上的)扇区可靠性是(旧光盘上的)一半,这没有意义。 ”我不确定我是否同意。随着磁区变得越来越小(在相同大小的包装中,更高的数据密度意味着),它们变得越来越容易受到意外擦除(局部伽马射线发射,宇宙射线事件等)的影响是非常合理的。现代驱动器的敏感性越来越高,这就是为什么我们没人在任何重要的事情上都部署未RAID的驱动器,也是我们大多数人放弃RAID-5的原因之一。
MadHatter


真正的问题在于,太多的RAID阵列将单个URE变成整个阵列错误。单个URE应该导致单个RAID块的丢失。让文件系统弄清楚该块是否还在使用中,可能真的没关系。
MSalters

1
@Memes不,数字被抵消。两倍的扇区也是出现故障的机会的两倍,因此相同的读取错误率等于按字节计的相同可靠性。这就是为什么首先使用它的原因。
霍布斯

Answers:


13

URE是不可恢复的读取错误。发生某种事情,导致驱动器无法修复的扇区读取失败。驱动器电子设备非常复杂,只有在能够从磁盘正确读取数据的情况下,它们才会向上传递数据。在宣布损坏之前,驱动电子设备将尝试多次读取坏扇区。

导致读取错误的原因-我不是专家(随之而来的是挥舞手臂),但驱动器老化会导致制造公差变得很重要。磁畴会变弱。宇宙射线可能会造成损坏等。本质上,这是一个随机故障。

这如何影响RAID 5?

RAID 5由块级的具有分布奇偶条带化。奇偶校验块是通过将数据块中的位进行异或运算得出的。XOR函数基本上说,如果所有位都相同,则结果为0,否则为1。在计算奇偶校验时,您将前2位与XOR,然后将结果与下一位进行XOR,依此类推,例如

1010   data      or    1010 data
1100   data            1100 data
0110   parity          0011 data
                       0101 parity

XOR函数的性质是,如果有任何磁盘死亡并被替换,则可以从其余磁盘中重建应该存在于其上的数据。

1010  data       or    1010 data
      damaged               damaged
0101  parity           0011 data
                       0101 parity

如您所见,可以通过对剩余数据和奇偶校验值进行XOR来重建损坏的数据。

URE如何影响这一点?

URE仅在RAID 5重建期间很重要。

重建RAID 5时,需要进行大量读取。为了在新磁盘上重建数据,需要读取每个数据块。如果发生URE,则无法恢复相关块的数据,因此您的数据不一致。对于具有足够大的R5的足够大的磁盘,读取以重建替换磁盘的位数超过了10读14读中的1位URE值。


2
8TB盘具有超过6×10 ^ 13位,所以用在RAID-5仅仅三个这样的光盘中,URE是较有可能一个重构期间。哦,还有我+1。
MadHatter

3
声称(写在问题中,在某些答案和评论中,以及在其他问题中,实际上是在整个互联网上)声称读取12TB后几乎可以确定读取错误是错误的。不相信吗?别。知道。通过从任何磁盘读取12 TB(或更多)TB并观察到没有错误发生。请这样做并停止这个神话。谢谢。
DavidBalažic17年

1
@IanKemp不,不是。我尝试过这个。你显然没有。(同样,更好的评级只会使神话有所改变,没有真正的改变)
DavidBalažic19年

1
@DavidBalažic显然,你的样本大小一个概率论的全部无效信号!我建议您向诺贝尔委员会提交论文。
伊恩·肯普

1
@IanKemp如果有人声称所有数字都可以被7整除,而我发现不是,那么是的,一次发现可以使整个理论无效。顺便说一句,仍然没有一个人在实践中(通过实验)证实了这个神话,是吗?当信仰远胜于知识时,他们为什么要……
DavidBalažic19年

9

那么具体来说,URE是什么意思?

硬盘不仅仅存储您要求存储的数据。由于磁畴大小不断减小,并且硬盘以模拟方式而不是二进制方式存储数据(硬盘固件从磁盘上获取模拟信号,该信号转换为二进制信号,并且这种转换是制造商的秘密酱汁的一部分),实际上在读取过程中总是存在一定程度的错误,必须对此进行补偿。

为了确保可以读回数据,硬盘还存储前向纠错数据以及您要求存储的数据。

在正常操作下,FEC数据足以纠正从盘片读取的信号中的错误。然后固件可以重建原始数据,一切都很好。这是一个可恢复的读取错误,在SMART中作为读取错误率属性(SMART属性0x01)和/或已恢复硬件ECC(SMART属性0xc3)公开。

如果由于某种原因信号降级到特定点以下,则FEC数据不再足以重建原始数据。从理论上讲,到那时,固件仍将能够检测到无法可靠地读取数据,但是对此无能为力。如果多次此类读取失败,则磁盘必须以某种方式通知计算机的其余部分无法成功执行读取。它通过发出不可恢复的读取错误来发出信号。这还会增加“ 报告的不可纠正错误”(SMART属性0xbb)计数器。

不可恢复的读取错误或URE只是报告,无论出于何种原因,有效载荷数据加上FEC数据不足以重建原始存储的数据。

请记住,URE率是统计数据。您将不会遇到任何硬盘,在该硬盘上您可以准确地读取10 ^ 14(或10 ^ 15)-1位,然后下一位失败。相反,这是制造商的一项声明,平均而言,如果您读取(说)10 ^ 14位,那么在该过程中的某个时候,您将遇到一个无法读取的扇区。

同样,紧接着上面的最后几个词,请记住,URE速率是根据读取的每位扇区数给出的。由于数据是如何存储在磁盘上的,磁盘无法确定扇区的哪一部分坏,因此,如果某个扇区未通过FEC检查,则整个扇区都被认为是坏的。


好的,所以这似乎表明该行业正在失败。我完全掌握了统计信息,不用担心。我在这里还看到,随着密度的提高,该部门的可靠性正在下降,但这仍然没有道理。不论物理大小如何,较新的磁盘通常具有相同的盘片密度,因此4TB的盘片将比6TB少。基本上,扇区是相同的,因此为什么8TB无法在统计上获得更高的价值,所以扇区的数量是原来的两倍,因此每个扇区的读取量是统计上的一半。然后他们应该减少失败,不是吗?
Memes

3

该扇区消失:以及完全无法恢复,但是在这里我不明白为什么URE的4TB磁盘的额定值为10 ^ 14,而URE的8TB磁盘的额定值为10 ^ 14,这意味着磁盘上的扇区8TB(最有可能是较新的技术)的可靠性是4TB的一半,这没有意义。

规范通常是“ 读取n位时平均检测到1个错误”,因此驱动器大小无关紧要。重要的是,如果您计算出驱动器和工作负载上将发生错误的风险,但是制造商仅声明读取n位才能发现错误(平均而言,不能保证)。

例如:如果您购买一个1TB的驱动器,则必须对其进行约12次读取才能发现错误,而8TB的驱动器可能会在第二次读取时遇到错误-但是两次读取的位数相同,因此质量磁主轴的数量大致相同。

您所付出的代价还包括其他因素,例如将8TB装入1TB物理空间的能力,大大降低了能耗,在移动驱动器时减少了摇晃等。


0

我认为@MichaelKjörling回答清楚。

当磁盘读取时,磁头检测磁畴的方向,然后发出一些模拟的电子信号。我们假设固件在接收到高于0.5V的电压时应该给1,但是磁场太弱,因此磁头仅发送0.499V的信号,遇到错误。我们需要FEC来更正此错误。

这是一个示例:扇区数据应为0x0F23,我们使用0 * 1 + F * 2 + 2 * 3 + 3 * 4 = 0x30对其进行编码。现在我们得到FEC,并将其写在该部门之后。当我们读时,我们读到0x0E23和FEC 0x30,它们不匹配。经过一番计算,我们发现它应该是0x0F23。但是,如果我们得到0x0E13和0x30,或者我们得到0x0E23和0x32,我们将无法计算出正确的值。

这个等级太低了,也许除非HDD工厂能够读取EB数据,否则EB数据都可以获得稳定的值。因此它们给出了概率值:当您读取10 ^ 14位数据时,可能遇到一次。因为这是一个概率值,所以也许您只读取了1个扇区数据之后就陷入困境,也许直到读取50TB数据时您才遇到麻烦。而且该值与磁盘容量无关,只是您读取的数据大小引起的机会。如果您读取6次充满数据的4TB磁盘,则此机会等于4次读取6TB磁盘或3次读取8TB磁盘。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.