永久主存储器的容错制造技术

技术编号:12821042 阅读:143 留言:0更新日期:2016-02-07 12:10
一种计算系统可包括:处理器和包括容错能力的永久主存储器。该计算系统可还包括存储控制器,用于将数据存储在永久主存储器中,并创建冗余数据。该存储控制器可也关于永久主存储器远程存储冗余数据。该存储控制器可还在永久主存储器故障期间访问冗余数据。

【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
当前数据存储设备常常包括容错,以确保如果设备错误或故障则不丢失数据。给当前数据存储设备提供的容错的示例为冗余独立盘阵列。冗余独立盘阵列(RAID)是控制多个盘驱动器并通过存储有冗余的数据提供容错的存储技术。RAID技术可以多种方式存储有冗余的数据。冗余数据存储方法的示例包括复制数据并将数据存储在多个位置和添加位以存储计算出的错误恢复位。附图说明在以下详细描述中参照附图描述特定示例,附图中:图1是包括容错的计算系统的示例的框图;图2是包括容错的计算系统的示例的框图;图3是将数据写入具有容错的存储器的方法的示例的过程流示意图;图4是访问具有容错的存储器的方法的示例的过程流示意图。具体实施方式本文描述的技术总体涉及冗余数据存储。更具体地,本文描述的技术涉及永久主存储器中的冗余数据存储。主存储器是直接或间接连接至中央处理单元(CPU)且对CPU而言可直接访问的主要存储器。为了将冗余数据存储到盘中,当前系统提供储存器阵列控制器,拦截块存储以及其关联的数据并将数据冗余地跨多个盘设备存储,以确保如果一个或多个设备故障则可恢复数据。一种方法是计算和存储错误恢复位,例如RAID5奇偶校验,使得在故障设备中丢失的任何数据都能从错误恢复位和来自无故障设备的数据重新创建。另一方法是,例如经由RAID1技术,复制数据并将数据存储在多个位置。可使用多种RAID级别和算法来提供期望级别的保护。其它系统将盘存储器的多个通道附着到系统。然后在系统的储存管理软件中处理数据的复制或RAID化。当数据块要被交付给储存器时,软件启动向多个盘的多传送,以便实施期望的RAID算法。当块传送到盘时为存储到为块储存设备工作的盘的数据提供冗余的这些当前系统,通过页面调度软件和IODMA机制管理。然而,这些方法并不很好地适应不仅从其短访问延迟,还从块传送IO处理器的缺席获得性能益处的直接访问的储存器,例如永久主存储器。直接访问的储存器还从仅移动实际修改或要求的数据而非整体块的效率而获得性能益处。当储存器被写入可靠数据时,不管它是在诸如自旋硬盘、固态盘之类的传统设备中,还是在直接访问的模块中,都能更好地保持数据完整性。当在非永久存储器和盘之间传送数据块时,使用低速盘设备,管理该数据完整性。在传送数据块时,提供软件或附着的储存器阵列,用于跨多个设备散播数据。在这个模型下,一个这样的设备故障将导致丢失一部分存储的位,但从其余设备可恢复完整数据。新系统架构利用密集、永久、低延迟时间存储器设备,来提供由处理器直接访问并在处理器缓存器中缓存的大储存器阵列。具有密度像闪存以及访问时间像DRAM存储器的新固态永久存储器设备允许系统的设计如储存器一样对待该存储器但如存储器一样访问它,即通过直接存储器访问,允许固态永久主存储器用作永久主存储器。为了保护该永久主存储器中存储的数据,除了路由对存储器的写请求外还以镜像或RAID方式将数据路由到分离的永久主存储器中的多个存储位置的能力被整合到访问该存储器的路径中。该路由确保在永久主存储设备故障的情况下的数据恢复,同时保持当前编程样式。通过以主存储器访问速度,在对小数据单位操作的主存储器访问路径(例如独立的缓存线)中添加容错功能,这种类型的数据保护(例如数据复制或RAID化)可延伸至直接存储器访问,例如永久主存储器,而不注意软件应用级处的保护机制。当前冗余解决方案仅在软件准备好交付数据后将数据移动到盘。在前进之前,系统必须随之等待该操作完成,包括将全部RAID数据写入多个设备所需要的时间。在本专利技术中,通过在独立缓存线写入发生时对永久主存储器执行RAID更新,可更快完成储存器交付。进一步,通过将存储器页面跨多个永久主存储器扩散,可并行处理多个缓存线的RAID操作。通过并行处理RAID操作,完成交易的时间缩短,并且对系统的要求得到平衡。从电力和数据移动远景来看,整体结果是受保护的数据跨存储设备的更快、更有效的分布。图1是包括容错的计算系统100的框图。在示例中,计算系统100是服务器集群。计算系统100包括多个节点,例如计算节点102。在进一步的示例中,计算系统100可还包括存储器节点,例如远程存储器节点112,或多个存储器节点。存储器节点是用于存储大量数据的存储器的集合,例如存储器设备的集合。节点102通过诸如服务器集群部署之类的网络104可通信地彼此联接。计算系统100可包括若干计算节点,例如几十个或甚至几千个计算节点。计算节点102包括用于执行存储的指令的中央处理单元(CPU)106。CPU106可以是单核处理器、多核处理器或任何合适的处理器。在示例中,计算节点102包括单个CPU。在另一示例中,计算节点102包括多个CPU,例如两个CPU、三个CPU或更多。计算节点102包括永久主存储器108。永久主存储器108可包括具有电池备份的易失性动态随机存取存储器(DRAM)、非易失性相变随机存取存储器(PCRAM)、自旋转移矩磁阻随机存取存储器(STT-MRAM)、电阻随机存储器存储器(reRAM)、忆阻器、FLASH或其它类型的存储器设备。例如,永久主存储器108可以是固态、永久、密集、快速存储器。快速存储器可以是与DRAM存储器具有类似存取时间的存储器。计算节点102进一步包括存储控制器110。存储控制器110与永久主存储器108通信并控制由CPU106对永久主存储器108的访问。永久存储器是诸如存储设备上的储存器之类的非易失性储存器。在示例中,存储控制器110可以是RAID存储控制器。当存储控制器110接收对永久主存储器108的访问请求时,存储控制器110生成对本地永久主存储器108的事务。计算系统100还包括远程存储器112。远程存储器112可以是永久存储器,并且可以与永久主存储器108相同。远程存储器112通过诸如网络104可通信地联接至计算节点,如服务器集群部署。远程存储器远离永久主存储器108并与之分离。例如,远程存储器112可以与永久主存储器108物理分离。在示例中,远程存储器可以是划分成存储器地址空间的区域或范围的永久存储器。每个区域可分派给计算节点102。每个区域可附加地由除所分派的计算节点外的计算节点访问。如果所分派的计算节点发生故障,另外的计算节点可访问该区域,或该区域可被再分派,以便保持对远程存储器中数据的访问。远程存储器112包括冗余数据114。远程存储器112经由冗余数据114为永久主存储器108充当容错能力(即提供数据恢本文档来自技高网...

【技术保护点】
一种计算系统,包括:处理器;包括容错能力的永久主存储器;以及存储控制器,用于:将数据存储在所述永久主存储器中;创建冗余数据;相对于所述永久主存储器远程地存储所述冗余数据;以及在所述永久主存储器的故障期间访问所述冗余数据。

【技术特征摘要】
【国外来华专利技术】1.一种计算系统,包括:
处理器;
包括容错能力的永久主存储器;以及
存储控制器,用于:
将数据存储在所述永久主存储器中;
创建冗余数据;
相对于所述永久主存储器远程地存储所述冗余数据;以及
在所述永久主存储器的故障期间访问所述冗余数据。
2.如权利要求1所述的计算系统,其中所述容错能力包括将数据存储到所述永久
主存储器并将所述数据镜像到远程永久存储器。
3.如权利要求1所述的计算系统,其中所述容错能力包括将数据存储到所述永久
主存储器,并基于旧数据与新数据之间的差别更新至少一个奇偶校验远程存储器。
4.如权利要求1所述的计算系统,其中所述计算系统包括多个计算节点和多个永
久主存储器,每个计算节点包括:
处理器;和
存储控制器,用于响应于所述处理器的请求与所述永久主存储器通信,
其中所述永久主存储器远离所述计算节点放置,所述永久主存储器包括共享永久
主存储器池,该共享永久主存储器池的区域被分配给每个计算节点。
5.一种包括容错的计算系统,所述计算系统包括:
用于存储数据的永久主存储器;
用于存储冗余数据的远程永久主存储器;以及
存储控制器,
其中所述存储控制器在所述永久主存储器中的数据不能访问时,访问所述冗余数
据。
6.如权利要求5所述的系统,其中所述冗余数据包括所述数据的镜像拷贝。
7.如权利要求5所述的系统,其中所述计算系统包括:
多个节点,每个节点包括用于存储数据的永久主存储器;以及
用于存储冗余数据的远程永久存储器,所述远程永久存储器充当奇偶校验节点,
并包括所述计算系统的节点的永久主存储器中的数据的奇偶校验位的校验和,
其中所述校验和在数据被写入一节点的永久主存储器时被更新;并且
其中当读取所述数据失败时,所述校验和以及对所述校验和作出贡献的所有其它
数据值被读取并组合,以重构丢失的数据。
8.如权利要求5所述的系统,其中所述计算系统包括多个计算节点和多个永久主
存储器,每个计算节点包括:
处理器;和
存储控制器,用于响应于所述处理器的请求与所述永久主存储器通信;
所述多个永久主存储器包括由地址选择的用于存储数据的第一永久主存储器,由

【专利技术属性】
技术研发人员:格雷格·B·莱萨日特达莱·C·莫里斯加里·戈斯廷罗斯·W·赫里尔安德鲁·R·惠勒布莱纳·D·盖瑟
申请(专利权)人:惠普发展公司有限责任合伙企业
类型:发明
国别省市:美国;US

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

1