CN103049220B - 存储控制方法、存储控制装置和固态存储系统 - Google Patents

存储控制方法、存储控制装置和固态存储系统 Download PDF

Info

Publication number
CN103049220B
CN103049220B CN201210553528.2A CN201210553528A CN103049220B CN 103049220 B CN103049220 B CN 103049220B CN 201210553528 A CN201210553528 A CN 201210553528A CN 103049220 B CN103049220 B CN 103049220B
Authority
CN
China
Prior art keywords
state hard
solid state
data
buffer memory
controller
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.)
Active
Application number
CN201210553528.2A
Other languages
English (en)
Other versions
CN103049220A (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 CN201210553528.2A priority Critical patent/CN103049220B/zh
Publication of CN103049220A publication Critical patent/CN103049220A/zh
Application granted granted Critical
Publication of CN103049220B publication Critical patent/CN103049220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种存储控制方法、存储控制装置和固态存储系统,该存储控制方法包括:固态存储系统的第一控制器将输入固态存储系统的数据存储在第一控制器的缓存中;第一控制器将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中所述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。本发明的实施例可以将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,而非通过镜像通道将数据镜像至第二控制器的缓存,从而减少了固态存储系统的I/O延时。

Description

存储控制方法、存储控制装置和固态存储系统
技术领域
本发明涉及存储技术领域,尤其是涉及一种存储控制方法、存储控制装置和固态存储系统。
背景技术
固态硬盘采用半导体存储器(例如,Flash或DRAM)作为存储介质。随着固态硬盘(SolidStateDisk,SSD)的发展,固态存储系统也得到了高速发展,打破了传统机械存储的性能瓶颈,降低了能耗,并提供了更高的可靠性。例如,以固态硬盘为基本存储单位的独立磁盘冗余阵列(RedundantArraysofInexpensiveDisks,RAID),以其高数据传输带宽、高可靠性和数据冗余保护等优点得到了良好的发展和应用。
固态存储系统的核心竞争力在于高性能和低延时,因此,如何减少输入/输出(INPUT/OUPUT,I/O)延时成为固态存储的核心技术。常规固态存储系统一般采用双控制器的技术方案,为提升存储的可靠性和性能,一般会在固态存储系统中引入镜像策略。例如,在回写情况下,第一控制器首先将从主机接收的数据存储至第一控制器的缓存(例如,内存)中,并且通过第一控制器与第二控制器之间的镜像通道,将数据从第一控制器的缓存镜像至第二控制器的缓存,并在完成镜像后返回主机,从而完成写操作。
然而,通过镜像通道将数据镜像至第二控制器的内存会引入数百微秒的延时,而对于大多数固态存储系统来说,要求I/O延时控制在一百微秒的级别,因此,上述技术方案不能满足存储系统对低延时的要求。
发明内容
本发明的实施例提供了一种存储控制方法、存储控制装置和固态存储系统,能够减少固态存储系统的I/O延时。
第一方面,提供了一种存储控制方法,包括:固态存储系统的第一控制器将输入固态存储系统的数据存储在第一控制器的缓存中;第一控制器将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中上述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
在第一种可能的实现方式中,第一方面的存储控制方法还包括:第一控制器在第一控制器的缓存中针对数据计算校验和;第一控制器将第一控制器的缓存中存储的数据和第一控制器的缓存中计算的校验和存储在多个固态硬盘的非易性存储介质中。
结合第一方面,在第二种可能的实现方式中,第一方面的存储控制方法还包括:第一控制器在第一控制器的缓存中针对数据计算校验和;第一控制器将至少一个固态硬盘的缓存中存储的镜像数据和第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
结合第二种可能的实现方式,在第三种可能的实现方式中,第一控制器将至少一个固态硬盘的缓存中存储的镜像数据和校验和存储在多个固态硬盘的非易性存储介质中,包括:第一控制器控制多个固态硬盘将镜像数据存储在多个固态硬盘的非易性存储介质中;第一控制器在第一控制器的缓存中完成针对数据计算校验和之后,将第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
结合第一方面或上述可能的实现方式中的任一种,在第四种可能的实现方式中,固态存储系统的第一控制器将输入固态存储系统的数据存储在第一控制器的缓存中,包括:第一控制器控制接口模块将接收的数据发送给第一控制器的缓存,其中第一控制器将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,包括:第一控制器控制接口模块将接收的数据发送给交换器,交换器基于从接口模块接收到的数据复制镜像数据,并且将从所述接口模块接收到的数据和所述镜像数据传输至多个固态硬盘中的两个固态硬盘的缓存中。
结合第一方面或上述可能的实现方式中的任一种,在第五种可能的实现方式中,固态存储系统的第一控制器将输入固态存储系统的数据存储在第一控制器的缓存中,包括:第一控制器控制接口模块将接收的数据发送给第一控制器的缓存,其中第一控制器将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,包括:第一控制器控制第一控制器的缓存将数据镜像到多个固态硬盘的两个固态硬盘的缓存中。
结合第一方面或上述可能的实现方式中的任一种,在第六种可能的实现方式中,第一方面的存储控制方法还包括:第一控制器通过与固态存储系统的第二控制器之间的通道将镜像数据的描述信息通知第二控制器,以便第二控制器在第一控制器故障时控制固态存储系统。
结合第一方面或上述可能的实现方式中的任一种,在第七种可能的实现方式中,第一方面的存储控制方法还包括:第一控制器将镜像数据的描述信息镜像在多个固态硬盘的至少一个固态硬盘的缓存中,以便第二控制器在第一控制器故障时控制固态存储系统。
结合第一方面或上述可能的实现方式中的任一种,在第八种可能的实现方式中,第一方面的存储控制方法还包括:在固态存储系统掉电时,第一控制器控制多个固态硬盘利用备电功能将多个固态硬盘的缓存中未处理完的数据分别存储在多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;在固态存储系统重新上电后,控制多个固态硬盘恢复预设存储区域内的数据,并且根据所记录的存储操作的状态,完成存储操作的后续处理。
结合第一方面或上述可能的实现方式中的任一种,在第七种可能的实现方式中,第一方面的存储控制方法还包括:第一控制器控制多个固态硬盘将镜像数据从多个固态硬盘的缓存中删除,并且将数据从第一控制器的缓存中删除。
第二方面,提供了一种存储控制装置,包括:缓存,用于缓存数据;控制模块,用于将输入固态存储系统的数据存储在缓存中,并将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中上述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
在第一种可能的实现方式中,第二方面的存储控制装置还包括:计算模块,用于在缓存中针对数据计算校验和,其中控制模块还用于将缓存中存储的数据和校验和存储在多个固态硬盘的非易性存储介质中。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,第二方面的存储控制装置还包括:计算模块,用于在缓存中针对数据计算校验和,其中控制模块还用于将镜像数据和校验和存储在多个固态硬盘的非易性存储介质中。
结合第二方面的第二种可有的实现方式,在第三种可能的实现方式中,控制模块控制多个固态硬盘将至少一个固态硬盘的缓存中存储的镜像数据存储在多个固态硬盘的非易性存储介质中,并且在计算模块在缓存中完成针对数据计算校验和之后,将校验和存储在多个固态硬盘的非易性存储介质中。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第四种可能的实现方式中,第二方面的存储控制装置还包括:接口模块和交换器,其中接口模块用于接收数据,并且在控制模块的控制下将数据发送给缓存并将数据发送给交换器;交换器用于在控制模块的控制下基于接收到的数据复制镜像数据并将从接口模块接收到的数据和镜像数据传输至多个固态硬盘中的两个固态硬盘的缓存中。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第五种可能的实现方式中,第二方面的存储控制装置还包括:接口模块和交换器,其中接口模块用于接收数据,并且在控制模块的控制下将数据发送给缓存,其中控制模块控制缓存将数据通过交换器镜像到多个固态硬盘的两个固态硬盘的缓存中。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第六种可能的实现方式中,第二方面的存储控制装置还包括:通知模块,用于通过与固态存储系统的另一存储控制装置之间的通道将镜像数据的描述信息通知另一存储控制装置,以便另一存储控制装置在存储控制装置故障时控制固态存储系统。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第七种可能的实现方式中,控制模块还用于将镜像数据的描述信息镜像在多个固态硬盘的至少一个固态硬盘的缓存中,以便另一存储控制装置在存储控制装置故障时控制固态存储系统。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第八种可能的实现方式中,控制模块还用于在固态存储系统掉电时,控制多个固态硬盘利用备电功能将多个固态硬盘的缓存中未处理完的数据分别存储在多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;在固态存储系统重新上电后,控制多个固态硬盘恢复预设存储区域内的数据,并且根据所记录的存储操作的状态,完成存储操作的后续处理。
结合第二方面或第二方面的上述任何一种可能的实现方式,在第九种可能的实现方式中,控制模块还用于控制多个固态硬盘将镜像数据从多个固态硬盘的缓存中删除,并且将数据从缓存中删除。
第三方面,提供了一种固态存储系统,包括:多个固态硬盘;如第二方面的存储控制装置,用于控制多个固态硬盘的数据存储;另一存储控制装置,与所述存储控制装置互为主备关系,用于在第一存储控制装置故障时控制所述多个固态硬盘的数据存储。
本发明的实施例可以将输入固态存储系统的数据存储在第一控制器的缓存中,并且将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,而非通过镜像通道将数据镜像至第二控制器的缓存,从而减少了固态存储系统的I/O延时。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是根据本发明的实施例的固态存储系统的应用场景的示意图。
图1B是根据本发明的一个实施例的存储控制方法的示意性流程图。
图2是根据本发明的一个实施例的存储控制过程的示意性流程图。
图3是根据本发明的另一实施例的存储控制过程的示意性流程图。
图4是根据本发明的一个实施例的存储控制装置的示意性结构图。
图5是根据本发明的另一实施例的存储控制装置的示意性结构图。
图6是根据本发明的一个实施例的固态存储系统的示意性结构图。
图7是根据本发明的另一实施例的固态存储系统的示意性结构图。
图8是根据本发明的另一实施例的存储控制装置的示意性结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1A是根据本发明的实施例的固态存储系统100的应用场景的示意图。
根据本发明实施例的固态存储系统100可以为包括至少一个控制器(例如,第一控制器101和第二控制器102)和多个固态硬盘103的固态存储阵列,用于为主机104提供存储空间,其中第一控制器101和第二控制器102互为备用,用于控制多个固态硬盘103的数据存储。第一控制器101与第二控制器102分别包括接口模块、缓存和交换器。多个固态硬盘103中的每个硬盘被划分为缓存和非易性存储介质。主机104通过接口模块与第一控制器101和第二控制器102相连接,第一控制器101与第二控制器102通过交换器相连接。
图1B是根据本发明的一个实施例的存储控制方法的示意性流程图。图1B的方法包括如下内容。
110,固态存储系统的第一控制器将输入固态存储系统的数据存储在第一控制器的缓存中。
120,第一控制器将上述数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中所述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
例如,第一控制器的缓存(cachememory)和固态硬盘的缓存可以为双倍速率同步动态随机存储器(DoubleDataRateSynchronousDynamicRandomAccessMemory,DDRSDRAM),根据本发明的实施例并不限于此,第一控制器的缓存和固态硬盘的缓存也可以为其它高速缓存。
根据本发明的实施例可以将输入固态存储系统的数据存储在第一控制器的缓存中,并且可以将输入的数据的镜像数据存储在多个固态硬盘中的某个固态硬盘的缓存中。第一控制器的缓存中的数据与固态硬盘的缓存中的数据形成镜像,以便在固态存储系统故障造成第一控制器的缓存中的数据丢失时,可以从固态硬盘的缓存中恢复丢失的数据。进一步,为了提高镜像数据的可靠性,可以将上述镜像数据存储在两个固态硬盘的缓存中。
本发明的实施例可以将输入固态存储系统的数据存储在第一控制器的缓存中,并且将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,而非通过镜像通道将数据镜像至第二控制器的缓存,从而减少了固态存储系统的I/O延时。
根据本发明的实施例可以将固态硬盘划分为缓存空间和非易性存储介质空间,并且可以通过多种方式管理固态硬盘的缓存,例如,可以为每个固态硬盘(或盘片)划分50MB的缓存空间,并且可以按照固态硬盘-缓存地址的方法存储数据。第一控制器可以通过命令交互的方式进行数据的存储和缓存的释放。根据本发明的实施例并不限于此,还可以采用增加中间映射的方式对多个固态硬盘的缓存地址进行统一管理,例如,可以建立统一索引与多个固态硬盘的缓存地址之间的映射关系,根据本发明的实施例对固态硬盘的缓存的管理方式不作限定,也可以采用其它地址访问的方法将数据存储在固态硬盘的缓存中。
根据本发明的实施例的固态存储系统的第一控制器可以通过命令指示固态硬盘将数据存储在固态硬盘的缓存内或者是存储在固态硬盘的非易性存储介质内。例如,固态硬盘的容量为100GB,而可供固态硬盘使用的缓存为50MB,即100GB的固态硬盘可以呈现100GB+50MB的空间。当第一控制器通过命令指示固态硬盘访问该缓存时,可以根据缓存的地址访问该缓存。另外,第一控制器还可以通过命令指示是否按照逻辑块寻址(LogicalBlockAddressing,LBA)将该缓存内的镜像数据下盘(即将缓存中的数据存储在非易性存储介质中)或移除该缓存内的数据。
可选地,作为另一实施例,图1B的方法还包括:第一控制器在第一控制器的缓存中针对数据计算校验和;第一控制器将第一控制器的缓存中存储的数据和第一控制器的缓存中计算的校验和存储在多个固态硬盘的非易性存储介质中。
例如,第一控制器在将数据存储在第一控制器的缓存中之后对数据计算校验和,并且在完成校验和计算之后,将数据和校验和传输到多个固态硬盘的非易性存储介质中进行存储。校验和可以存储在至少两个以上的固态硬盘中,以便其中一个固态硬盘故障时,可以根据校验和恢复故障固态硬盘上的数据。根据本发明的实施例对存储校验和和数据的顺序不作限制,例如,可以在完成校验和计算之前存储镜像数据,也可以在存储校验和的同时存储数据。
可选地,作为另一实施例,图1B的方法还包括:第一控制器在第一控制器的缓存中针对数据计算校验和;第一控制器将上述至少一个固态硬盘的缓存中存储的镜像数据和第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
例如,第一控制器在完成校验和计算之后,将校验和传输到多个固态硬盘的非易性存储介质中进行存储,并且控制固态硬盘将镜像数据存储到固态硬盘的非易性存储介质中。根据本发明的实施例对存储校验和和镜像数据的顺序不作限制,例如,可以在完成校验和计算之前存储镜像数据,也可以在存储校验和的同时存储镜像数据。
根据本发明实施例,在第一控制器将镜像数据和校验和存储在多个固态硬盘的非易性存储介质中时,第一控制器可以控制多个固态硬盘将至少一个固态硬盘的缓存中存储的镜像数据存储在多个固态硬盘的非易性存储介质中,并且在第一控制器的缓存中完成针对数据计算校验和之后,将第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
根据本发明的实施例,在110中,第一控制器控制接口模块将接收的数据发送给第一控制器的缓存,其中在120中,第一控制器控制接口模块将接收的数据发送给交换器,交换器基于从接口模块接收到的数据复制镜像数据,并且将从接口模块接收到的数据和镜像数据传输至多个固态硬盘中的两个固态硬盘的缓存中。
例如,第一控制器的接口模块接收来自主机的数据,为该数据创建一个副本,并且将该数据及其副本传输给第一控制器的缓存和与该接口模块相连接的交换机。交换器可以采用类似的方法为从接口模块接收的数据创建一个副本,并且将接收的数据及其副本分发给相应的两个固态硬盘的缓存。
根据本发明的实施例,在110中,第一控制器控制接口模块将接收的数据发送给第一控制器的缓存,其中在120中,第一控制器可以控制第一控制器的缓存将数据镜像到多个固态硬盘的两个固态硬盘的缓存中。
例如,第一控制器可以在控制接口模块将接收的数据发送给第一控制器的缓存之后,将第一控制器的缓存中的数据通过第一控制器的缓存与固态硬盘之间的镜像通道镜像至两个固态硬盘的缓存中。
可选地,作为另一实施例,图1B方法还包括:第一控制器通过与固态存储系统的第二控制器之间的通道将镜像数据的描述信息通知第二控制器,以便第二控制器在第一控制器故障时控制固态存储系统。
例如,上述镜像数据的描述信息可以为数据的数据包的长度、逻辑单元号(LogicalUnitNumber,LUN)、源地址、目标地址之类的信息。在第一控制器故障时,由第二控制器根据该描述信息接管对数据存储的控制。
可选地,作为另一实施例,图1B的方法还包括:第一控制器将镜像数据的描述信息镜像在多个固态硬盘的至少一个固态硬盘的缓存中,以便第二控制器在第一控制器故障时控制固态存储系统。
例如,在第一控制器故障时,第二控制器从固态硬盘的缓存中读取上述描述信息,并根据该描述信息接管对数据存储的控制。
可选地,作为另一实施例,图1B的方法还包括:在固态存储系统掉电时,第一控制器控制多个固态硬盘利用备电功能将多个固态硬盘的缓存中未处理完的数据分别存储在多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;在固态存储系统重新上电后,控制多个固态硬盘恢复预设存储区域内的数据,并且根据所记录的存储操作的状态,完成存储操作的后续处理。
可选地,作为另一实施例,图1B的方法还包括:还包括:第一控制器控制多个固态硬盘将镜像数据从多个固态硬盘的缓存中删除,并且将数据从第一控制器的缓存中删除。
应理解,根据本发明的实施例并不限制接口模块采用何种方式复制数据或者采用何种方式将数据分发至第一控制器的缓存或固态硬盘的缓存,也不限制是否采用交换器或者交换器如何进行数据分发或复制。
根据本明的实施例通过将镜像数据下移至固态硬盘的缓存,利用固态硬盘的缓存对第一控制器的缓存中的数据进行镜像,从而减少了镜像通道的开销,减少了延时,提升了固态存储系统的性能。另外,采用固态硬盘的缓存作为镜像,减少了I/O在路径上对带宽的占用,提升了I/O利用效率。最后,本发明的实施例可以利用固态硬盘的备电功能,从而减少或避免使用固态存储系统的备用电池单元(BatteryBackUnit,BBU)。
图2是根据本发明的一个实施例的存储控制过程的示意性流程图。图2的实施例是图1B的方法的例子。本发明的实施例以第一控制器为固态存储系统的主控制器为例进行说明。
210,固态存储系统的第一控制器从主机接收数据。
例如,在主机向固态存储系统写入数据的情况下,来自主机的数据经由第一控制器的接口模块进入固态存储系统。当然,在第二控制器为主控制器情况下,来自主机的数据可以经由第二控制器的接口模块进入固态存储系统。
220,接口模块将输入的数据传输至第一控制器的缓存。
如果固态存储系统采用数据保护模式,则需要计算校验和,接口模块会将输入的数据传输至第一控制器的缓存,以便进行校验和计算。
230,接口模块将输入的数据的镜像数据传输至固态硬盘的缓存。
例如,为了提升传输效率,接口模块可以通过多路直接内存存取(DirectMemoryAccess,DMA)方式同时传输两份数据(即输入的数据及其副本),一份数据传输至固态存储系统的缓存(即主控制器的缓存),另一份数据传输至交换器(Switch),例如,PeripheralComponentInterconnectexpress,PCIe交换器。交换器随后可以采用组播(Mutil-Cast)方式复制成两份数据传输至相应的两块固态硬盘的缓存中。
240,第一控制器将镜像数据的描述信息通知给第二控制器。步骤240是可选的。
例如,为了保证可靠性,防止备控制器(例如,本实施例的第二控制器)在主控制器(例如,本实施例的第一控制器)故障的情况下无法接管对数据存储的控制,可以通过主控制器与备控制器之间的通道将镜像数据的描述信息通知给第二控制器,例如,可以使第二控制器的缓存中保存的描述信息与镜像数据的描述信息实时同步。
250,在校验和计算完成之后,第一控制器将校验和存储到固态硬盘的非易失存储介质中,并且控制固态硬盘将固态硬盘的缓存中的镜像数据存储到固态硬盘的非易失存储介质中。
260,第一控制器控制固态硬盘移除上述两个固态硬盘中的镜像数据。
当镜像数据和校验和均保存在固态硬盘的非易失性存储介质之后,可以移除上述两个固态硬盘的缓存中的两份镜像数据。根据本发明的实施例对移除镜像数据的方法不作限制。
270,第二控制器在第一控制器故障的情况下,根据上述描述信息接管对数据存储的控制。
例如,在第一控制器故障的情况下,第二控制器根据第二控制器的缓存中保存的镜像数据的描述信息获知镜像数据的情况,并且直接接管对数据存储的控制。
图3是根据本发明的另一实施例的存储控制过程的示意性流程图。图3的实施例是图1B的方法的例子。本发明的实施例以第一控制器为固态存储系统的主控制器为例进行说明。
310,固态存储系统的第一控制器从主机接收数据。与图2的210类似,在此不赘述。
320,接口模块将输入的数据传输至第一控制器的缓存。与图2的220类似,在此不赘述。
330,第一控制器将其缓存中的数据镜像至固态硬盘的缓存。
例如,第一控制器通过第一控制器的缓存与固态硬盘的缓存之间的镜像通道将第一控制器的缓存中的数据镜像至固态硬盘的缓存。
340,第一控制器将镜像数据的描述信息存储在固态硬盘的缓存中。步骤340是可选的。
例如,第一控制器在将镜像数据传输给固态硬盘的缓存时携带上述描述信息。
350,第一控制器可以在校验和计算完成之前,将固态硬盘的缓存中的镜像数据存储在非易失存储介质中,并且在校验和计算完成之后,再将校验和存储到固态硬盘的非易失存储介质中,以便提升I/O效率。
360,第一控制器控制固态硬盘移除上述两个固态硬盘中的镜像数据。
370,第二控制器在第一控制器故障的情况下,读取固态硬盘中的镜像数据,从镜像数据中解析出上述描述信息,并根据上述描述信息接管对数据存储的控制。
380,在固态存储系统掉电的情况下,第一控制器控制固态硬盘将固态硬盘的缓存中未处理完的镜像数据存储在非易失性介质中。
例如,在固态硬盘具有备电能力的情况下,固态硬盘在固态存储系统掉电时,利用固态硬盘的备电能力将缓存中未处理完的数据存储至非易失存储介质中。在固态存储系统掉电时,通过固态硬盘的备电能力将其缓存中未处理完的镜像数据写入固态硬盘的特殊保留区间,并记录相应的场景。
390,在固态存储系统重新上电的情况下,第一控制器控制固态硬盘恢复故障时未处理完的镜像数据。
例如,在固态存储系统下一次上电之后,首先恢复该特殊保留区间的数据,并且完成上一次掉电时未完成的处理,然后进行后续存储操作。
上面描述了根据本发明实施例的存储控制方法,下面分别结合图4和图5的实施例描述根据本发明的实施例的存储控制装置,并且结合图6和图7描述根据本发明实施例的固态存储系统。
图4是根据本发明的一个实施例的存储控制装置400的示意性结构图。存储控制装置400包括:缓存410和控制模块420。存储控制装置400可以为固态存储系统中的控制器。
缓存410用于缓存数据。控制模块420用于将输入固态存储系统的数据存储在缓存410中,并将该数据的镜像数据存储在该固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中上述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
本发明的实施例可以将输入固态存储系统的数据存储在缓存中,并且将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,而非通过镜像通道将数据镜像至第二控制器的缓存,从而减少了固态存储系统的I/O延时。
存储控制装置400的缓存410和控制模块420的操作和功能可以参考上述图1B的110和120,为了避免重复,在此不再赘述。
图5是根据本发明的另一实施例的存储控制装置500的示意性结构图。存储控制装置500包括缓存510和控制模块520,类似于图4的缓存410和控制模块420,在此不再赘述。
存储控制装置500还包括:计算模块530,用于在缓存510中针对数据计算校验和,其中控制模块520还用于将缓存510中存储的数据和第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
可选地,作为另一实施例,存储控制装置500还包括:计算模块530,用于在缓存510中针对数据计算校验和,其中控制模块520还用于将至少一个固态硬盘的缓存中存储的镜像数据和第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
根据本发明的实施例,控制模块520控制多个固态硬盘将至少一个固态硬盘的缓存中存储的镜像数据存储在多个固态硬盘的非易性存储介质中,并且在计算模块530在缓存510中完成针对数据计算校验和之后,将第一控制器计算的校验和存储在多个固态硬盘的非易性存储介质中。
可选地,作为另一实施例,存储控制装置500还包括:接口模块550和交换器540,其中接口模块550用于接收数据,并且在控制模块520的控制下将数据发送给缓存510并将数据发送给交换器540。交换器540用于在控制模块520的控制下基于从接口模块550接收到的数据复制镜像数据并将从接口模块550接收到的数据和镜像数据传输至多个固态硬盘中的两个固态硬盘的缓存中。
可选地,作为另一实施例,存储控制装置500还包括:接口模块550和交换器540,其中接口模块550用于接收数据,并且在控制模块520的控制下将数据发送给缓存510,其中控制模块520控制缓存510将数据通过交换器540镜像到多个固态硬盘的两个固态硬盘的缓存中。
可选地,作为另一实施例,存储控制装置500还包括:通知模块560,用于通过与固态存储系统的另一存储控制装置之间的通道将镜像数据的描述信息通知另一存储控制装置,以便另一存储控制装置在存储控制装置故障时控制固态存储系统。
可选地,作为另一实施例,控制模块520还用于将镜像数据的描述信息镜像在多个固态硬盘的至少一个固态硬盘的缓存中,以便另一存储控制装置在存储控制装置500故障时控制固态存储系统。
可选地,作为另一实施例,控制模块520还用于在固态存储系统掉电时,控制多个固态硬盘利用备电功能将多个固态硬盘的缓存中未处理完的数据分别存储在多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;在固态存储系统重新上电后,控制多个固态硬盘恢复预设存储区域内的数据,并且根据所记录的存储操作的状态,完成存储操作的后续处理。
可选地,作为另一实施例,控制模块520还用于控制多个固态硬盘将镜像数据从多个固态硬盘的缓存中删除,并且将数据从缓存510中删除。
存储控制装置500的缓存510和控制模块520的操作和功能可以参考上述图1B的110和120,为了避免重复,在此不再赘述。
图6是根据本发明的一个实施例的固态存储系统600的示意性结构图。固态存储系统600包括:多个固态硬盘620、存储控制装置610和另一存储控制装置630。存储控制装置610可以为图4的存储控制装置400和图5的存储控制装置500的例子,用于控制多个固态硬盘的数据存储。另一存储控制装置630与存储控制装置610互为主备关系,用于在存储控制装置610故障时控制多个固态硬盘620的数据存储。
图7是根据本发明的另一实施例的固态存储系统700的示意性结构图。固态存储系统700是图6的固态存储系统600的例子。
固态存储系统700包括:第一控制器710、第二控制器720和多个固态硬盘SSD730。
第一控制器710包括:DDR711、CPU712、NB713、PCIe交换器(Switch)714、接口控制芯片QE8715和HBA716。CPU712与DDR711相连接,并且通过NB713与PCIe交换器714相连接。PCIe交换器714与QE8715相连接,并且通过HBA716与多个固态硬盘730相连接。QE8715作为固态存储系统700与主机的一个接口,QE8715在第一控制器710作为主控制器时接收主机输入的数据。
第二控制器720包括:DDR721、CPU722、NB723、PCIe交换器(Switch)724、QE8725和HBA726。CPU722与DDR721相连接,并且通过NB723与PCIe交换器724相连接。PCIe交换器724与QE8725相连接,并且通过HBA726与多个固态硬盘730相连接。QE8725作为固态存储系统700与主机的另一接口,QE8725在第一控制器720作为主控制器时接收主机输入的数据。
上述多个固态硬盘SSD730中的每一个包括DDR和非易性存储介质(例如,闪存)。
第一控制器710与第二控制器720互为备用,在作为主控制器的第一控制器710故障的情况下,第二控制器720接管对数据存储的控制。
图8是根据本发明的另一实施例的存储控制装置800的示意性结构图。存储控制装置800包括固态硬盘810、处理器820、存储器830、通信总线840和至少一个固态硬盘850。
缓存810用于缓存数据。处理器820,通过通信总线840,调用存储器830中存储的代码,用于将输入固态存储系统的数据存储在缓存810中,并将该数据的镜像数据存储在该固态存储系统的多个固态硬盘850的至少一个固态硬盘的缓存中,其中上述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
本发明的实施例可以将输入固态存储系统的数据存储在第一控制器的缓存中,并且将数据的镜像数据存储在固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,而非通过镜像通道将数据镜像至第二控制器的缓存,从而减少了固态存储系统的I/O延时。
根据本发明的实施例,处理器820还用于对缓存810中的数据计算校验和,并且将缓存810中存储的数据和校验和存储在多个固态硬盘850的非易性存储介质中。
可选地,作为另一实施例,处理器820还用于在缓存810中针对数据计算校验和,并且将镜像数据和校验和存储在多个固态硬盘850的非易性存储介质中。
可选地,作为另一实施例,处理器820还用于控制多个固态硬盘将镜像数据存储在多个固态硬盘的非易性存储介质中,并且在缓存810中完成针对数据计算校验和之后,将校验和存储在多个固态硬盘850的非易性存储介质中。
可选地,作为另一实施例,存储控制装置800还包括:I/O860和交换器870,其中I/O860用于接收数据,并且在,处理器820的控制下将数据发送给缓存810并将数据发送给交换器870。交换器870用于在处理器820的控制下为从I/O860接收到的数据复制镜像数据,并将从I/O860接收到的数据和镜像数据传输至多个固态硬盘中850的两个固态硬盘的缓存中。
可选地,作为另一实施例,存储控制装置800还包括:I/O860和交换器870,其中I/O860用于接收数据,并且在处理器820的控制下将数据发送给缓存810,其中处理器820控制缓存810将数据通过交换器870镜像到多个固态硬盘850的两个固态硬盘的缓存中。
可选地,作为另一实施例,处理器820还用于通过与固态存储系统的另一存储控制装置之间的通道将镜像数据的描述信息通知另一存储控制装置,以便另一存储控制装置在存储控制装置故障时控制固态存储系统。
可选地,作为另一实施例,处理器820还用于将镜像数据的描述信息镜像在多个固态硬盘850的至少一个固态硬盘的缓存中,以便另一存储控制装置在存储控制装置800故障时控制固态存储系统。
可选地,作为另一实施例,处理器820还用于在固态存储系统掉电时,控制多个固态硬盘850利用备电功能将多个固态硬盘850的缓存中未处理完的数据分别存储在多个固态硬盘850的预设存储区域内,并且记录掉电时存储操作的状态;在固态存储系统重新上电后,控制多个固态硬盘850恢复预设存储区域内的数据,并且根据所记录的存储操作的状态,完成存储操作的后续处理。
可选地,作为另一实施例,处理器820还用于控制多个固态硬盘850将镜像数据从多个固态硬盘850的缓存中删除,并且将数据从缓存810中删除。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (19)

1.一种存储控制方法,其特征在于,包括:
固态存储系统的第一控制器将输入所述固态存储系统的数据存储在第一控制器的缓存中;
所述第一控制器将所述数据的镜像数据存储在所述固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中所述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
2.根据权利要求1所述的存储控制方法,其特征在于,还包括:
所述第一控制器在所述第一控制器的缓存中针对所述数据计算校验和;
所述第一控制器将所述第一控制器的缓存中存储的数据和所述第一控制器的缓存中计算的校验和存储在所述多个固态硬盘的非易性存储介质中。
3.根据权利要求1所述的存储控制方法,其特征在于,还包括:
所述第一控制器在所述第一控制器的缓存中针对所述数据计算校验和;
所述第一控制器将所述至少一个固态硬盘的缓存中存储的镜像数据和第一控制器计算的所述校验和存储在所述多个固态硬盘的非易性存储介质中。
4.根据权利要求3所述的存储控制方法,其特征在于,所述第一控制器将所述至少一个固态硬盘的缓存中存储的镜像数据和第一控制器计算的所述校验和存储在所述多个固态硬盘的非易性存储介质中,包括:
所述第一控制器控制所述多个固态硬盘将所述至少一个固态硬盘的缓存中存储的镜像数据存储在所述多个固态硬盘的非易性存储介质中;
所述第一控制器在所述第一控制器的缓存中完成对所述数据计算校验和之后,将所述第一控制器计算的所述校验和存储在所述多个固态硬盘的非易性存储介质中。
5.根据权利要求1至4中的任一项所述的存储控制方法,其特征在于,所述固态存储系统的第一控制器将输入所述固态存储系统的数据存储在第一控制器的缓存中,包括:
所述第一控制器控制接口模块将接收的所述数据发送给所述第一控制器的缓存,
其中所述第一控制器将所述数据的镜像数据存储在所述固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,包括:
所述第一控制器控制所述接口模块将接收的所述数据发送给交换器,所述交换器基于从所述接口模块接收到的所述数据复制镜像数据,并且将从所述接口模块接收到的所述数据和所述镜像数据传输至所述多个固态硬盘中的两个固态硬盘的缓存中。
6.根据权利要求1至4中的任一项所述的存储控制方法,其特征在于,所述固态存储系统的第一控制器将输入所述固态存储系统的数据存储在第一控制器的缓存中,包括:
所述第一控制器控制接口模块将接收的所述数据发送给所述第一控制器的缓存,
其中所述第一控制器将所述数据的镜像数据存储在所述固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,包括:
所述第一控制器控制所述第一控制器的缓存将所述数据镜像到所述多个固态硬盘的两个固态硬盘的缓存中。
7.根据权利要求1至4中的任一项所述的存储控制方法,其特征在于,还包括:
所述第一控制器通过与所述固态存储系统的第二控制器之间的通道将所述镜像数据的描述信息通知所述第二控制器,以便所述第二控制器在所述第一控制器故障时控制所述固态存储系统。
8.根据权利要求1至4中的任一项所述的存储控制方法,其特征在于,还包括:
所述第一控制器将所述镜像数据的描述信息镜像在所述多个固态硬盘的至少一个固态硬盘的缓存中,以便第二控制器在所述第一控制器故障时控制所述固态存储系统。
9.根据权利要求1至4中的任一项所述的存储控制方法,其特征在于,还包括:
在所述固态存储系统掉电时,所述第一控制器控制所述多个固态硬盘利用备电功能将所述多个固态硬盘的缓存中未处理完的数据分别存储在所述多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;
在所述固态存储系统重新上电后,控制所述多个固态硬盘恢复所述预设存储区域内的数据,并且根据所记录的存储操作的状态,完成所述存储操作的后续处理。
10.一种存储控制装置,其特征在于,包括:
缓存,用于缓存数据;
控制模块,用于将输入固态存储系统的数据存储在所述缓存中,并将所述数据的镜像数据存储在所述固态存储系统的多个固态硬盘的至少一个固态硬盘的缓存中,其中所述至少一个固态硬盘中的每个固态硬盘被划分为缓存和非易性存储介质。
11.根据权利要求10所述的存储控制装置,其特征在于,还包括:
计算模块,用于在所述缓存中针对所述数据计算校验和,其中所述控制模块还用于将所述缓存中存储的数据和所述计算模块计算的校验和存储在所述多个固态硬盘的非易性存储介质中。
12.根据权利要求10所述的存储控制装置,其特征在于,还包括:
计算模块,用于在所述缓存中针对所述数据计算校验和,其中所述控制模块还用于将所述至少一个固态硬盘的缓存中存储的镜像数据和所述计算模块计算的所述校验和存储在所述多个固态硬盘的非易性存储介质中。
13.根据权利要求12所述的存储控制装置,其特征在于,所述控制模块控制所述多个固态硬盘将所述至少一个固态硬盘的缓存中存储的镜像数据存储在所述多个固态硬盘的非易性存储介质中,并且在所述计算模块在所述缓存中完成针对所述数据计算校验和之后,将所述计算模块计算的所述校验和存储在所述多个固态硬盘的非易性存储介质中。
14.根据权利要求10至13中的任一项所述的存储控制装置,其特征在于,还包括:接口模块和交换器,其中所述接口模块用于接收所述数据,并且在所述控制模块的控制下将所述数据发送给所述缓存并将所述数据发送给交换器;
所述交换器用于在所述控制模块的控制下基于接收到的所述数据复制镜像数据并将从所述接口模块接收到的所述数据和所述镜像数据传输至所述多个固态硬盘中的两个固态硬盘的缓存中。
15.根据权利要求10至13中的任一项所述的存储控制装置,其特征在于,还包括:接口模块和交换器,其中所述接口模块用于接收所述数据,并且在所述控制模块的控制下将所述数据发送给所述缓存,其中所述控制模块控制所述缓存将所述数据通过所述交换器镜像到所述多个固态硬盘的两个固态硬盘的缓存中。
16.根据权利要求10至13中的任一项所述的存储控制装置,其特征在于,还包括:
通知模块,用于通过与所述固态存储系统的另一存储控制装置之间的通道将所述镜像数据的描述信息通知所述另一存储控制装置,以便所述另一存储控制装置在所述存储控制装置故障时控制所述固态存储系统。
17.根据权利要求10至13中的任一项所述的存储控制装置,其特征在于,所述控制模块还用于将所述镜像数据的描述信息镜像在所述多个固态硬盘的至少一个固态硬盘的缓存中,以便另一存储控制装置在所述存储控制装置故障时控制所述固态存储系统。
18.根据权利要求10至13中的任一项所述的存储控制装置,其特征在于,所述控制模块还用于在所述固态存储系统掉电时,控制所述多个固态硬盘利用备电功能将所述多个固态硬盘的缓存中未处理完的数据分别存储在所述多个固态硬盘的预设存储区域内,并且记录掉电时存储操作的状态;在所述固态存储系统重新上电后,控制所述多个固态硬盘恢复所述预设存储区域内的数据,并且根据所记录的存储操作的状态,完成所述存储操作的后续处理。
19.一种固态存储系统,包括:
多个固态硬盘;
如权利要求10至18所述的存储控制装置,用于控制所述多个固态硬盘的数据存储;
另一存储控制装置,与所述存储控制装置互为主备关系,用于在第一存储控制装置故障时控制所述多个固态硬盘的数据存储。
CN201210553528.2A 2012-12-19 2012-12-19 存储控制方法、存储控制装置和固态存储系统 Active CN103049220B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210553528.2A CN103049220B (zh) 2012-12-19 2012-12-19 存储控制方法、存储控制装置和固态存储系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210553528.2A CN103049220B (zh) 2012-12-19 2012-12-19 存储控制方法、存储控制装置和固态存储系统

Publications (2)

Publication Number Publication Date
CN103049220A CN103049220A (zh) 2013-04-17
CN103049220B true CN103049220B (zh) 2016-05-25

Family

ID=48061873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210553528.2A Active CN103049220B (zh) 2012-12-19 2012-12-19 存储控制方法、存储控制装置和固态存储系统

Country Status (1)

Country Link
CN (1) CN103049220B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015054897A1 (zh) * 2013-10-18 2015-04-23 华为技术有限公司 数据存储方法、数据存储装置和存储设备
CN105068760B (zh) * 2013-10-18 2018-09-28 华为技术有限公司 数据存储方法、数据存储装置和存储设备
CN105224475B (zh) * 2014-05-30 2018-03-09 国际商业机器公司 用于调整存储装置的分配的方法和装置
CN104536704A (zh) * 2015-01-12 2015-04-22 浪潮(北京)电子信息产业有限公司 一种双控制器通信方法、发送端控制器和接收端控制器
CN107885457B (zh) * 2016-09-30 2020-08-07 华为技术有限公司 一种固态硬盘ssd、存储装置及数据存储方法
CN107678691A (zh) * 2017-10-09 2018-02-09 郑州云海信息技术有限公司 控制器数据写入方法及装置、任务执行方法
CN107908571B (zh) * 2017-10-31 2021-04-20 成都华为技术有限公司 一种数据写入方法、闪存装置及存储设备
CN108874309B (zh) * 2018-05-25 2021-07-23 新华三技术有限公司 一种管理固态硬盘中物理块的方法和装置
CN109343986B (zh) * 2018-08-17 2020-12-22 华为技术有限公司 处理内存故障的方法与计算机系统
TWI708145B (zh) * 2019-04-30 2020-10-21 威聯通科技股份有限公司 多控制器儲存系統及儲存裝置
CN112783684A (zh) * 2019-11-06 2021-05-11 华为技术有限公司 一种校验数据计算方法及装置
CN111447275B (zh) * 2020-03-26 2021-01-01 深圳市中盛瑞达科技有限公司 存储系统和存储装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718766A2 (en) * 1994-12-21 1996-06-26 Symbios Logic Inc. Method of operating a disk drive array

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001128191A (ja) * 1999-08-18 2001-05-11 Fuji Photo Film Co Ltd 画像処理方法および装置並びに記録媒体
US7237141B2 (en) * 2003-06-19 2007-06-26 Lsi Corporation Method for recovering data from a redundant storage object
CN102662607B (zh) * 2012-03-29 2014-10-29 华中科技大学 一种raid6级别混合磁盘阵列及其性能加速和可靠性提高方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718766A2 (en) * 1994-12-21 1996-06-26 Symbios Logic Inc. Method of operating a disk drive array

Also Published As

Publication number Publication date
CN103049220A (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
CN103049220B (zh) 存储控制方法、存储控制装置和固态存储系统
CN107967124B (zh) 一种分布式持久性内存存储系统及方法
CN102024044B (zh) 分布式文件系统
CN103970688B (zh) 缩短数据存储系统中写入等待时间的方法和系统
US20180307420A1 (en) Smart memory buffers
US11698873B2 (en) Interleaving in multi-level data cache on memory bus
CN106066890B (zh) 一种分布式高性能数据库一体机系统
CN103455577A (zh) 云主机镜像文件的多备份就近存储和读取方法及系统
CN103092786A (zh) 一种双控双活存储控制系统及方法
CN106055493A (zh) 存储系统、存储模块及其操作方法
CN102521114B (zh) 一种虚拟化环境下的文件系统日志存储系统
CN102122235A (zh) 一种raid4系统及其数据读写方法
CN104850355A (zh) 存储装置、存储系统及存储装置的地址信息处理方法
CN102346653A (zh) 存储阵列和存储系统及数据保护方法
CN106445405A (zh) 一种面向闪存存储的数据访问方法及其装置
CN101625586A (zh) 一种管理存储设备节能的方法、设备和计算机
CN104679442A (zh) 一种提高磁盘阵列性能的方法及装置
CN104424052A (zh) 一种自动冗余的分布式存储系统及方法
CN103002046A (zh) 多系统数据拷贝的rdma架构
US9733850B2 (en) Optical cold storage with encoding and placement of data chunks on different optical disks
CN105653213A (zh) 一种基于Freescale P3041的双控磁盘阵列
CN105094761A (zh) 一种数据存储方法和设备
CN103049218A (zh) 数据存储方法和控制器
US20200334103A1 (en) Storage system, drive housing thereof, and parity calculation method
CN103049505A (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