一种在存储系统中计算奇偶校验的方法技术方案

技术编号:7109361 阅读:214 留言:0更新日期:2012-04-11 18:40
本发明专利技术描述了一种存储系统和使用所述系统的方法,所述存储系统被用于以RAID式的方法存储数据。存储数据包括奇偶校验数据可被检索,以使当不具有奇偶校验数据的存储数据和奇偶校验数据,或来自所有存储模块(除了某一个存储模块之外)的存储数据和奇偶校验数据当中的首个数据被接收时,所述存储数据可被恢复。对于低的写负荷,数据的写入被管理以使在时间间隔内,RAID条带中的存储模块中只有一个存储模块正被写入或擦除。

【技术实现步骤摘要】

本申请涉及计算机存储系统中计算奇偶校验的方法。
技术介绍
计算机存储系统可以是永久或非永久类型中的任何一个。永久存储类型的例子是磁芯、磁盘驱动器、磁带驱动器和半导体闪存。非永久存储类型可以是诸如动态随机存储器 (DRAM)之类的半导体存储。非永久存储类型典型地对数据的读和写都具有快速存取时间且被用作计算机主存储器或高速缓冲存储器。数据通过一种需要电力供应的方法被保留在这样的存储器中,且如果电力中断,存储在那里的信息可能会丢失。非永久存储系统通常具有后备电源,其可以是用于短时间电力中断的电容性存储设备,或是使用电池、发电机之类的用于长期数据保留的后备电源。永久存储设备,例如磁盘、磁带或闪存,即使电源被从设备上移除也会保留存储的数据,且常常被用于备份非永久数据存储设备和实际上不能提供持续电力的花费或可靠性的地方的长期数据存储。另外,因为更大量的数据被存储在永久存储设备中,技术发展被导向降低每比特存储的成本而不是存取速率。因此,许多计算系统使用多种存储类型来执行不同的功能,在那里,即时需要的数据被存储在非永久存储器中,且可以被备份在永久存储器中,而低频率存取的数据和大组数据被存储在永久存储器中。可以称为数据中心的计算机数据库系统或诸如因特网的分布式数据系统,以及与其关联的存储设备可以存储大量的数据。现今,这样的数据量可能超过1000太字节 (Terabyte, TB),且预计会继续增长。很多这些数据集充分大于用于即时存取的非永久存储器的容量,且在数据中心的服务器在服务来自客户机的请求时的响应时间可能是在系统执行中的严重瓶颈。这个限制很大程度上是永久存储介质的数据存取时间等待的结果。对于磁带系统,线性磁带必须被转换以使将要被读或写的数据块在读头或写头处定位。类似地,对于磁盘,该头必须被定位以跨越想要的数据扇区所处的数据道,然后磁盘控制器等待直到扇区在定位的头的下面旋转。这些操作中的任一个都充分慢于对非永久存储设备的读或写。在数据库中具有随机单元的数据单个存储单元需要读、写或修改的地方,这样的局限尤其严重。在对存储在存储器中的数据的请求以及对来自存储器的数据的检索之间的时间可称为等待时间。在目前使用的永久存储技术中,闪存比诸如磁盘之类的机械设备具有较低的等待时间,但比现有的非永久存储类型明显具有更长的等待时间。闪存和类似固态技3术的存储器的价格传统上遵循知名的摩尔定律的原则,该定律表示,在18个月的周期内, 设备容量通常倾向于翻番,且价格减半。依此,在闪存内而非在例如磁盘内存储数据的成本,预计很快会(与后者)达到相等。由于具有比磁盘明显较低的等待时间,采取当前可用的存储模块的设计和操作方法,闪存在存取时间上仍然有局限。闪存是一种通称,且多种类型的固态设备可被视为是闪存。最初有一种电可擦除只读存储器(EEPR0M),随后是其他发展,称为或非闪存 (NOR-flash)、与非闪存(NAND-flash)等等。所述每种技术具有不同的设计和结构以及关于数据的读和写的不同特性。就是说,在可被读或写的数据块(例如数据字、页或数据扇区)的最小尺寸上可能存在限制,或在读或写数据所需的时间上存在差异。在许多例子中,读或写数据的时间是不确定的,可能在大范围内变化。存储控制器或其他这类设备必须记录未解决的请求直到他们被实现,这种要求使得数据等待时间成为变量,它可使整个系统慢下来, 还会增加硬件以及用于管理存储器的软件的复杂度。此外,闪存设备的生存期被认为取决于耗尽机制,且是用读、写(当涉及闪存时也被称为“编程”)或擦除周期来测定的。当闪存被使用时此中术语“写”用于表示“编程”的意思。尽管对于各个单元或扇区,在生存期内周期的数目可能是个大的数目,但通过计算可以显示,实践中以及在病态情况下,由快速设备构成的大容量存储器的单独元件的生存期是足够短的,以致可能需要相当大的努力来拉平存储器的磨损以及执行差错检测和修正、标记不良数据块等等。独立 / 廉价磁盘冗余阵列(Redundant Arrays of Independent /Inexpensive Disks, RAID)的概念至少要回溯远至大卫·帕特森(David Patterson)、加思·吉布森 (Garth Gibson)和朗帝· H. 卡兹(Randy H. Katz)在1988年写的一篇论文。RAID允许磁盘存储器系统被安排用于通过增加冗余码防止他们包含的数据的损失。在适当配置的 RAID结构中,任意单个磁盘的损失不会妨碍存取或重构存储的数据的能力。没有RAID的磁盘阵列的平均故障间隔时间(Mean Time Between Failure, MTBF)除以所述阵列中的驱动数目,将与单独驱动的MTBF相等,因为任意磁盘的损失会导致数据的损失。因为如此,对于许多应用需求来说,一排磁盘驱动的MTBF将会太低。然而,可通过以各种各样的方式冗余地存储信息使磁盘阵列变成容错的。例如,RAID-3、RAID-4和RAID-5全都是主题的变种。该主题是基于奇偶校验的 RAID。将数据分布在几个磁盘处并增加辅助磁盘,而不是保留RAID-I中的数据的完整副本。可基于在其他磁盘上的数据来计算(使用布尔型“异或”)在辅助磁盘上的数据。若在该组磁盘中任意单个磁盘损坏了,可以通过执行对在剩余盘上的数据的计算来恢复存储在那个坏磁盘中的数据。这些工具没RAID-I那么贵,因为他们不要求RAID-I要求的100%的磁盘空间开销。然而,因为要计算磁盘上的数据,因此存在与写和磁盘损失后恢复数据相关联的性能影响。许多奇偶校验RAID的商业实施中使用缓冲存储器来缓解性能问题。在RAID-4磁盘阵列中有一组数据磁盘,通常4或5个,外加一个额外的用于存储对其他磁盘上的数据的奇偶校验的磁盘。因为所有写都会导致奇偶校验磁盘的更新,因此该磁盘成为使所有对全部阵列的写动作减速的性能瓶颈。RAID的基础原则是“条带化”,其是一种把多个驱动(存储单元)连接到一个逻辑存储单元中的方法。条带化包含把每个驱动的存储空间划分成可能小到一个扇区(例如512比特)或大到数兆字节的“条带”。这些条带随后被交叉存取以使组合的存储空间由来自条带中的每个驱动组成。应用环境的类型,输入/输出(I/O)或数据密集(data intensive), 是确定使用大的还是小的条带的设计根据。RAID-5可使用与RAID-4相同的硬件配置来实现。在RAID-4的情况中,对于各条带,奇偶校验块被存储在相同的磁盘上,以使人们可以拥有所谓的奇偶校验磁盘。在RAID-5 的情况中,对于各条带,奇偶校验块被存储在作为条带一部分的磁盘上,但奇偶校验块是分布式的以使他们根本上均勻地分布在组成存储系统的多个所述磁盘处。RAID-6是在数据保护中的另一个改进,其包含对跨越多个条带的奇偶校验的计算,例如使用条带的列作为计算奇偶校验的基础。RAID 4阵列的执行可能对读有利(与0级相同)。然而,写入要求每次更新奇偶校验数据。这特别减慢小的随机写入,尽管大的写入或顺序写入是相当快的。因为在阵列中只有一个驱动存储冗余数据,所以RAID 4阵列的每兆字节的成本可以相当低。跨越多磁盘的数据的分布可以通过专用的硬件或通过软件来管理。另外,存在基于部分软件部分硬件的解决方本文档来自技高网...

【技术保护点】
1.一种在存储系统中计算奇偶校验的方法,其特征在于,该方法包括:  在树中配置多个存储模块,所述树具有节点;  从两个第一节点的每一个传送数据给第三节点,所述第三节点离树的根较近;  使用来自所述两个第一节点和存储在第三节点处的数据对第一奇偶校验数据进行计算,以产生第二奇偶校验数据;  将第二奇偶校验数据从两个第二节点的每一个传送给离根较近的节点;  存储第三奇偶校验数据,所述第三奇偶校验数据是通过对接收自两个第三节点的每一个的第二奇偶校验数据和存储在离根较近的节点处的数据进行计算获得的。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:乔恩·CR·班尼特
申请(专利权)人:提琴存储器公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1