CN103049218A - 数据存储方法和控制器 - Google Patents

数据存储方法和控制器 Download PDF

Info

Publication number
CN103049218A
CN103049218A CN2012105302263A CN201210530226A CN103049218A CN 103049218 A CN103049218 A CN 103049218A CN 2012105302263 A CN2012105302263 A CN 2012105302263A CN 201210530226 A CN201210530226 A CN 201210530226A CN 103049218 A CN103049218 A CN 103049218A
Authority
CN
China
Prior art keywords
data
controller
pcie card
pcie
electronic equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012105302263A
Other languages
English (en)
Other versions
CN103049218B (zh
Inventor
徐超
杨万云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210530226.3A priority Critical patent/CN103049218B/zh
Publication of CN103049218A publication Critical patent/CN103049218A/zh
Application granted granted Critical
Publication of CN103049218B publication Critical patent/CN103049218B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种数据存储方法和控制器,属于数据存储领域。所述方法应用于第一控制器,所述第一控制器内具有至少一个第一PCIE卡,所述方法包括:所述第一控制器接收电子设备发来的数据;所述第一控制器将收到的所述数据存储在所述第一PCIE卡中;所述第一控制器向所述电子设备返回写数据完成的消息。一种第一控制器,具有至少一个第一PCIE卡,包括:接收模块、控制模块和发送模块。本发明节省了大量的内存存储空间,提高了写数据的性能。

Description

数据存储方法和控制器
技术领域
本发明涉及数据存储领域,特别涉及一种数据存储方法和控制器。
背景技术
现有的能提供存储功能的系统级设备如计算机、服务器、存储阵列等主要采用机械硬盘作为存储介质。机械硬盘由于具有机械部件,因此,读取数据的性能较低。近年来固态硬盘(英文:Solid State Disk,缩写:SSD)正在逐步兴起,固件硬盘的主要特点是没有机械部件、较高的读数据的存储性能等等。随着固态硬盘的发展,固态存储系统也得到了高速发展,具有更高的存储性能和更好的可靠性。
现有的存储阵列系统,当执行写操作时是先将数据写入到本端内存中,并且镜像至对端内存,完成镜像后返回写数据完成的消息,本端内存中的数据完成数据校验后再存储到SSD中。但是,该方案将数据写入本端内存以及镜像到对端内存,会占用大量的内存存储空间,造成时延,降低了写数据的性能。
发明内容
为了提高存储系统读写数据的性能,本发明提供了一种数据存储方法和控制器。所述技术方案如下:
第一方面,本发明提供了一种数据存储方法,应用于第一控制器,所述第一控制器内具有至少一个第一快速外围组件互连PCIE卡,所述方法包括:
所述第一控制器接收电子设备发来的数据;
所述第一控制器将收到的所述数据存储在所述第一PCIE卡中;
所述第一控制器向所述电子设备返回写数据完成的消息。
结合第一方面,第一方面的第一种实施方式下,所述第一控制器与第二控制器连接,所述第二控制器内具有至少一个第二PCIE卡,所述方法还包括:
所述第一控制器将收到的所述数据存储在所述第二控制器的第二PCIE卡中,用于备份。
结合第一方面,第一方面的第二种实施方式下,所述方法还包括:
所述第一控制器将所述第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
所述第一控制器将所述第一PCIE卡内存储的数据写入所述第一控制器的内存中,并对所述数据进行校验,将校验后的数据写入保护模式的SSD中。
结合第一方面的第二种实施方式,第一方面的第三种实施方式下,所述方法还包括:
将校验后的数据写入保护模式的SSD之后,所述第一控制器删除内存中的数据。
结合第一方面、第一方面的第一种、第二种、第三种实施方式中的任一种,第一方面的第四种实施方式下,所述方法还包括:
当所述第一控制器接收到所述电子设备发来的读数据命令时,从所述第一PCIE卡中读取所述数据,并向所述电子设备返回所述数据和读数据完成的消息。
第二方面,本发明还提供了一种第一控制器,所述第一控制器内具有至少一个第一快速外围组件互连PCIE卡,所述第一控制器包括:
接收模块,用于接收电子设备发来的数据;
控制模块,用于将所述接收模块收到的所述数据存储在所述第一PCIE卡中;
发送模块,用于在所述控制模块将所述数据存储在所述第一PCIE卡中后,向所述电子设备返回写数据完成的消息。
结合第二方面,第二方面的第一种实施方式下,所述第一控制器与第二控制器连接,所述第二控制器内具有至少一个第二PCIE卡,所述控制模块还用于:
将所述接收模块收到的所述数据存储在所述第二控制器的第二PCIE卡中,用于备份。
结合第二方面,第二方面的第二种实施方式下,所述控制模块还用于:
将所述第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
将所述第一PCIE卡内存储的数据写入所述第一控制器的内存中,并对所述数据进行校验,将校验后的数据写入保护模式的SSD中。
结合第二方面的第二种实施方式,第二方面的第三种实施方式下,所述控制模块还用于:
将校验后的数据写入保护模式的SSD之后,删除内存中的数据。
结合第二方面,第二方面的第一种、第二种、第三种实施方式中的任一种,第二方面的第四种实施方式下,
所述接收模块还用于:接收所述电子设备发来的读数据命令;
所述控制模块还用于:当所述接收模块接收到所述电子设备发来的读数据命令时,从所述第一PCIE卡中读取所述数据,并向所述电子设备返回所述数据和读数据完成的消息。
本发明提供的技术方案带来的有益效果是:第一控制器接收到电子设备发来的数据时,将收到的数据存储在第一控制器内的第一PCIE卡中,然后向电子设备返回写数据完成的消息,与现有的将数据存储在本端内存以及镜像到对端内存然后返回写数据完成的消息相比,节省了大量的内存存储空间,减少了时延,提高了写数据的性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的数据存储方法流程图;
图2是本发明实施例提供的控制器向SSD存储数据的示意图;
图3是本发明实施例提供的控制器存储数据至多个PCIE卡的示意图;
图4是本发明另一实施例提供的数据存储方法流程图;
图5是本发明实施例提供的两个控制器备份存储数据的一个示意图;
图6是本发明实施例提供的两个控制器备份存储数据的另一个示意图;
图7是本发明又一实施例提供的第一控制器的结构示意图;
图8是本发明再一实施例提供的第一控制器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明涉及控制器和电子设备。所述控制器包括但不限于:中央处理器(英文:Central Processing Unit,缩写:CPU)、内存、快速外围组件互连(英文:Peripheral Component Interconnect Express,缩写:PCIE)卡、交换(英文:Switch)功能、前端接口、后端接口等。所述交换功能用于对数据进行交换处理。所述电子设备是指与控制器相连接,且可以互相传输数据的设备。该电子设备可以通过控制命令控制向控制器写入数据、或者从控制器读出数据。通常,控制器通过前端接口与该电子设备相连接,通过后端接口与SSD相连接。所述SSD可以内置在控制器中,或者也可以在控制器外部与控制器相连接,本发明对此不做具体限定。
参见图1,本发明一实施例提供了一种数据存储方法,应用于第一控制器,该第一控制器内具有至少一个第一PCIE卡,该方法包括:
101:第一控制器接收电子设备发来的数据。
102:第一控制器将收到的数据存储在第一PCIE卡中。
103:第一控制器向电子设备返回写数据完成的消息。
结合上述方法,第一种实施方式下,第一控制器还可以与第二控制器连接,该第二控制器内具有至少一个第二PCIE卡,所述方法还可以包括:
第一控制器将收到的数据存储在第二控制器的第二PCIE卡中,用于备份。
结合上述方法,第二种实施方式下,所述方法还可以包括:
第一控制器将第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
第一控制器将第一PCIE卡内存储的数据写入第一控制器的内存中,并对数据进行校验,将校验后的数据写入保护模式的SSD中。
参见图2,为本实施例提供的上述第一控制器向SSD存储数据的示意图。其中,第一控制器包括:内存、CPU、交换功能、前端接口、后端接口和第一PCIE卡。该第一PCIE卡与交换功能相连接。所述SSD为保护模式的SSD。第一控制器存储数据的流程如下:①当第一控制器的前端接口从电子设备接收到数据时,第一控制器可以通过交换功能将收到的数据存储在第一PCIE卡中,并返回写数据完成的消息给该电子设备;②第一控制器将第一PCIE卡内的数据写入内存中;③第一控制器的CPU对内存中的该数据进行校验,并将校验得到的校验数据写入内存中;④第一控制器将内存中的数据和校验数据一同写入SSD中。
结合上述方法的第二种实施方式,第三种实施方式下,所述方法还可以包括:
将校验后的数据写入保护模式的SSD之后,第一控制器删除内存中的数据。这样可以进一步地节省内存的存储空间,避免资源浪费。
结合上述方法,或者上述方法的第一种、第二种、第三种实施方式中的任一种,第四种实施方式下,所述方法还可以包括:
当第一控制器接收到电子设备发来的读数据命令时,从第一PCIE卡中读取数据,并向电子设备返回数据和读数据完成的消息。
参见图3,为本实施例提供的上述第一控制器向多个PCIE卡存储数据的示意图。其中,第一控制器包括:内存、CPU、交换功能、前端接口、后端接口和第一PCIE卡。这里以第一控制器包括两个第一PCIE卡为例进行说明。如图2所示,这两个第一PCIE卡均与交换功能相连接。当第一控制器的前端接口从电子设备接收到数据时,第一控制器可以通过第一控制器的交换功能将收到的数据分别存储在这两个第一PCIE卡中,用以备份。这种情况下,如果这两个第一PCIE卡中的一个发生故障,则可以通过存储在另一个第一PCIE卡中的数据进行恢复,从而增强了可靠性,有效地解决了PCIE卡故障或失效的问题。
另外,本实施例中,当第一控制器收到数据后,还可以通过前端接口以多址-直接内存存取(英文:Multi-Direct Memory Access,缩写:Multi-DMA)方式分别传输数据给交换功能和内存,其中,交换功能收到数据再转发给PCIE卡进行数据存储,内存收到数据后进行缓存。这种情况下,由于内存中也保存了一份与PCIE卡中保存的数据相同的数据,因此,当第一控制器在写数据完成后,又收到读数据的命令时,可以直接从内存中读取该数据,与从PCIE卡读取该数据相比,提高了读取速度,从而提升了数据的传输效率。当SSD为保护模式的SSD时,也无需再向内存写入该数据,而是可以直接对内存中的数据进行校验,进一步地减少了时延。
本实施例提供的上述方法,当第一控制器接收到电子设备发来的数据时,将收到的数据存储在第一控制器内的第一PCIE卡中,然后向电子设备返回写数据完成的消息,与现有的将数据存储在本端内存以及镜像到对端内存然后返回写数据完成的消息相比,节省了大量的内存存储空间,减少了时延,提高了写数据的性能。当第一控制器内的第一PCIE卡为多个时,分别存储第一控制器收到的数据,可以实现备份,增强了数据的可靠性,有效地解决了PCIE卡故障或失效的问题。
参见图4,本发明另一实施例提供了一种数据存储方法,应用于第一控制器,该第一控制器内具有至少一个第一PCIE卡,且第一控制器与第二控制器连接,该第二控制器内具有至少一个第二PCIE卡,该方法包括:
401:第一控制器接收电子设备发来的数据。
402:第一控制器将收到的数据存储在第一PCIE卡中,并且,将收到的数据存储在第二控制器的第二PCIE卡中,用于备份。
403:第一控制器向电子设备返回写数据完成的消息。
结合上述方法,第一种实施方式下,进一步地,所述方法还可以包括以下步骤:
第一控制器将第一PCIE卡内存储的数据写入非保护模式的SSD中;或者,
第一控制器将第一PCIE卡内存储的数据写入第一控制器的内存中,并对数据进行校验,将校验后的数据写入保护模式的SSD中。
结合本实施例提供的上述方法的第一种实施方式,在第二种实施方式下,所述方法还可以包括:
第一控制器将校验后的数据写入保护模式的SSD之后,删除内存中的数据。这样可以进一步地节省内存的存储空间,避免资源浪费。
本实施例中,在PCIE卡中存储的数据写入SSD之后,PCIE卡内的数据可以采用预设的淘汰算法来删除,以进一步节省资源。例如,按照预设的时间定期删除等等,本发明对此不做具体限定。
结合本实施例提供的上述方法,或者上述方法的第一种、第二种实施方式中的任一种,第三种实施方式下,所述方法还可以包括:
当第一控制器接收到电子设备发来的读数据命令时,从第一PCIE卡中读取数据,并向电子设备返回已读取的该数据和读数据完成的消息。这种情况下,在从PCIE卡读取数据后,直接返回读数据完成的消息给电子设备,与从SSD读取数据后再返回读数据完成的消息给电子设备相比,极大地降低了时延,缩短了输入输出IO路径,提高了系统性能。
参见图5,为本发明实施例提供的两个控制器备份存储数据的一个示意图。其中,第一控制器包括:内存、CPU、交换功能、前端接口、后端接口和第一PCIE卡。第二控制器包括:内存、CPU、交换功能、前端接口、后端接口和第二PCIE卡。第一控制器的前端接口从电子设备接收到数据后,通过第一控制器的交换功能将该数据存储在第一控制器的第一PCIE卡中,并且,通过第一控制器的交换功能将该数据存储在第二控制器的第二PCIE卡中用以备份。第二控制器的第二PCIE卡中存储的数据为第一控制器的第一PCIE卡中存储的数据的镜像备份,第一PCIE卡和第二PCIE卡中存储的数据为相同的数据。这种情况下,如果第一控制器或者第一PCIE卡发生故障,则可以通过存储在第二控制器的第二PCIE卡中存储的数据进行恢复,从而有效地解决了单点故障或单点失效的问题。
在图5所示的场景中,第二控制器本身也可以按照与第一控制器相同的方式对数据进行存储,当从第二控制器的前端接口收到数据时,通过第二控制器的交换功能将该数据存储在第二控制器的第二PCIE卡中,并且,也可以通过第二控制器的交换功能将该数据存储在第一控制器的第一PCIE卡中用以备份。第二控制器存储数据以及备份数据的过程,与第一控制器存储和备份数据的过程相同,此处不做过多说明。
另外,本发明中,当第一控制器中具有多个第一PCIE卡时,也可以向另一个控制器的PCIE卡中存储数据用以备份。参见图6,为本实施例提供的两个控制器备份存储数据的另一个示意图。其中,第一控制器中包括两个第一PCIE卡,这两个第一PCIE卡分别与第一控制器的交换功能相连接,以及分别与第二控制器的交换功能相连接。第二控制器中包括两个第二PCIE卡,这两个第二PCIE卡分别与第二控制器的交换功能相连接,以及分别与第一控制器的交换功能相连接。当第一控制器收到数据时,分别通过第一控制器的交换功能向第一控制器内的两个第一PCIE卡存储数据,并且,还分别通过第二控制器的交换功能向第二控制器的两个第二PCIE卡存储数据。这种情况下,如果第一控制器或任一个第一PCIE卡发生故障,可以通过存储在第二控制器的任一个第二PCIE卡中存储的数据进行恢复,从而有效地解决了控制器故障或失效、以及PCIE卡故障或失效的问题。
此外,本实施例中,当第一控制器收到数据后,还可以通过前端接口以Multi-DMA方式分别传输数据给交换功能和内存,其中,交换功能收到数据再转发给PCIE卡进行数据存储,内存收到数据后进行缓存。这种情况下,由于内存中也保存了一份与PCIE卡中保存的数据相同的数据,因此,当第一控制器在写数据完成后,又收到读数据的命令时,可以直接从内存中读取该数据,与从PCIE卡读取该数据相比,提高了读取速度,从而提升了数据的传输效率。当SSD为保护模式的SSD时,也无需再向内存写入该数据,而是可以直接对内存中的数据进行校验,进一步地减少了时延。
本实施例中,当一个控制器向多个PCIE卡存储数据时,具体地,可以先创建该数据的副本,然后再通过多播(英文:Multi-Cast)方式同时分发给各个PCIE卡中,达到了同时分发的效果。
再有,值得一提的是,基于PCIE卡具有备电功能,在PCIE卡中的非易失性存储介质中可以存储系统异常时记录的当前处理的读写相关信息,因此,本实施例的任一个场景中的任一个控制器,均可以为不包含备用电池单元(英文:Battery Backup Unit,缩写:BBU)的控制器,由PCIE卡的供电功能替代BBU的供电功能,根据PCIE卡内的非易失性存储介质中保存的所述读写关系信息,进行系统的恢复,使得系统恢复后能够继续之前未处理完成的读写操作,不仅实现了系统恢复,而且,与由BBU进行供电的方式相比,减少了系统缓存,降低了成本。
本实施例提供的上述方法,当第一控制器接收到电子设备发来的数据时,将收到的数据存储在第一控制器内的第一PCIE卡中,然后向电子设备返回写数据完成的消息,与现有的将数据存储在本端内存以及镜像到对端内存然后返回写数据完成的消息相比,节省了大量的内存存储空间,减少了时延,提高了写数据的性能。进一步地,通过将第一控制器收到的数据还备份至本控制器的另一个PCIE卡中,或者备份至另一个控制器的一个或多个PCIE卡中,通过冗余备份进一步提高系统的健壮性与可靠性,有效地解决了单点故障或失效的问题,进一步地提升了写数据的性能。采用PCIE卡作为数据缓存,在读数据时从PCIE卡读取数据,与从SSD读取数据相比,减少了读数据时延,提升了读数据的性能。
参见图7,本发明又一实施例还提供了一种第一控制器,该控制器内具有至少一个第一PCIE卡,该第一控制器包括:
接收模块701,用于接收电子设备发来的数据;
控制模块702,用于将接收模块701收到的数据存储在第一PCIE卡中;
发送模块703,用于在控制模块702将数据存储在第一PCIE卡中后,向电子设备返回写数据完成的消息。
结合上述第一控制器,第一种实施方式下,第一控制器与第二控制器连接,第二控制器内具有至少一个第二PCIE卡,控制模块702还用于:
将接收模块701收到的数据存储在第二控制器的第二PCIE卡中,用于备份。
结合上述第一控制器,第二种实施方式下,控制模块702还用于:
将第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
将第一PCIE卡内存储的数据写入第一控制器的内存中,并对数据进行校验,将校验后的数据写入保护模式的SSD中。
结合上述第一控制器的第二种实施方式,第三种实施方式下,控制模块702还用于:
将校验后的数据写入保护模式的SSD之后,删除内存中的数据。
结合上述第一控制器,第一控制器的第一种、第二种、第三种实施方式中的任一种,第四种实施方式下,接收模块701还用于:接收电子设备发来的读数据命令;
控制模块702还用于:当接收模块701接收到电子设备发来的读数据命令时,从第一PCIE卡中读取数据,并向电子设备返回数据和读数据完成的消息。
本实施例提供的上述第一控制器可以执行上述任一方法实施例中提供的方法,详细过程见方法实施例中的描述,此处不赘述。
本实施例提供的上述第一控制器,当接收到电子设备发来的数据时,将收到的数据存储在第一控制器内的第一PCIE卡中,然后向电子设备返回写数据完成的消息,与现有的将数据存储在本端内存以及镜像到对端内存然后返回写数据完成的消息相比,节省了大量的内存存储空间,减少了时延,提高了写数据的性能。进一步地,通过将第一控制器收到的数据还备份至本控制器的另一个PCIE卡中,或者备份至另一个控制器的一个或多个PCIE卡中,通过冗余备份进一步提高系统的健壮性与可靠性,有效地解决了单点故障或失效的问题,进一步地提升了写数据的性能。采用PCIE卡作为数据缓存,在读数据时从PCIE卡读取数据,与从SSD读取数据相比,减少了读数据时延,提升了读数据的性能。
参见图8,本发明再一实施例还提供了一种第一控制器,该控制器内具有至少一个第一PCIE卡,该第一控制器包括:
接收机801,用于接收电子设备发来的数据;
处理器802,用于将接收机801收到的数据存储在第一PCIE卡中;
发射机803,用于在处理器802将数据存储在第一PCIE卡中后,向电子设备返回写数据完成的消息。
结合上述第一控制器,第一种实施方式下,第一控制器与第二控制器连接,第二控制器内具有至少一个第二PCIE卡,处理器802还用于:
将接收机801收到的数据存储在第二控制器的第二PCIE卡中,用于备份。
结合上述第一控制器,第二种实施方式下,处理器802还用于:
将第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
将第一PCIE卡内存储的数据写入第一控制器的内存中,并对数据进行校验,将校验后的数据写入保护模式的SSD中。
结合上述第一控制器的第二种实施方式,第三种实施方式下,处理器802还用于:
将校验后的数据写入保护模式的SSD之后,删除内存中的数据。
结合上述第一控制器,第一控制器的第一种、第二种、第三种实施方式中的任一种,第四种实施方式下,接收机801还用于:接收电子设备发来的读数据命令;
处理器802还用于:当接收机801接收到电子设备发来的读数据命令时,从第一PCIE卡中读取数据,并向电子设备返回数据和读数据完成的消息。
本实施例提供的上述第一控制器可以执行上述任一方法实施例中提供的方法,详细过程见方法实施例中的描述,此处不赘述。
本实施例提供的上述第一控制器,当接收到电子设备发来的数据时,将收到的数据存储在第一控制器内的第一PCIE卡中,然后向电子设备返回写数据完成的消息,与现有的将数据存储在本端内存以及镜像到对端内存然后返回写数据完成的消息相比,节省了大量的内存存储空间,减少了时延,提高了写数据的性能。进一步地,通过将第一控制器收到的数据还备份至本控制器的另一个PCIE卡中,或者备份至另一个控制器的一个或多个PCIE卡中,通过冗余备份进一步提高系统的健壮性与可靠性,有效地解决了单点故障或失效的问题,进一步地提升了写数据的性能。采用PCIE卡作为数据缓存,在读数据时从PCIE卡读取数据,与从SSD读取数据相比,减少了读数据时延,提升了读数据的性能。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据存储方法,其特征在于,应用于第一控制器,所述第一控制器内具有至少一个第一快速外围组件互连PCIE卡,所述方法包括:
所述第一控制器接收电子设备发来的数据;
所述第一控制器将收到的所述数据存储在所述第一PCIE卡中;
所述第一控制器向所述电子设备返回写数据完成的消息。
2.根据权利要求1所述的方法,其特征在于,所述第一控制器与第二控制器连接,所述第二控制器内具有至少一个第二PCIE卡,所述方法还包括:
所述第一控制器将收到的所述数据存储在所述第二控制器的第二PCIE卡中,用于备份。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一控制器将所述第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
所述第一控制器将所述第一PCIE卡内存储的数据写入所述第一控制器的内存中,并对所述数据进行校验,将校验后的数据写入保护模式的SSD中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
将校验后的数据写入保护模式的SSD之后,所述第一控制器删除内存中的数据。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
当所述第一控制器接收到所述电子设备发来的读数据命令时,从所述第一PCIE卡中读取所述数据,并向所述电子设备返回所述数据和读数据完成的消息。
6.一种第一控制器,其特征在于,所述第一控制器内具有至少一个第一快速外围组件互连PCIE卡,所述第一控制器包括:
接收模块,用于接收电子设备发来的数据;
控制模块,用于将所述接收模块收到的所述数据存储在所述第一PCIE卡中;
发送模块,用于在所述控制模块将所述数据存储在所述第一PCIE卡中后,向所述电子设备返回写数据完成的消息。
7.根据权利要求6所述的第一控制器,其特征在于,所述第一控制器与第二控制器连接,所述第二控制器内具有至少一个第二PCIE卡,所述控制模块还用于:
将所述接收模块收到的所述数据存储在所述第二控制器的第二PCIE卡中,用于备份。
8.根据权利要求6所述的第一控制器,其特征在于,所述控制模块还用于:
将所述第一PCIE卡内存储的数据写入非保护模式的固态硬盘SSD中;或者,
将所述第一PCIE卡内存储的数据写入所述第一控制器的内存中,并对所述数据进行校验,将校验后的数据写入保护模式的SSD中。
9.根据权利要求8所述的第一控制器,其特征在于,所述控制模块还用于:
将校验后的数据写入保护模式的SSD之后,删除内存中的数据。
10.根据权利要求6至9中任一项所述的第一控制器,其特征在于,
所述接收模块还用于:接收所述电子设备发来的读数据命令;
所述控制模块还用于:当所述接收模块接收到所述电子设备发来的读数据命令时,从所述第一PCIE卡中读取所述数据,并向所述电子设备返回所述数据和读数据完成的消息。
CN201210530226.3A 2012-12-11 2012-12-11 数据存储方法和控制器 Active CN103049218B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210530226.3A CN103049218B (zh) 2012-12-11 2012-12-11 数据存储方法和控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210530226.3A CN103049218B (zh) 2012-12-11 2012-12-11 数据存储方法和控制器

Publications (2)

Publication Number Publication Date
CN103049218A true CN103049218A (zh) 2013-04-17
CN103049218B CN103049218B (zh) 2016-11-16

Family

ID=48061871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210530226.3A Active CN103049218B (zh) 2012-12-11 2012-12-11 数据存储方法和控制器

Country Status (1)

Country Link
CN (1) CN103049218B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105549916A (zh) * 2015-12-31 2016-05-04 湖南国科微电子股份有限公司 PCIe固态硬盘控制器、基于PCIe的存储系统及其数据读写方法
CN107506239A (zh) * 2017-07-28 2017-12-22 苏州蓝越软件有限公司 计算机组件化软件系统
CN107678691A (zh) * 2017-10-09 2018-02-09 郑州云海信息技术有限公司 控制器数据写入方法及装置、任务执行方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101354633A (zh) * 2008-08-22 2009-01-28 杭州华三通信技术有限公司 提高虚拟存储系统写效率的方法及虚拟存储系统
CN101719051A (zh) * 2009-11-09 2010-06-02 中兴通讯股份有限公司 一种多控磁盘阵列及其实现方法
CN102346653A (zh) * 2011-09-16 2012-02-08 成都市华为赛门铁克科技有限公司 存储阵列和存储系统及数据保护方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101354633A (zh) * 2008-08-22 2009-01-28 杭州华三通信技术有限公司 提高虚拟存储系统写效率的方法及虚拟存储系统
CN101719051A (zh) * 2009-11-09 2010-06-02 中兴通讯股份有限公司 一种多控磁盘阵列及其实现方法
CN102346653A (zh) * 2011-09-16 2012-02-08 成都市华为赛门铁克科技有限公司 存储阵列和存储系统及数据保护方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105549916A (zh) * 2015-12-31 2016-05-04 湖南国科微电子股份有限公司 PCIe固态硬盘控制器、基于PCIe的存储系统及其数据读写方法
CN105549916B (zh) * 2015-12-31 2017-03-22 湖南国科微电子股份有限公司 PCIe固态硬盘控制器、基于PCIe的存储系统及其数据读写方法
CN107506239A (zh) * 2017-07-28 2017-12-22 苏州蓝越软件有限公司 计算机组件化软件系统
CN107678691A (zh) * 2017-10-09 2018-02-09 郑州云海信息技术有限公司 控制器数据写入方法及装置、任务执行方法

Also Published As

Publication number Publication date
CN103049218B (zh) 2016-11-16

Similar Documents

Publication Publication Date Title
US8943358B2 (en) Storage system, apparatus, and method for failure recovery during unsuccessful rebuild process
CN102024044B (zh) 分布式文件系统
TWI459399B (zh) 電力中斷管理
US8285955B2 (en) Method and apparatus for automatic solid state drive performance recovery
US20070118698A1 (en) Priority scheme for transmitting blocks of data
JP2004038290A (ja) 情報処理システムおよび同システムで用いられるディスク制御方法
CN103534688A (zh) 数据恢复方法、存储设备和存储系统
US20160085445A1 (en) Method operating raid system and data storage systems using write command log
US20160011965A1 (en) Pass through storage devices
JP2011170589A (ja) ストレージ制御装置、ストレージ装置およびストレージ制御方法
CN103403667A (zh) 数据处理方法和设备
KR20120089214A (ko) Raid 기반 저장소 컨트롤 보드
US9378092B2 (en) Storage control apparatus and storage control method
US10235255B2 (en) Information processing system and control apparatus
US10234929B2 (en) Storage system and control apparatus
US8291153B2 (en) Transportable cache module for a host-based raid controller
CN106469119B (zh) 一种基于nvdimm的数据写缓存方法及其装置
CN113050896A (zh) 一种支持nvdimm的国产飞腾服务器及数据保护方法
CN112947869A (zh) 固态硬盘及写操作方法
CN103049218B (zh) 数据存储方法和控制器
CN111240903A (zh) 数据恢复方法及相关设备
CN103049407B (zh) 数据存储方法、装置及系统
CN101794246B (zh) 备份存储系统、备份系统及数据备份方法和恢复方法
WO2021088368A1 (zh) 一种存储器的修复方法及装置
CN104020963A (zh) 一种防止误判硬盘读写错误的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant