大多数廉价的SATA磁盘驱动器的额定“每10^14位读取一个不可恢复的读取错误”。
这是什么意思?
10^14位仅为12.5 TByte。如果我有一个完整的2 TByte磁盘,并将它复制到第二个磁盘,那么实际上是否存在大约1/6的文件损坏的可能性?
如果发生这种情况,是否会对受影响的块进行标记和重新分配?我认为是这样的,因为如果读取在重试时是成功的,那么它不是不可恢复的读取错误。
然而,我使用这些磁盘驱动器已经有几年了,我没有注意到坏块数量的增加,而且RAID控制器日志也没有显示任何读取问题。
编辑: RAID控制器每周对每个磁盘进行一次巡检,这样每年大约可以读取100 TByte。这仍然小于10^15位。
另一方面,在2年内,50个磁盘中有4个发生了总故障,这增加了错误率。
我没有足够的有统计意义的数据来进行陈述,但在我的例子中,实际的错误率似乎在10^14到10^15之间,这与规范是一致的。
发布于 2014-04-20 20:36:02
在10^14中给出的1读错误的统计量就是一个统计数据点。这并不意味着在任何给定的磁盘中,您都会看到错误,也没有说它必然发生在磁盘生命周期的开始到结束。这只意味着磁盘没有企业磁盘的级别高,根据我的经验(开发企业存储系统),消费者和企业磁盘也永远达不到完整的MTBF数字。我也不记得他们之间有多大的区别。有一些不同,但不是很大的差别。
当读取一个块而该块失败时,磁盘将将扇区放入一个持有的list.When下一个扇区将被写入,将尝试写入并验证扇区,如果该扇区工作正常,将不再执行任何操作。如果核查失败,将重新分配扇区。
在许多情况下,磁盘和RAID甚至在它们成为一个大问题之前就可以动态地纠正坏扇区。对磁盘和RAID阵列的磁盘进行后台媒体扫描,这两项工作都是为了保护数据。企业存储数组使用更细粒度的检查,以确保即使是问题较小的磁盘扇区也将得到处理和修复。
在RAID数组中使用使用者驱动器还有其他问题,TLER就是其中之一,这实际上意味着即使是一个坏扇区,您也可能会丢失磁盘,因为磁盘在读取扇区之前停止响应。TLER实际上是避免当磁盘只是一个小媒体问题时调用磁盘失败的RAID的方法。如果您启用了TLER,磁盘将很快放弃扇区,并让RAID在其级别上处理故障。
发布于 2014-04-20 09:36:15
您应该小心使用RAID和使用者驱动器。根据您的RAID控制器的不同,如果磁盘由于没有塔勒而需要太长时间才能响应,它就会弹出。
无法恢复的块发生了什么,描述了这里。
当磁盘控制器的固件发现扇区不好或不稳定时,磁盘控制器将逻辑扇区映射到不同的物理扇区。在硬盘的正常运行中,对坏扇区的检测和重新映射应在数据丢失之前以对系统其他部分透明的方式进行。然而,应该记住的是,硬盘驱动器的物理体的损坏并不仅仅影响存储的数据的一个区域。通常,身体损害会干扰许多不同文件的部分。
至于关于块被损坏的1/6可能性的问题,这对于块来说是正确的,但是,操作系统/文件系统有自己的方法来处理坏块,并从其中恢复,因此OS/FS很可能能够自己恢复坏块,而不会注意到文件的任何损坏。
发布于 2014-04-22 09:55:08
这意味着设置了它们的质量控制,因此您可能期望在每读取12.5TB时就会有一个不可恢复的读取。这并不意味着会有一个,只是他们的质量控制已经被校准了。
当您考虑RAID组时,这会产生一些非常严重的影响--一个5+1 RAID 5的2TB驱动器正在接近这个数字。RAID重建需要对整个RAID组进行重新扫描,因此重建失败的概率开始变得很大。部分解决方案涉及较小的RAID组或使用RAID 6,但这会带来自身的后果。(RAID-6,特别是聪明,会烧掉你的写惩罚,特别是在‘便宜/慢’磁盘)。
这就是为什么‘服务器磁盘’‘如此昂贵’的主要原因之一是它们往往是1/ 10^16 -这大大降低了复合故障的几率。
但是你应该注意--仅仅因为预期的误差率是12.5TB,这并不意味着你就不会倒霉。RAID从来都不是备份的替代品。(但我怀疑你已经知道了。)
https://serverfault.com/questions/590183
复制相似问题