用于自适应持久化的系统、方法和接口技术方案

技术编号:12021272 阅读:74 留言:0更新日期:2015-09-09 18:29
一个存储模块可以被配置成用于根据不同持久化级别为多个I/O请求服务。一个I/O请求的持久化级别可以与用于为该I/O请求服务的存储资源、存储资源的配置、以及这些资源的存储模式等相关。在某些实施例中,一个持久化级别可以与一个I/O请求的一种高速缓存模式相关。可以使用一种短暂高速缓存模式为与暂时或可有可无的数据有关的多个I/O请求服务。一种短暂高速缓存模式可以包括将I/O请求数据存储在高速缓存存储中而不是将该数据直写(或回写)至主存储。响应于虚拟机迁移,可以在多个主机之间传输短暂高速缓存数据。

【技术实现步骤摘要】
【国外来华专利技术】用于自适应持久化的系统、方法和接口
本披露涉及用于自适应持久化的系统和方法,并且在若干实施例中涉及用于对以短暂高速缓存模式高速缓存的数据进行管理的系统和方法。
技术介绍
输入/输出(I/O)请求可能具有不同的数据持久化需要。例如,某些写入请求可能与需要被保护免受数据丢失或损坏的数据有关。其他写入请求可能与不需要被长期保存和/或预期在重启和/或重新启动时而丢失的数据有关。存储系统可以用同样的方式处理所有请求,这会降低I/O性能。
技术实现思路
在此披露了一种用于自适应持久化的方法的实施例。所披露的方法可以包括一项或多项机器可执行的操作和/或步骤。所披露的操作和/或步骤可以被体现为存储在一个计算机可读存储介质上的程序代码。相应地,在此披露的方法的实施例可以被体现为包括一个计算机可读存储介质的一个计算机程序产品,该计算机可读存储介质存储可执行用于执行一项或多项方法操作和/或步骤的计算机可用的程序代码。在某些实施例中,所披露的方法包括:标识多个I/O请求,基于这些I/O请求的一个或多个属性为这些I/O请求选择多个对应的持久化级别,以及根据为这些I/O请求选择的该持久化级别使用一个或多个存储资源来为这些I/O请求服务。标识该I/O请求可以包括监控一个存储堆栈中的多个I/O请求。该持久化级别可以对应于用于在为具有对应的持久化级别的多个I/O请求服务时使用的一个或多个存储资源、用于为多个I/O请求服务的一个或多个存储资源的一种配置等。这些持久化级别中的一个或多个级别可以被配置成用于指定一种存储模式。一个持久化级别可以指定两个或更多个存储资源上的冗余存储,并且该方法可以进一步包括使用这两个或更多个存储资源为具有那一个持久化级别的多个I/O请求服务。在某些实施例中,该方法包括基于与一个第一I/O请求相关联的一个文件标识符和与该第一I/O请求相关联的一个应用中的一个或多个为该第一I/O请求选择一个第一持久化级别。这些持久化级别之一可以对应于一种短暂高速缓存模式,并且该方法可以进一步包括将具有那一个持久化级别的多个I/O请求的数据存储在一个高速缓存中而不是将该数据存储在一个主存储资源中。在此披露了一种方法的实施例,该方法包括:接收源自一个存储客户端的一个输入/输出(I/O)请求,基于该I/O请求的一个或多个特性为该I/O请求确定多个持久化级别其中之一,其中,这些持久化级别中的每个级别指定用于为该I/O请求服务的一个存储资源、该存储资源的一种配置、以及一种存储模式中的一项或多项,和/或根据所选择的持久化级别为该I/O请求服务。这些持久化级别中的一个第一级别可以指定一种短暂高速缓存模式,并且这些持久化级别中的一个第二级别指定一种直写高速缓存模式。这些持久化级别中的两个或更多个级别关于用于为I/O请求服务的多个存储资源、存储配置和/或高速缓存模式而不同。这些持久化级别中的一个第一级别指定一种短暂高速缓存模式,并且该方法可以进一步包括响应于将该第一持久化级别的多个写入I/O请求的数据写入至一个高速缓存资源而不是将这些写入I/O请求的数据写入至主存储来确认完成了这些写入I/O请求。在某些实施例中,这些持久化级别中的一个第一级别指定一种第一纠错代码编码,并且这些持久化级别中的一个第二级别指定一种第二不同的纠错代码编码。该方法可以进一步包括基于一个I/O请求的一个源标识符、该I/O请求的一个文件标识符、与该I/O请求相关联的一个应用、以及该I/O请求的一个参数中的一项或多项为该I/O请求确定一个持久化级别。在此披露了一种设备的实施例,该设备包括:一个持久化级别模块,该持久化级别模块被配置成用于基于多个存储请求的特性为这些存储请求中的每个存储请求选择多个自适应持久化级别之一,其中,为一个存储请求所选择的该自适应持久化级别确定一个存储资源、该存储资源的一种配置、以及用于为该存储请求服务的一种存储模式中的一项或多项;一个接口模块,该接口模块被配置成用于和一个或多个存储资源进行接口连接;以及一个存储请求执行模块,该存储请求执行模块被配置成用于根据通过使用该接口模块而被指派给这些存储请求的这些自适应持久化级别为这些存储请求服务。该持久化级别模块可以被配置成用于基于一个存储请求的一个文件标识符、与该存储请求相关联的一个应用、该存储请求的一个参数、以及一个输入/输出(IO)控制参数中的一项或多项为该存储请求选择一个自适应持久化级别。该存储请求执行模块可以被配置成用于以一种永不写高速缓存模式高速缓存具有一个短暂自适应持久化级别的一个存储请求的数据。这些自适应持久化级别中的一个第一级别可以包括将数据存储在一种第一RAID配置中,并且这些自适应持久化级别中的一个第二级别包括将数据存储在一种第二不同的RAID配置中。在此披露了一种用于自适应高速缓存持久化的方法的实施例。所披露的方法可以包括一项或多项机器可执行的操作和/或步骤。所披露的操作和/或步骤可以被体现为存储在一个计算机可读存储介质上的程序代码。相应地,在此披露的方法的实施例可以被体现为包括一个计算机可读存储介质的一个计算机程序产品,该计算机可读存储介质存储可执行用于执行一项或多项方法操作和/或步骤的计算机可用的程序代码。在某些实施例中,所披露的方法包括:标识一个被引导至一个后备存储器的I/O请求;从多种高速缓存模式中为所标识的该I/O请求选择一种短暂高速缓存模式,其中,该短暂高速缓存模式包括将数据存储在一个高速缓存中而不是将该数据存储在该后备存储器中;和/或以该短暂高速缓存模式高速缓存所标识的该I/O请求的数据。该方法可以进一步包括响应于将所标识的该I/O请求的该数据存储在该高速缓存中而不是将该数据存储到该后备存储器来确认完成了所标识的该I/O请求。可以响应于确定所标识的该I/O请求的该数据不需要在多个重启操作之间被保存来选择该短暂高速缓存模式。该方法可以进一步包括基于所标识的该I/O请求的一个源标识符、所标识的该I/O请求的一个文件标识符、以及与所标识的该I/O请求相关联的一个应用中的一项或多项来从该多种高速缓存模式中选择该短暂高速缓存模式。在某些实施例中,该方法包括响应于迁移到一个新的虚拟机主机而刷新短暂高速缓存数据,其中,刷新该短暂高速缓存数据包括将以该短暂高速缓存模式高速缓存的数据存储在该后备存储器上。该方法可以进一步包括响应于一个虚拟机从一个第一虚拟机主机迁移到一个第二虚拟机主机而将与以该短暂高速缓存模式高速缓存的数据有关的高速缓存元数据保留在该虚拟机内,和/或用以该短暂高速缓存模式高速缓存的保留在该第一虚拟机主机处的数据填充该第二虚拟机主机处的一个虚拟机高速缓存。在某些实施例中,所披露的方法可以包括:确定被引导至一个主存储的一个输入/输出(I/O)请求的数据是可有可无的;将该I/O请求的该数据排他地高速缓存在高速缓存存储内;和/或响应于将该I/O请求的该数据高速缓存在该高速缓存存储内而确认完成了该I/O请求。高速缓存该I/O请求的该数据可以包括执行一项或多项不涉及该主存储的快速路径I/O操作。在某些实施例中,该方法可以进一步包括:监控一个存储堆栈内的多个I/O请求,并且高速缓存该I/O请求的数据可以包括在该存储堆栈外执行一项或多项快速路径I/O操作。确定该I/O请求与可有可无的数本文档来自技高网...

