数据存储的方法和存储系统技术方案

技术编号:15329315 阅读:140 留言:0更新日期:2017-05-16 13:01
本申请实施例提供了一种数据存储的方法和存储系统。该方法应用于包括第一存储设备和至少一个第二存储设备的存储系统,其中,该第二存储设备为该第一存储设备的镜像存储设备,该方法包括:第一存储设备接收写请求消息,该写请求消息携带目标数据;该第一存储设备根据该目标数据,生成目标日志,该目标日志包括该目标数据和用于标识该目标数据的标识信息;该第一存储设备向该第二存储设备发送该目标日志;该第二存储设备存储该目标日志,且该存储不需要配置内存索引。因此,本申请实施例的数据存储的方法和存储系统能够在第二存储设备不配置内存索引的情况下,直接存储目标日志,从而减少了第二存储设备对CPU的占用。

Data storage method and storage system

The embodiment of the present invention provides a method for storing data and a storage system. This method is applied to the storage system includes a first storage device and at least a second storage device wherein the second storage device for image storage device of the first storage device, the method includes: a first storage device receives a write request message, the write request message carries the target data; the first storage device according to the target data. Generate log, the log target including the target data and identifies the identification information of the target data; the first storage device is sent to the second storage devices of the target log; storing the second storage devices of the target log, and the store does not need to configure the memory index. Therefore, the method and storage system is the embodiment of the invention the data storage can not allocate memory index in the second storage device under the condition of direct storage target log, thereby reducing the occupied second storage device of CPU.

