数据存储方法以及存储系统技术方案

技术编号:14756450 阅读:85 留言:0更新日期:2017-03-02 23:08
本发明专利技术公开了一种数据储存方法及存储系统。所述方法包括:上位机将目标数据选择性发送第一控制器或者第二控制器;如果接收到目标数据的控制器为第一控制器,则第一控制器根据目标数据中的归属信息判断目标数据是否属于第一控制器处理;如果否,则第一控制器将目标数据转发至第二控制器,如果是,则第一控制器将目标数据发送至第一缓存设备或第二缓存设备中进行存储以获得第一镜像数据;在需要将缓存设备内的数据存储到存储设备时,第一控制器将第一缓存设备和第二缓存设备中的包含目标数据在内的由第一控制器处理之后的数据存储到存储设备中。上述方法,减小了对控制器内存的需求,减小了控制器之间镜像通路的压力。

【技术实现步骤摘要】

本专利技术涉及存储领域,尤其涉及一种数据存储方法以及存储系统
技术介绍
上位机中运算的数据,大部分最终都要发送到存储设备中进行存储。为了保证上位机将数据存储到存储设备过程的可靠性,存储系统通常采用多控制器结构。例如,如图1所示,存储系统120包括第一控制器121、第二控制器122以及存储设备123。其中,第一控制器121用于与上位机110数据通信,第二控制器122同样用于与上位机110数据通信,第一控制器121和第二控制器122之间通过PCIe/IB(nfiniband)连接,第一控制器121连接存储设备123,第二控制器同样连接存储设备123。由于上位机110与控制器之间读写数据的速度远比上位机110与存储设备123之间读写数据的速度快,当数据频繁读写时,上位机110不会将数据直接存储到读写速度比较慢的存储设备123中,而是向读写速度比较快的控制器发送数据,直到控制器内的数据达到一定的量或者上位机110确定要将数据存储到存储设备123时,控制器将控制器内的数据发送给存储设备123进行存储。例如,上位机110先将数据发送给第一控制器121和第二控制器122中的任意一个控制器,接收到数据的控制器会将接收到的数据存储在本控制器的缓存中,以便于和上位机110进行交互。此外,为了提高数据的可靠性,接收到数据的控制器将数据通过PCIe/IB(nfiniband)等通路传输到另一个控制器的内存中进行存储以获得一份镜像数据来进行备份。最后,当数据达到一定的量或者上位机110确定将数据存储到存储设备123时,控制器将内存中的数据处理后发送给存储设备123进行存储,从而提高数据读写效率。但是,在这种方式下,控制器的内存中必须预留镜像数据存储的空间,以容纳其他控制器发送过来的镜像数据,所以对控制器的内存的容量要求比较大。而且,由于PCIe/IB(nfiniband)通路的带宽是有限的,当镜像数据较多时,会给PCIe/IB(nfiniband)通路的正常数据传输带来压力。最后,当其中一个控制器出现问题时,所有数据都只能通过剩下的控制器进行存储,为了保证数据的可靠性,剩下的控制器不会将数据缓存在本控制器中,而是直接写入到存储设备中,大大降低了读写的速度。
技术实现思路
本专利技术实施例所要解决的技术问题在于,提供一种存储系统以及数据存储方法,实现了减少对内存容量的要求。第一方面,本专利技术提供了一种数据存储方法,包括:包含至少第一控制器以及第二控制器在内的至少两个控制器、存储设备以及包含第一缓存设备以及第二缓存设备在内的至少两个缓存设备,所述第一控制器用于与上位机进行通信,所述第一控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第二控制器用于与上位机进行通信,所述第二控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第一控制器连接所述第二控制器,所述第一缓存设备中设置有第一归属区域以及第二归属区域,所述第二缓存设备中设置有第一归属区域以及第二归属区域,所述第一归属区域的属性为:所述第一控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作但不能进行写操作,所述第二归属区域的属性为:所述第二控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作和写操作,所述第一控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作但不能进行写操作;所述第一控制器接收所述上位机所发送的目标数据;所述第一控制器根据所述目标数据中的归属信息判断所述目标数据是否属于所述第一控制器处理;如果否,则所述第一控制器将所述目标数据转发至所述第二控制器,如果是,则所述第一控制器将所述目标数据发送至所述第一缓存设备或所述第二缓存设备中的第一归属区域进行存储以获得第一镜像数据;在需要将缓存设备内的数据存储到所述存储设备时,所述第一控制器将所述第一缓存设备和所述第二缓存设备的第一归属区域中的包含所述目标数据在内的由所述第一控制器处理之后的数据存储到所述存储设备中。结合第一方面,本专利技术第一方面的第一种可能的实施方式中,所述方法还包括:如果所述第一缓存设备发生故障,则所述第一控制器以及所述第二控制器将所述第一缓存设备中的数据转移至所述第二缓存设备。结合第一方面,本专利技术第一方面的第二种可能的实施方式中,所述方法还包括:如果所述第一控制器将所述目标数据发送给所述第一缓存设备以获得所述第一镜像数据,则所述第一控制器还将所述目标数据发送给所述第二缓存设备以获得所述第二镜像数据。结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,本专利技术第一方面的第三种可能的实施方式中,当所述第一控制器出现故障时,所述第二控制器修改所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域的属性为:所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器读取所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域中的数据,并存储到所述存储设备中;所述第二控制器接收到上位机发送的数据后,可以将上位机发送的数据发送到所述第一缓存设备中的第一归属区域以及所述第二缓存设备中第一归属区域进行存储。结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,本专利技术第一方面的第四种可能的实施方式中,如果所述第一控制器和所述第二控制器发生故障,当第三控制器替换所述第一控制器,第四控制器替换所述第二控制器后,所述第三控制器从所述第一缓存设备中的第一归属区域和/或所述第二缓存设备中的第一归属区域读取所述第一控制器存储的数据,所述第四控制器从所述第一缓存设备中的第二归属区域和/或所述第二缓存设备中的第二归属区域读取所述第二控制器存储的数据,以恢复数据业务。第二方面,本专利技术提供了一种存储系统,包括:包含至少第一控制器以及第二控制器在内的至少两个控制器、存储设备以及包含第一缓存设备以及第二缓存设备在内的至少两个缓存设备,所述第一控制器用于与上位机进行通信,所述第一控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第二控制器用于与上位机进行通信,所述第二控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第一控制器连接所述第二控制器,所述第一缓存设备中设置有第一归属区域以及第二归属区域,所述第二缓存设备中设置有第一归属区域以及第二归属区域,所述第一归属区域的属性为:所述第一控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作但不能进行写操作,所述第二归属区域的属性为:所述第二控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作和写操作,所述第一控制器对所述第一缓存设备中的第二归属区域以及本文档来自技高网
...
数据存储方法以及存储系统

【技术保护点】
一种数据存储方法,其特征在于,包括:包含至少第一控制器以及第二控制器在内的至少两个控制器、存储设备以及包含第一缓存设备以及第二缓存设备在内的至少两个缓存设备,所述第一控制器用于与上位机进行通信,所述第一控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第二控制器用于与上位机进行通信,所述第二控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第一控制器连接所述第二控制器,所述第一缓存设备中设置有第一归属区域以及第二归属区域,所述第二缓存设备中设置有第一归属区域以及第二归属区域,所述第一归属区域的属性为:所述第一控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作但不能进行写操作,所述第二归属区域的属性为:所述第二控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作和写操作,所述第一控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作但不能进行写操作;所述第一控制器接收所述上位机所发送的目标数据;所述第一控制器根据所述目标数据中的归属信息判断所述目标数据是否属于所述第一控制器处理;如果否,则所述第一控制器将所述目标数据转发至所述第二控制器,如果是,则所述第一控制器将所述目标数据发送至所述第一缓存设备或所述第二缓存设备中的第一归属区域进行存储以获得第一镜像数据;在需要将缓存设备内的数据存储到所述存储设备时,所述第一控制器将所述第一缓存设备和所述第二缓存设备的第一归属区域中的包含所述目标数据在内的由所述第一控制器处理之后的数据存储到所述存储设备中。...

【技术特征摘要】
1.一种数据存储方法,其特征在于,包括:包含至少第一控制器以及第二控制器在内的至少两个控制器、存储设备以及包含第一缓存设备以及第二缓存设备在内的至少两个缓存设备,所述第一控制器用于与上位机进行通信,所述第一控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第二控制器用于与上位机进行通信,所述第二控制器还分别连接所述存储设备、所述第一缓存设备以及所述第二缓存设备,所述第一控制器连接所述第二控制器,所述第一缓存设备中设置有第一归属区域以及第二归属区域,所述第二缓存设备中设置有第一归属区域以及第二归属区域,所述第一归属区域的属性为:所述第一控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作但不能进行写操作,所述第二归属区域的属性为:所述第二控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作和写操作,所述第一控制器对所述第一缓存设备中的第二归属区域以及所述第二缓存设备中的第二归属区域可进行读取操作但不能进行写操作;所述第一控制器接收所述上位机所发送的目标数据;所述第一控制器根据所述目标数据中的归属信息判断所述目标数据是否属于所述第一控制器处理;如果否,则所述第一控制器将所述目标数据转发至所述第二控制器,如果是,则所述第一控制器将所述目标数据发送至所述第一缓存设备或所述第二缓存设备中的第一归属区域进行存储以获得第一镜像数据;在需要将缓存设备内的数据存储到所述存储设备时,所述第一控制器将所述第一缓存设备和所述第二缓存设备的第一归属区域中的包含所述目标数据在内的由所述第一控制器处理之后的数据存储到所述存储设备中。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述第一缓存设备发生故障,则所述第一控制器以及所述第二控制器将所述第一缓存设备中的数据转移至所述第二缓存设备。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述第一控制器将所述目标数据发送给所述第一缓存设备以获得所述第一镜像数据,则所述第一控制器还将所述目标数据发送给所述第二缓存设备以获得所述第二镜像数据。4.根据权利要求1至3任一权利要求所述的方法,其特征在于,当所述第一控制器出现故障时,所述第二控制器修改所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域的属性为:所述第二控制器对所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域可进行读取操作和写操作,所述第二控制器读取所述第一缓存设备中的第一归属区域以及所述第二缓存设备中的第一归属区域中的数据,并存储到所述存储设备中;所述第二控制器接收到上位机发送的数据后,可以将上位机发送的数据发送到所述第一缓存设备中的第一归属区域以及所述第二缓存设备中第一归属区域进行存储。5.根据权利要求1至3任一权利要求所述的方法,其特征在于,如果所述第一控制器和所述第二控制器发生故障,当第三控制器替换所述第一控制器,第四控制器替换所述第二控制器后,所述第三控制器从所述第一缓存设备中的第一归属区域和/或所述第二缓存设备中的第一归属区域读取所述第一控制器存储的数据,所述第四控制器从所述第一缓存设备中的第二归属区域和/或所述第二缓存设备中的第二归属区域读取所述第二控制器存储的数据,以恢复数据业务。6....

【专利技术属性】
技术研发人员:贾晓林许慧锋陈昊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1