Maxim_Kazmin——Fotolia

开始 让自己跟上我们介绍内容的速度。

是否有错误纠正和检测代码的替代方案?

NAND闪存中的错误是可以纠正的,但随着NAND闪存的寿命即将结束,这就变得更加困难了。你是否利用了所有可用的错误修正工具?

如果您有使用服务器硬件的经验,那么您可能听说过错误校正内存。高性能服务器内存容易受到电或磁干扰,这可能导致个别位被错误记录。通常用于ssd的NAND内存容易出现这些自然发生的位翻转错误。

硬件制造商已经开发了纠错和检测代码,如ECC,可以检测和纠正内存中的比特错误。ECC可以代表任何一种错误校正码错误检查和纠正

ECC对正在读取或传输的数据进行错误检测并进行纠正。虽然比特错误最初可以通过纠错和检测代码(如ECC)来纠正,但随着写周期的增加,比特错误变得越来越常见,直到NAND内存最终失败。

NAND内存开始接近生命的尽头,它可能会达到一个点,比特错误可以检测,但不能通过使用纠错和检测代码来纠正。这就是RAISE发挥作用的地方。

RAISE是首字母缩写,代表独立硅元件冗余阵列.如果这听起来很像RAID的缩写,那就不是巧合了。RAISE技术很大程度上借鉴了RAID的概念

RAID 5是一种带有奇偶校验技术的条带。这意味着当一个文件被写入磁盘时,该文件将被分割成多个块,并以某种方式写入一系列磁盘,从而使每个磁盘都包含该文件的一部分。然而,在写入文件时,会将一些冗余数据写入每个磁盘。当阵列中的任何一个驱动器发生故障时,这些冗余数据足以防止数据丢失。

RAISE的工作原理与RAID类似,不同之处在于数据不是跨多个磁盘,而是跨单个磁盘中的多个页面。这并不是说ssd不能参与RAID阵列(它们可以),而是说类似RAID的活动发生在驱动器内部。

如果出现某些类型的位错误,而这些位错误不能通过错误纠正和检测代码来纠正,那么RAISE将使用冗余来重新构建页面——甚至整个块——使用已知性能良好的NAND内存单元。这个过程是自动进行的,并且完全透明。

深入挖掘闪存

搜索灾难复苏
搜索数据备份
搜索聚合基础设施
关闭
Baidu