【技术实现步骤摘要】
数据存储的方法和存储系统
本申请涉及计算机存储领域,并且更具体地,涉及数据存储的方法和存储系统。
技术介绍
镜像是冗余的一种类型,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像。在服务器上常用镜像操作是组建独立磁盘冗余阵列(RedundantArrayOfIndependentDisks,RAID)1,RAID1是将一个两块硬盘所构成的RAID磁盘阵列,其容量仅等于一个硬盘的容量,因为另一块只是当作数据“镜像”。在分布式存储系统中,为了达到可靠性的要求,选择在节点间使用镜像机制。将本地数据,复制一份在镜像节点保存,在故障情况下,快速恢复业务。在现有技术中,待存储数据发送到镜像节点,镜像节点需要为待存储数据配置内存索引,内存索引用于方便读取该镜像节点存储的数据;之后镜像节点需要申请资源空间,并设置资源空间的存储地址与内存索引的映射关系;最后将待存储数据存储到存储地址对应的资源空间中。现有技术镜像节点存储待存储数据的上述操作对镜像节点的中央处理器(CentralProcessingUnit,CPU)的占用较高。
技术实现思路
本申请实施例提供一种数据存储的方法和存储系统,能够减少镜像存储设备存储数据对CPU的占用。第一方面,本申请实施例提供了一种数据存储的方法,该方法应用于包括第一存储设备和至少一个第二存储设备的存储系统,其中,该第二存储设备为该第一存储设备的镜像存储设备,该方法包括:第一存储设备接收写请求消息,该写请求消息携带目标数据;该第一存储设备根据该目标数据,生成目标日志,该目标日志包括该目标数据和用于标识该目标数据的标识信息;该第一存储设备向该第二存储设备发送该目标日志;该第二存储设备存储该目标日志,且该存储该目标日志不需要配置内存索引。本申请实施例应用于包括第一存储设备和至少一个第二存储设备的存储系统中,且第二存储设备为一类第一存储设备的镜像存储设备。第一存储设备接收写请求消息,写请求消息中携带待写的数据(表示为目标数据),根据该目标数据,生成相应的目标日志,并向第二存储设备发送该目标日志将该目标日志直接存储到第二存储设备中,由于该目标日志包括用于表示该目标数据的标识信息,这样第二存储设备存储该目标日志时并不需要创建内存索引,相比现有技术中,第二存储设备需要配置内存索引而言,本申请可以直接存储该目标日志,从而节省了第二存储设备配置内存索引时对CPU的占用。在一些可能的实现方式中,该方法还包括:该第二存储设备在完成存储该目标日志时,向该第一存储设备发送存储完成消息;该第一存储设备存储该目标日志;该第一存储设备在完成该目标日志的存储和接收到该存储完成消息之后,发送写请求响应消息。第一存储设备完成写入目标日志,且接收到第二存储设备发送的存储完成消息之后,向IO设备发送写请求响应消息,这样避免现有技术中需要等待将目标数据存储到内存索引对应的资源空间之后才能向IO设备返回写请求响应消息,从而减少了发出写请求到收到写请求响应消息的时延。在一些可能的实现方式中,该第二存储设备包括多个资源空间;其中,该第二存储设备存储该目标日志包括:该第二存储设备根据该标识信息,确定存储该目标日志的第一资源空间,该第一资源空间为该第二存储设备的多个资源空间中满足该目标日志的资源需求的任一资源空间;该第二存储设备将该目标日志存储到该第一资源空间中。第二存储设备根据该标识信息选择合适的资源空间(表示为第一资源空间),将该目标日志存储到第二存储设备的第一资源空间中。此外,第二存储设备可以根据标识信息识别目标数据,以目标日志的形式可以将目标数据按照顺序进行有规律的存储,这样第二存储设备可以不需要为目标数据配置内存索引,从而使得节省了第二存储设备的CPU占用。在一些可能的实现方式中,该第二存储设备包括多个资源空间;该方法还包括:该第一存储设备获取第二资源空间的存储地址和该第二资源空间的存储容量,该第二资源空间为该第二存储设备的多个资源空间中任一资源空间;该第一存储设备根据该第二资源空间的存储容量和该标识信息,确定该第二资源空间是否满足该目标日志的资源需求;该第一存储设备在该第二资源空间满足该目标日志的资源需求时,根据RDMA编码方式、该目标日志和该第二资源空间的存储地址,生成RDMA消息,该RDMA消息包括该第二资源空间的存储地址和该目标日志;其中,该第一存储设备向该第二存储设备发送该目标日志包括:该第一存储设备向该第二存储设备的第二资源空间发送该RDMA消息;其中,该第二存储设备存储该目标日志包括:该第二存储设备的第二资源空间根据该RDMA消息,存储该目标日志。第二存储设备在将目标日志存储到第二资源空间之后,就可以向第一存储设备返回存储完成消息。本申请实施例相比第二存储设备接收目标日志,并需要为目标日志选择合适的资源空间,能够更进一步节省了第二存储设备的CPU的占用。在一些可能的实现方式中,该第一存储设备获取第二资源空间的存储地址和该第二资源空间的存储容量包括:该第一存储设备向该第二存储设备发送资源请求消息,该资源请求消息用于请求存储该目标日志的该第二资源空间;该第一存储设备接收该第二存储设备根据该资源请求消息发送的资源请求响应消息,该资源请求响应消息携带该第二资源空间的存储地址和该第二资源空间的存储容量。第一存储设备可以向第二存储设备发送资源请求消息,第二存储设备在多个资源空间中选择任意一个资源空间(表示为第二资源空间),并向第一存储设备发送资源请求响应消息,且在资源请求响应消息中携带该第二资源空间的存储地址和该第二资源空间的剩余容量,从而使得第一存储设备能够为目标日志选择合适的资源空间。第一存储设备可以只获取一次第二存储设备的资源空间的地址和存储容量,直至该资源空间没有剩余资源,或者剩余资源不能够满足当前待写入数据的大小,然后才进行下一次获取第二存储设备的资源空间的地址和存储容量。在一些可能的实现方式中,该方法还包括:该第一存储设备为该目标数据配置内存索引;该第一存储设备根据该内存索引,确定存储该目标数据的该第一存储设备的资源空间,其中,该第一存储设备的资源空间的存储地址对应于该内存索引;该第一存储设备将该目标数据写入该第一存储设备的资源空间中。第一存储设备为目标数据配置内存索引,以及为目标数据申请存储资源(表示为第一存储设备的资源空间),且配置已经申请的存储资源的存储地址与内存索引的映射关系,该映射关系用于后续第一存储设备能够根据内存索引读取到对应的存储地址中存储的数据,最后将目标数据写入到存储地址对应的资源空间中。这样第一存储设备将目标数据存储到有内存索引对应的资源空间中,并不会延长影响返回写请求响应消息的时间。第二方面,本申请实施例提供了一种存储系统,该存储系统可以实现上述方面所涉及方法中第一存储设备和第二存储设备所执行的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的单元或模块。第三方面,提供了一种存储系统,该存储系统的结构中包括存储器,该处理器被配置为支持上述方面所涉及方法中第一存储设备和第二存储设备所执行的功能。该通信接口用于支持该第一存储设备、第二存储设备与其它网元之间的通信。该存储器用于与处理器耦合,其保存该第一存储设备、该第二存本文档来自技高网...
数据存储的方法和存储系统