【技术保护点】
一种方法,包括:标识多个I/O请求;基于这些I/O请求的一个或多个属性为这些I/O请求选择多个对应的持久化级别;以及根据为这些I/O请求选择的该持久化级别使用一个或多个存储资源来为这些I/O请求服务。

【技术特征摘要】
【国外来华专利技术】2012.08.31 US 61/696126;2013.03.14 US 13/829358;201.一种方法,包括:标识输入/输出(I/O)请求,该请求涉及包括多个持久化存储装置的持久化存储系统;基于这些I/O请求的一个或多个属性为这些I/O请求选择多个对应的持久化级别,其中,所述多个持久化级别包括第一持久化级别,该第一持久化级别被选择以用于标识的I/O请求,其被确定以对应于可以被自动地从存储中移除的数据;以及根据为这些I/O请求选择的该持久化级别来为这些I/O请求服务,其中根据所述第一持久化级别来服务特定的I/O请求以将请求数据写入到所述持久化存储系统包括:将所述请求数据写入到指定存储装置,其与所述多个持久化存储装置分开,并且记录响应于所述请求数据被逐出,储存在所述指定的存储装置上的所述请求数据被自动地从分开的存储装置移除,而不被写入到所述多个持久化存储装置的持久化存储装置。2.如权利要求1所述的方法,其中,所述多个持久化级别的第二持久化级别对应于一个或多个所述持久化存储装置,并且其中,根据所述第二持久化级别服务I/O请求以写入数据包括将所述I/O请求的数据写入到一个或多个持久化存储装置。3.如权利要求2所述的方法,其中,所述第二持久化级别指定用于所述一个或多个持久化存储装置的配置,并且其中,根据所述第二持久化级别服务I/O请求包括配置所述一个或多个持久化存储装置以在所述指定配置中储存所述I/O请求的数据。4.如权利要求2所述的方法,其中,所述第二持久化级别指定存储模式以用于所述一个或多个持久化存储装置,并且其中,根据所述第二持久化级别服务I/O请求包括配置所述一个或多个持久化存储装置以用所述指定储存模式来存储所述I/O请求的数据。5.如权利要求1所述的方法,进一步包括基于与第一I/O请求相关联的文件标识符和与该第一I/O请求相关联的应用中的一项或多项为该第一I/O请求选择所述第一持久化级别。6.如权利要求2所述的方法,其中,所述第二持久化级别指定所述多个持久化存储装置中的两个以上的I/O请求数据的冗余存储。7.如权利要求1所述的方法,其中,响应于与特定I/O请求相关联的客户的重启、重新开始以及关机的一个或多个,所述请求数据被自动地从所述分开的存储装置中移除。8.如权利要求1所述的方法,其中,标识该I/O请求包括监控存储堆栈中的多个I/O请求。9.一种设备,包括:存储控制器,被配置为与存储系统的多个存储资源接口,所述存储资源包括多个持久化存储装置;以及请求接收器,被配置为接收存储请求,所述存储请求指定将被写入到所述存储系统的请求数据,其中所述存储控制器被配置为基于所述存储请求的特性而将持久化级别分配到所述存储请求,所述持久化级别包括第一持久化级别以分配存储请求,该存储请求涉及在临时存储中储存的请求数据,所述临时存储与所述存储系统的持久化存储装置分开,并且其中所述存储控制器还被配置为根据分配到所述存储请求的持久化级别而写入所述存储请求的请求数据,其中写入分配到所述第一持久化级别的特定存储请求的请求数据包括:将特定存储请求的所述请求数据写入到临时存储,其与所述多个持久化存储装置分开,并且记录所述特定存储请求的所述请求数据将从所述临时储存被逐出,而不被写入到所述存储系统的持久化存储装置。10.如权利要求9所述的设备,其中,所述存储控制器被配置成用于基于特定存储请求的一个文件标识符、与该特定存储请求相关联的应用、该特定存储请求的参数、以及于该特定存储请求相关联的输入/输出(I/O)控制参数中的一项或多项而将所述第一持久化级别分配到所述特定存储请求。11.如权利要求9所述的设备,其中,所述存储控制器被配置成用于以永不写高速缓存模式来高速缓存所述特定存储请求的请求数据。12.如权利要求9所述的设备,其中,所述持久化级别中的第二持久化级别包括将请求数据存储在第一RAID配置中,并且所述持久化级别中的第三持久化级别包括将数据存储在第二不同的RAID配置中。13.一种方法,包括:标识输入/输出(I/O)请求,该请求涉及与后备存储器相关联的文件;从多种高速缓存模式中为所标识的该I/O请求选择短暂高速缓存模式,其中,该短暂高速缓存模式包括在与所述后备存储器分开的缓存存储器中高速缓存数据,而不访问所述后备存储器;以及通过以该短暂高速缓存模式高速缓存所述文...

【专利技术属性】
技术研发人员:V·乔希Y·卢安M·F·布朗D·弗林B·L·T·郝J·Z·杨P·拉达克里希南
申请(专利权)人:才智知识产权控股公司二
类型:发明
国别省市:美国;US

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

1