【技术保护点】
一种数据存储的方法,其特征在于,应用于包括第一存储设备和至少一个第二存储设备的存储系统,其中,所述第二存储设备为所述第一存储设备的镜像存储设备,所述方法包括:第一存储设备接收写请求消息,所述写请求消息携带目标数据;所述第一存储设备根据所述目标数据,生成目标日志,所述目标日志包括所述目标数据和用于标识所述目标数据的标识信息;所述第一存储设备向所述第二存储设备发送所述目标日志;所述第二存储设备存储所述目标日志,且所述存储所述目标日志不需要配置内存索引。

【技术特征摘要】
1.一种数据存储的方法,其特征在于,应用于包括第一存储设备和至少一个第二存储设备的存储系统,其中,所述第二存储设备为所述第一存储设备的镜像存储设备,所述方法包括:第一存储设备接收写请求消息,所述写请求消息携带目标数据;所述第一存储设备根据所述目标数据,生成目标日志,所述目标日志包括所述目标数据和用于标识所述目标数据的标识信息;所述第一存储设备向所述第二存储设备发送所述目标日志;所述第二存储设备存储所述目标日志,且所述存储所述目标日志不需要配置内存索引。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述第二存储设备在完成存储所述目标日志时,向所述第一存储设备发送存储完成消息;所述第一存储设备存储所述目标日志;所述第一存储设备在完成所述目标日志的存储和接收到所述存储完成消息之后,发送写请求响应消息。3.根据权利要求1或2所述的方法,其特征在于,所述第二存储设备包括多个资源空间;其中,所述第二存储设备存储所述目标日志包括:所述第二存储设备根据所述标识信息,确定存储所述目标日志的第一资源空间,所述第一资源空间为所述第二存储设备的多个资源空间中满足所述目标日志的资源需求的任一资源空间;所述第二存储设备将所述目标日志存储到所述第一资源空间中。4.根据权利要求1或2所述的方法,其特征在于,所述第二存储设备包括多个资源空间;所述方法还包括:所述第一存储设备获取第二资源空间的存储地址和所述第二资源空间的存储容量,所述第二资源空间为所述第二存储设备的多个资源空间中任一资源空间;所述第一存储设备根据所述第二资源空间的存储容量和所述标识信息,确定所述第二资源空间是否满足所述目标日志的资源需求;所述第一存储设备在所述第二资源空间满足所述目标日志的资源需求时,根据远程直接数据存取RDMA编码方式、所述目标日志和所述第二资源空间的存储地址,生成RDMA消息,所述RDMA消息包括所述第二资源空间的存储地址和所述目标日志;其中,所述第一存储设备向所述第二存储设备发送所述目标日志包括:所述第一存储设备向所述第二存储设备的第二资源空间发送所述RDMA消息;其中,所述第二存储设备存储所述目标日志包括:所述第二存储设备的第二资源空间根据所述RDMA消息,存储所述目标日志。5.根据权利要求4所述的方法,其特征在于,所述第一存储设备获取第二资源空间的存储地址和所述第二资源空间的存储容量包括:所述第一存储设备向所述第二存储设备发送资源请求消息,所述资源请求消息用于请求存储所述目标日志的所述第二资源空间;所述第一存储设备接收所述第二存储设备根据所述资源请求消息发送的资源请求响应消息,所述资源请求响应消息携带所述第二资源空间的存储地址和所述第二资源空间的存储容量。6.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:所述第一存储设备为所述目标数据配置内存索引;所述第一存储设备根据所述内存...

【专利技术属性】
技术研发人员:叶小杰倪敏芳
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1