CN112015343B - 存储卷的缓存空间管理方法、装置及电子设备 - Google Patents

存储卷的缓存空间管理方法、装置及电子设备 Download PDF

Info

Publication number
CN112015343B
CN112015343B CN202010879227.3A CN202010879227A CN112015343B CN 112015343 B CN112015343 B CN 112015343B CN 202010879227 A CN202010879227 A CN 202010879227A CN 112015343 B CN112015343 B CN 112015343B
Authority
CN
China
Prior art keywords
volume
space
cache
cache space
read
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
CN202010879227.3A
Other languages
English (en)
Other versions
CN112015343A (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.)
Macrosan Technologies Co Ltd
Original Assignee
Macrosan 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 Macrosan Technologies Co Ltd filed Critical Macrosan Technologies Co Ltd
Priority to CN202010879227.3A priority Critical patent/CN112015343B/zh
Publication of CN112015343A publication Critical patent/CN112015343A/zh
Application granted granted Critical
Publication of CN112015343B publication Critical patent/CN112015343B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本申请提供一种存储卷的缓存空间管理方法、装置、电子设备及机器可读存储介质。在本申请中,一方面,在对目标存储卷进行突发读写访问时,实现了从存储设备缓存空间中的动态分配空间中灵活申请缓存。另一方面,在对目标存储卷进行持续读写访问时,实现了将卷缓存空间中的非频繁读写访问的第二卷缓存空间中的缓存数据强制回写至目标卷中,并将空闲缓存释放回至存储设备缓存空间中的动态分配空间中。基于以上两方面的实现,由此提高了存储设备缓存空间的缓存分配和回收的管理效率以及在多个存储卷对应共享同一个存储设备缓存空间时的缓存空间利用率。

Description

存储卷的缓存空间管理方法、装置及电子设备
技术领域
本申请涉及存储技术领域,尤其涉及存储卷的缓存空间管理方法、装置、电子设备及机器可读存储介质。
背景技术
通常,存储设备包括基于若干磁盘按预设的RAID算法构建的RAID阵列。存储设备在RAID阵列基础上,可以进一步创建用于被与存储设备对接的存储客户端执行读写访问的存储卷。在存储客户端对存储卷进行读写访问过程中,由于对内存的访问速度要快于对磁盘的访问速度,所以为了提高读写访问效率,存储设备通常基于自身搭载的内存作为缓存池,为管理的存储卷分配对应的用于读写访问的缓存,以此来提高对存储卷进行读写访问的效率。
发明内容
本申请提供一种存储卷的缓存空间管理方法,所述方法应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间;所述方法包括:
响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间;
计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;
响应于针对所述目标存储卷的读写访问,对所述第一卷缓存空间和所述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对所述卷缓存空间执行动态缓存管理。
可选的,所述动态申请开关的开关状态包括使能状态、关闭状态;其中,所述动态申请开关的开关状态的初始状态为使能状态;
所述卷缓存空间对应被预分配了指示所述卷缓存空间的最大占用容量限制的第一阈值;
所述响应于针对所述目标存储卷的读写访问,对所述第一卷缓存空间和所述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对所述卷缓存空间执行动态缓存管理,包括:
在监测到所述卷缓存空间的缓存容量小于第一阈值并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,从所述动态分配空间中为所述卷缓存空间新增分配缓存,以使所述卷缓存空间的缓存容量扩展。
可选的,所述第二卷缓存空间对应被预分配了指示所述第二卷缓存空间的最小占用容量限制的第二阈值,所述方法还包括:
在监测到所述卷缓存空间的缓存容量达到第一阈值以及所述第二卷缓存空间的缓存容量大于第二阈值,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,监测到直至所述第二卷缓存空间的当前占用容量达到所述第二阈值;或者,
在监测到所述第二卷缓存空间的缓存容量大于第二阈值以及从所述动态分配空间中无法获取空闲缓存为所述卷缓存空间进行分配,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,直至监测到所述第二卷缓存空间的当前占用容量达到所述第二阈值。
可选的,所述数据回写的数据量大于所述读写访问的数据的数据量;所述方法还包括:
在监测到达到第二阈值的第二卷缓存空间存在空闲缓存时,将所述动态申请开关的开关状态从关闭状态置为使能状态。
可选的,所述方法还包括:
在监测到所述第二卷缓存空间的当前占用容量持续达到所述第二阈值时,将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中。
可选的,所述计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间,包括:
计算所述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在所述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将所述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
本申请还提供一种存储卷的缓存空间管理装置,所述装置应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间;所述装置包括:
分配模块,响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间;
计算模块,计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;
管理模块,响应于针对所述目标存储卷的读写访问,对所述第一卷缓存空间和所述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对所述卷缓存空间执行动态缓存管理。
可选的,所述动态申请开关的开关状态包括使能状态、关闭状态;其中,所述动态申请开关的开关状态的初始状态为使能状态;
所述卷缓存空间对应被预分配了指示所述卷缓存空间的最大占用容量限制的第一阈值;
所述管理模块进一步:
在监测到所述卷缓存空间的缓存容量小于第一阈值并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,从所述动态分配空间中为所述卷缓存空间新增分配缓存,以使所述卷缓存空间的缓存容量扩展。
可选的,所述第二卷缓存空间对应被预分配了指示所述第二卷缓存空间的最小占用容量限制的第二阈值,所述管理模块进一步:
在监测到所述卷缓存空间的缓存容量达到第一阈值以及所述第二卷缓存空间的缓存容量大于第二阈值,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,监测到直至所述第二卷缓存空间的当前占用容量达到所述第二阈值;或者,
在监测到所述第二卷缓存空间的缓存容量大于第二阈值以及从所述动态分配空间中无法获取空闲缓存为所述卷缓存空间进行分配,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,直至监测到所述第二卷缓存空间的当前占用容量达到所述第二阈值。
可选的,所述数据回写的数据量大于所述读写访问的数据的数据量;所述管理模块进一步:
在监测到达到第二阈值的第二卷缓存空间存在空闲缓存时,将所述动态申请开关的开关状态从关闭状态置为使能状态。
可选的,所述管理模块进一步:
在监测到所述第二卷缓存空间的当前占用容量持续达到所述第二阈值时,将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中。
可选的,所述计算模块进一步:
计算所述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在所述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将所述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述的方法。
本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
通过以上实施例,基于响应于针对目标存储卷的创建指令,创建目标存储卷并从固定分配空间中为目标存储卷初始分配对应的预设容量的卷缓存空间;计算卷缓存空间的读写访问频度,并基于计算得到的读写访问频度,将卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;响应于针对目标存储卷的读写访问,对第一卷缓存空间和第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对卷缓存空间执行动态缓存管理。一方面,在对目标存储卷进行突发读写访问时,实现了从存储设备缓存空间中的动态分配空间中灵活申请缓存。另一方面,在对目标存储卷进行持续读写访问时,实现了将卷缓存空间中的非频繁读写访问的第二卷缓存空间中的缓存数据强制回写至目标卷中,并将空闲缓存释放回至存储设备缓存空间中的动态分配空间中。基于以上两方面的实现,由此提高了存储设备缓存空间的缓存分配和回收的管理效率以及在多个存储卷对应共享同一个存储设备缓存空间时的缓存空间利用率。
附图说明
图1是一示例性实施例提供的一种存储卷的缓存空间管理的过程示意图;
图2是一示例性实施例提供的另一种存储卷的缓存空间管理的过程示意图;
图3是一示例性实施例提供的一种存储卷的缓存空间管理的总体过程示意图;
图4是一示例性实施例提供的一种存储卷的缓存空间管理方法的流程图;
图5是一示例性实施例提供的一种改进的存储卷的缓存空间管理的过程示意图;
图6是一示例性实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图;
图7是一示例性实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图;
图8是一示例性实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图;
图9是一示例性实施例提供的一种改进的存储卷的缓存空间管理的总体过程示意图;
图10是一示例性实施例提供的一种电子设备的硬件结构图;
图11是一示例性实施例提供的一种存储卷的缓存空间管理装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面先对本申请实施例涉及的存储卷的缓存空间管理的相关技术,进行简要说明。
请参见图1,图1是本申请一实施例提供的一种存储卷的缓存空间管理的过程示意图。
如图1所示,存储设备包括存储设备缓存空间、至少一个存储卷;其中,存储设备缓存空间包括固定分配空间、动态分配空间。
为了提高存储卷的读写访问效率,在存储卷创建时,存储设备从存储设备缓存空间中的固定分配空间获取预设容量的缓存(如图1中固定分配空间中的带斜线矩形所示),并将该缓存初始分配给存储卷作为该存储的卷缓存空间,在存储卷的读写访问过程中的数据可以先缓存在该卷缓存空间中。
在存储卷创建后,当存在针对该存储卷的读写访问时,存储设备可以从动态分配空间中申请缓存。
请参见图2,图2是本申请一实施例提供的另一种存储卷的缓存空间管理的过程示意图。
图2与图1类似,是在图1基础之上变化而来。如图2所示,存储设备可以从存储设备缓存空间中的动态分配空间获取预设容量的缓存(如图2中动态分配空间中的带网格矩形所示),并将该缓存动态增加至给存储卷的卷缓存空间中。也即,存储卷的卷缓存空间包括初始分配缓存和动态增加缓存。
当针对该存储卷的读写访问持续存在时,存储设备基于存储卷缓存申请,不断为其动态增加缓存直至无法继续动态增加。(比如:达到为每个存储卷分配缓存的容量设定预设的最大上限,或者动态分配空间中的缓存都已分配完)
当存储卷申请不到动态分配空间时,则从自身的卷缓存空间中选出部分数据,回写到存储卷的物理空间(磁盘)中或丢弃,来释放卷缓存空间中的数据占用的缓存空间,以便后续的读写访问使用。此时,存储卷的卷缓存空间维持在类似图2所示的状态(比如:卷缓存空间从动态分配空间中申请的缓存容量达到预设的最大上限)。
请参见图3,图3是本申请一实施例提供的一种存储卷的缓存空间管理的总体过程示意图。
图3是基于图1和图2变化而来,图3中的状态A与图1相同,图3中的状态B与图2相同。图3主要用于描述针对状态A与状态B相互转换的过程。
如图3所示,在为卷缓存空间从固定分配空间初始分配缓存后,在对该存储卷存在持续读写访问时,由状态A变化至状态B。
如图3所示,在该存储卷存在持续读写访问时,由状态B变化回至状态A。例如,当存储卷的卷缓存空间中有些数据长时间不再访问之后(这段时间称为老化时间),这些数据会被回写到磁盘上、然后释放所占用的卷缓存空间(写卷缓存空间的情况),或者直接丢弃、释放所占用的卷缓存空间(读卷缓存空间的情况),当存储卷内部空闲缓存容量达到预设阈值后,将部分空闲缓存释放回照顾动态分配空间,以便于存储设备管理的其它存储卷申请使用,也即,由状态B变化回至状态A。
基于图3所述过程,在存储卷持续有读写访问的情况下,存储卷的卷缓存空间会扩充到设定的最大上限,而在对存储卷读写访问停止或减少一段时,存储卷的卷缓存空间会不断变小,把空闲缓存释放回至动态分配空间,以便其它存储卷申请使用,以此达到提高存储设备缓存空间的空间利用率的效果。
在以上示出的存储卷的缓存空间管理的基础上,在一些场景下,并不是卷缓存空间中的所有数据被重复读写访问,或者说在短时间内被重复读写访问。也即,只有少部分的卷缓存空间中的数据被重复读写访问,而大部分的数据并不会在短时间内被重复读写访问。
需要说明的是,图1、2、3仅示例了存储设备中包括一个存储卷的情况,在实际应用中,存储设备可以包括多个存储卷,每个存储卷的缓存空间管理的过程,与图1、2、3示例的情况类似,具体不再赘述。
基于图3所示过程,在对存储卷存在持续读写访问过程中,存储卷将会不断从动态分配空间中申请并获得新缓存,直到达到一定限度或者申请不到新空间,而因为存储卷上持续的有读写访问,存储卷的卷缓存空间的缓存将很快被占用完,等不到老化时间就需要通过回写数据来释放空间,因此,存储卷的卷缓存空间的所有缓存将一直处于被占用中的状态,即持续保持图3的状态B,而其中的大部分数据是短时间内不会再读写访问的数据,却无法被及时释放回动态分配空间给其它存储卷申请使用,造成了存储设备缓存空间的浪费。
以上示出的技术方案中存储卷的缓存空间管理方式,在对存储卷存在突发读写访问时,可以达到存储设备缓存空间的空间利用率较好效果,但在对存储卷存在持续读写访问的情况下,在存储设备缓存空间的空间利用效率则相比较低。
基于此,本申请旨在提出一种,在存储卷的缓存空间管理过程中,基于计算卷缓存空间的读写访问频度并结合动态申请开关进行状态灵活切换来提高存储卷的缓存空间管理效率及缓存空间利用率的技术方案。
在实现时,存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间。
进一步地,存储设备响应于针对目标存储卷的创建指令,创建目标存储卷并从固定分配空间中为目标存储卷初始分配对应的预设容量的卷缓存空间。
进一步地,存储设备计算卷缓存空间的读写访问频度,并基于计算得到的读写访问频度,将卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间。
进一步地,存储设备响应于针对目标存储卷的读写访问,对第一卷缓存空间和第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对卷缓存空间执行动态缓存管理。
在以上方案中,基于响应于针对目标存储卷的创建指令,创建目标存储卷并从固定分配空间中为目标存储卷初始分配对应的预设容量的卷缓存空间;计算卷缓存空间的读写访问频度,并基于计算得到的读写访问频度,将卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;响应于针对目标存储卷的读写访问,对第一卷缓存空间和第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对卷缓存空间执行动态缓存管理。一方面,在对目标存储卷进行突发读写访问时,实现了从存储设备缓存空间中的动态分配空间中灵活申请缓存。另一方面,在对目标存储卷进行持续读写访问时,实现了将卷缓存空间中的非频繁读写访问的第二卷缓存空间中的缓存数据强制回写至目标卷中,并将空闲缓存释放回至存储设备缓存空间中的动态分配空间中。基于以上两方面的实现,由此提高了存储设备缓存空间的缓存分配和回收的管理效率以及在多个存储卷对应共享同一个存储设备缓存空间时的缓存空间利用率。
下面通过具体实施例并结合具体的应用场景对本申请进行描述。
请参考图4,图4是本申请一实施例提供的一种存储卷的缓存空间管理方法的流程图,所述方法应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间;上述方法执行以下步骤:
步骤402、响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间。
步骤404、计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间。
步骤406、响应于针对所述目标存储卷的读写访问,对所述第一卷缓存空间和所述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对所述卷缓存空间执行动态缓存管理。
在本说明书中,上述存储设备,包括存储介质为任何类型硬盘的任何形式的存储设备或存储设备集群。
例如,上述存储设备可以为存储介质为SATA(Serial AdvancedTechnologyAttachment)机械硬盘、SAS(Serial Attached SCSI)机械硬盘、SCSI(SmallComputer System Interface)机械硬盘、固定硬盘的框式、柜式的存储设备或存储设备集群。
请参见图5,图5是本申请一实施例提供的一种改进的存储卷的缓存空间管理的过程示意图。
图5与图1类似;其中,图5与图1类似部分请参见前文图1描述,这里不再赘述。图5与图1主要区别在于:图5中新增了动态申请开关,并且动态申请开关的初始状态为使能状态;以及,图5中的卷缓存空间初始为非频繁访问空间。
在本说明书中,上述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,上述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间。
例如,以存储设备包括一个存储卷为例,上述存储设备缓存空间、上述卷缓存空间以及,上述存储设备缓存空间包括的上述固定分配空间、上述动态分配空间;请参见图5所示及前文图1相关描述,这里不再赘述。
在本说明书中,上述目标存储卷,是指被上述存储设备管理的若干个存储卷中的一个或多个存储卷。例如,请参见图5,上述目标存储卷具体可以为如图5中所示的存储卷。
在本说明书中,上述存储设备响应于针对目标存储卷的创建指令,创建目标存储卷并从上述固定分配空间中为上述目标存储卷初始分配对应的预设容量的卷缓存空间。
例如,如图5所示,存储设备响应于针对目标存储卷的创建指令,创建目标存储卷并从固定分配空间(比如:16GB)中为该目标存储卷初始分配对应的预设容量(比如:10MB,如图5中所示的带斜线的矩形)的卷缓存空间。
请参见图6,图6是本申请一实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图。
图6是在图5基础之上变化而来。图6与图5主要区别在于:图6中卷缓存空间被划分频繁访问空间和非频繁访问空间;其中,关于频繁访问和非频繁访问的含义,请参见后续描述。
在本说明书中,上述存储设备计算上述卷缓存空间的读写访问频度,并基于计算得到的上述读写访问频度,将上述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间。
例如,上述存储设备缓存空间中的缓存被初始分配至上述卷缓存空间后,上述卷缓存空间被初始标记为非频繁访问空间,比如:请参见图5中所示的卷缓存空间,比如:该卷缓存空间的初始容量为10MB,该10MB被标记为非频繁访问空间。
又例如,在接收到针对存储卷的持续读写访问时,存储设备可以从存储设备缓存空间中的动态分配空间获取预设容量的缓存(如图6中动态分配空间中的带网格矩形所示),并将该缓存动态增加至给存储卷的卷缓存空间中。也即,卷缓存空间在初始分配缓存后,通过申请动态增加缓存,卷缓存空间的总容量进行扩充,比如:卷缓存空间的总容量从10MB扩充至60MB;存储设备计算卷缓存空间(60MB)的读写访问频度,并基于计算得到的读写访问频度。请参见图6所示,存储设备将卷缓存空间划分为频繁读写访问空间(第一卷缓存空间)和非频繁读写访问空间(第二卷缓存空间),该频繁读写访问空间容量比如为20MB,该非频繁读写访问空间比如为40MB。
在示出的一种实施方式中,在计算上述卷缓存空间的读写访问频度,并基于计算得到的上述读写访问频度,将上述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间的过程中,上述存储设备计算上述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在上述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将上述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
例如,请参见图6所示,存储设备计算卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值(比如:在5分钟读写访问次数大于100次)的数据对应在该卷缓存空间中占用的缓存空间作为第一卷缓存空间(图6中的频繁访问空间);以及,将该卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间(图6中的非频繁访问空间)。
在本说明书,上述动态申请开关,用于上述存储设备对上述卷缓存空间执行动态缓存管理。上述动态申请开关的开关状态包括使能状态、关闭状态。
例如,在实现时,上述动态申请开关具体可以基于上述存储设备定义的程序变量V来表征;当变量V的值为1时,表示动态申请开关的开关状态为使能状态;当变量V的值为0时,表示动态申请开关的开关状态为关闭状态
在示出的一种实施方式中,上述动态申请开关的开关状态的初始状态为使能状态。例如,请参见图5所示,在从固定分配空间为卷缓存空间初始分配缓存后,上述动态申请开关的开关状态为使能状态。
在示出的一种实施方式中,上述卷缓存空间对应被预分配了指示上述卷缓存空间的最大占用容量限制的第一阈值。例如,请参见图5所示,卷缓存空间对应被存储设备预分配了指示该卷缓存空间的最大占用容量限制的第一阈值,比如:该第一阈值为100MB。
在本说明书中,在上述卷缓存空间被划分上述第一卷缓存空间和上述第二卷缓存空间后,上述存储设备响应于针对上述目标存储卷的读写访问,对上述第一卷缓存空间和上述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对上述卷缓存空间执行动态缓存管理。
在示出的一种实施方式中,在监测到上述卷缓存空间的缓存容量小于上述第一阈值并且上述动态申请开关的开关状态为使能状态时,响应于针对上述目标存储卷的读写访问,从上述动态分配空间中为上述卷缓存空间新增分配缓存,以使上述卷缓存空间的缓存容量扩展。
接着以上示例继续举例,请参见图6所示,假定卷缓存空间初始容量为10MB,在监测到卷缓存空间的缓存容量小于100MB并且动态申请开关的开关状态为使能状态时,响应于针对目标存储卷的读写访问,从上动态分配空间中为卷缓存空间新增分配缓存,以使上述卷缓存空间的缓存容量扩展。比如:当卷缓存空间的最大占用容量限制为100MB时,则存储设备最多从动态分配空间中单次或多次动态分配缓存给卷缓存空间;其中,单次或多次为卷缓存空间累积分配的缓存总和最大小于90MB(也即,第一阈值减去初始容量)。
在示出的一种实施方式中,上述第二卷缓存空间对应被预分配了指示上述第二卷缓存空间的最小占用容量限制的第二阈值。例如,请参见图6所示,非频繁访问空间(第二卷缓存空间)对应被存储设备预分配了指示该非频繁访问空间的最小占用容量限制的第二阈值,比如:该第二阈值可以为5MB。
请参见图7,图7是本申请一实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图。
图7是在图6基础之上变化而来。图7与图6主要区别在于:图7中动态申请开关的开关状态为关闭状态;以及,图7中的卷缓存空间的容量大于图6中的卷缓存空间的容量;图7中的非频繁访问空间中的部分缓存(如图7的带网格矩形所示)空间可以被释放回至存储设备缓存空间中。
在示出的一种实施方式中,在监测到上述卷缓存空间的缓存容量小于上述第一阈值并且上述动态申请开关的开关状态为使能状态时,响应于针对上述目标存储卷的读写访问,从上述动态分配空间中为上述卷缓存空间新增分配缓存,以使上述卷缓存空间的缓存容量扩展之后,上述存储设备继续执行以下步骤A所述的监测过程:
步骤A、在监测到上述卷缓存空间的缓存容量达到上述第一阈值以及上述第二卷缓存空间的缓存容量大于第二阈值,并且上述动态申请开关的开关状态为使能状态时,响应于针对上述目标存储卷的读写访问,将上述动态申请开关的开关状态置为关闭状态,以及将上述第二卷缓存空间中的缓存的数据回写至上述目标存储卷的物理空间中,并将上述第二卷缓存空间中数据回写后的空闲缓存释放回上述动态分配空间中,监测到直至上述第二卷缓存空间的当前占用容量达到上述第二阈值。
以上述第一阈值为100MB,上述第二阈值为5MB,上述动态申请开关的开关状态为使能状态(如图6所示),接着以上示例继续举例,在监测到卷缓存空间的缓存容量达到100MB以及非频繁访问空间(第二卷缓存空间)的缓存容量大于5MB,并且动态申请开关的开关状态为如图6所示的使能状态时,响应于针对目标存储卷的读写访问,将如图6所示的动态申请开关的开关状态从使用状态置为关闭状态(如图7所示的动态申请开关为关闭状态),以及将非频繁访问空间中的缓存的数据回写至目标存储卷的物理空间中,并将非频繁访问空间中数据回写后的空闲缓存(如图7的带网格矩形所示)释放回动态分配空间中,直至监测到非频繁访问空间的当前占用容量达到5MB。
在示出的另一种实施方式中,在监测到上述卷缓存空间的缓存容量小于上述第一阈值并且上述动态申请开关的开关状态为使能状态时,响应于针对上述目标存储卷的读写访问,从上述动态分配空间中为上述卷缓存空间新增分配缓存,以使上述卷缓存空间的缓存容量扩展之后,上述存储设备继续执行以下步骤B所述的监测过程:
步骤B、在监测到上述第二卷缓存空间的缓存容量大于上述第二阈值以及从上述动态分配空间中无法获取空闲缓存为上述卷缓存空间进行分配,并且上述动态申请开关的开关状态为使能状态时,响应于针对上述目标存储卷的读写访问,将上述动态申请开关的开关状态置为关闭状态,以及将上述第二卷缓存空间中的缓存的数据回写至上述目标存储卷的物理空间中,并将上述第二卷缓存空间中数据回写后的空闲缓存释放回上述动态分配空间中,监测到直至上述第二卷缓存空间的当前占用容量达到上述第二阈值。
以上述第二阈值为5MB,上述动态申请开关的开关状态为使能状态(如图6所示),接着以上示例继续举例,在监测到卷缓存空间的缓存容量达到100MB以及非频繁访问空间(第二卷缓存空间)的缓存容量大于5MB,以及,从动态分配空间中无法获取空闲缓存为卷缓存空间进行分配(比如:动态分配空间的空闲缓存已分配光),并且动态申请开关的开关状态为如图6所示的使能状态时,响应于针对目标存储卷的读写访问,将如图6所示的动态申请开关的开关状态从使用状态置为关闭状态(如图7所示的动态申请开关为关闭状态),以及将非频繁访问空间中的缓存的数据回写至目标存储卷的物理空间中,并将非频繁访问空间中数据回写后的空闲缓存(如图7的带网格矩形所示)释放回动态分配空间中,直至监测到非频繁访问空间的当前占用容量达到5MB。
需要说明的是,当针对目标存储卷存在突发读写访问的时候,可以从动态分配空间中申请新空间进行缓存;而如果读写访问持续下去,则会触发将非频繁访问数据的回写来压缩目标存储卷的卷缓存空间、将卷缓存空间中利用效率低的非频繁访问空间中的缓存释放还给动态分配空间以便其它存储卷共享利用,提高系统中存储设备缓存空间的缓存的整体利用效率。
在示出的一种实施方式中,在将上述第二卷缓存空间中的缓存的数据回写至上述目标存储卷的物理空间的过程中,上述存储设备执行数据回写的数据量大于读写访问的数据的数据量。
例如,以时间周期为5分钟为例,在5分钟内针对卷缓存空间来说,存储设备执行数据回写的数据量要大于读写访问的数据的数据量,从而保证有第二卷缓存空间(非频繁访问空间)空闲出来,并把空闲出来的空间释放回至动态分配空间,同时缩小了目标存储卷的卷缓存空间中的非频繁访问空间,回写过程持续直到非频繁访问空间达到指示最小占用容量限制的上述第二阈值。
请参见图8,图8是本申请一实施例提供的另一种改进的存储卷的缓存空间管理的过程示意图。
图8是在图7基础之上变化而来。图8与图7主要区别在于:图8中动态申请开关的开关状态为使能状态;以及,图8中的非频繁访问空间中的部分缓存已被释放回至存储设备缓存空间中,并且图8中的非频繁访问空间指示最小占用容量限制的上述第二阈值。
在示出的一种实施方式中,在监测到达到上述第二阈值的上述第二卷缓存空间存在空闲缓存时,将上述动态申请开关的开关状态从关闭状态置为使能状态,上述存储设备将上述动态申请开关的开关状态从关闭状态置为使能状态。
例如,请参见图8所示,当监测达到5M的非频繁访问空间存在空闲缓存时,存储设备将动态申请开关的开关状态从如图7中所示的关闭状态置为如图8中所示的使能状态。
需要说明的是,达到上述第二阈值的上述第二卷缓存空间存在空闲缓存的情况,通常可以包括以下场景:对目标存储卷的读写访问停止、对目标存储卷的读写访问降低(比如:对目标存储卷的读写访问降低导致上述第二卷缓存空间中的数据将数据已及时回写至物理空间)。
在本说明书中,在监测到达到上述第二阈值的上述第二卷缓存空间存在空闲缓存并将上述动态申请开关的开关状态从关闭状态置为使能状态后,上述存储设备可以继续执行如图5对应的存储卷的缓存空间管理的过程。
为了方便整理理解和描述,请参见图9,图9是本申请一实施例提供的一种改进的存储卷的缓存空间管理的总体过程示意图。
图9是基于图5、图6、图7、图8变化而来,图9中的状态1与图5相同,图9中的状态2与图6相同,图9中的状态3与图7相同,图9中的状态4与图8相同,状态1、状态2、状态3、状态4的具体内容请参见前文图5、图6、图7、图8对应的描述,这里不再赘述。图9主要用于描述针对状态1、状态2、状态3、状态4之间相互转换的过程。
如图9所示,在为卷缓存空间从固定分配空间初始分配缓存后,在对存储卷存在持续读写访问时,由状态1变化至状态2;在达到状态2后,在对存储卷存在持续读写访问,则由状态2变化至状态3;在达到状态2后,在对存储卷的读写访问降低或停止时,则由状态2变化至状态4;在达到状态3后,在对存储卷的读写访问降低或停止时,则由状态3变化至状态4;在达到状态4后,在对存储卷存在持续读写访问时,由状态4变化至状态2。
需要说明的是,图中9的在对存储卷的读写访问降低或停止的情况,也即为,前文描述的在监测到达到上述第二阈值的上述第二卷缓存空间存在空闲缓存的情况。
请将图9与图3进行对比,基于图9所示改进的存储卷的缓存空间管理的总体过程相比图3所示的存储卷的缓存空间管理的总体过程,在持续读写访问下,把卷缓存空间的总容量控制在较低的水平。当存储设备关闭卷缓存空间时,可以在更短的时间内完卷缓存空间中的数据处理,从而实现快速完成关闭卷缓存空间。
在以上技术方案中,基于响应于针对目标存储卷的创建指令,创建目标存储卷并从固定分配空间中为目标存储卷初始分配对应的预设容量的卷缓存空间;计算卷缓存空间的读写访问频度,并基于计算得到的读写访问频度,将卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;响应于针对目标存储卷的读写访问,对第一卷缓存空间和第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对卷缓存空间执行动态缓存管理。一方面,在对目标存储卷进行突发读写访问时,实现了从存储设备缓存空间中的动态分配空间中灵活申请缓存。另一方面,在对目标存储卷进行持续读写访问时,实现了将卷缓存空间中的非频繁读写访问的第二卷缓存空间中的缓存数据强制回写至目标卷中,并将空闲缓存释放回至存储设备缓存空间中的动态分配空间中。基于以上两方面的实现,由此提高了存储设备缓存空间的缓存分配和回收的管理效率以及在多个存储卷对应共享同一个存储设备缓存空间时的缓存空间利用率。
与上述方法实施例相对应,本申请还提供了存储卷的缓存空间管理装置的实施例。
与上述方法实施例相对应,本说明书还提供了一种存储卷的缓存空间管理装置的实施例。本说明书的存储卷的缓存空间管理装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图10所示,为本说明书的存储卷的缓存空间管理装置所在电子设备的一种硬件结构图,除了图10所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
图11是本说明书一实施例示出的一种存储卷的缓存空间管理装置的框图。
请参考图11,所述存储卷的缓存空间管理装置110可以应用在前述图10所示的电子设备中,所述装置应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间;所述装置包括:
分配模块1101,响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间;
计算模块1102,计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间;
管理模块1103,响应于针对所述目标存储卷的读写访问,对所述第一卷缓存空间和所述第二卷缓存空间执行空间占用监测,并基于空间占用监测的监测结果和预设的动态申请开关,对所述卷缓存空间执行动态缓存管理。
在本实施例中,所述动态申请开关的开关状态包括使能状态、关闭状态;其中,所述动态申请开关的开关状态的初始状态为使能状态;
所述卷缓存空间对应被预分配了指示所述卷缓存空间的最大占用容量限制的第一阈值;
所述管理模块1103进一步:
在监测到所述卷缓存空间的缓存容量小于第一阈值并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,从所述动态分配空间中为所述卷缓存空间新增分配缓存,以使所述卷缓存空间的缓存容量扩展。
在本实施例中,所述第二卷缓存空间对应被预分配了指示所述第二卷缓存空间的最小占用容量限制的第二阈值,所述管理模块1103进一步:
在监测到所述卷缓存空间的缓存容量达到第一阈值以及所述第二卷缓存空间的缓存容量大于第二阈值,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,监测到直至所述第二卷缓存空间的当前占用容量达到所述第二阈值;或者,
在监测到所述第二卷缓存空间的缓存容量大于第二阈值以及从所述动态分配空间中无法获取空闲缓存为所述卷缓存空间进行分配,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,直至监测到所述第二卷缓存空间的当前占用容量达到所述第二阈值。
在本实施例中,所述数据回写的数据量大于所述读写访问的数据的数据量;所述管理模块1103进一步:
在监测到达到第二阈值的第二卷缓存空间存在空闲缓存时,将所述动态申请开关的开关状态从关闭状态置为使能状态。
在本实施例中,所述管理模块1103进一步:
在监测到所述第二卷缓存空间的当前占用容量持续达到所述第二阈值时,将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中。
在本实施例中,所述计算模块1102进一步:
计算所述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在所述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将所述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的装置或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (14)

1.一种存储卷的缓存空间管理方法,所述方法应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间,并预设动态申请开关,所述动态申请开关的开关状态包括使能状态、关闭状态;所述方法包括:
响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间,所述卷缓存空间对应被预分配了指示所述卷缓存空间的最大占用容量限制的第一阈值;
计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间,所述第二卷缓存空间对应被预分配了指示所述第二卷缓存空间的最小占用容量限制的第二阈值;
在监测到所述卷缓存空间的缓存容量达到第一阈值以及所述第二卷缓存空间的缓存容量大于第二阈值,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,监测到直至所述第二卷缓存空间的当前占用容量达到所述第二阈值。
2.根据权利要求1所述的方法,所述动态申请开关的开关状态的初始状态为使能状态;所述方法还包括:
在监测到所述卷缓存空间的缓存容量小于第一阈值并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,从所述动态分配空间中为所述卷缓存空间新增分配缓存,以使所述卷缓存空间的缓存容量扩展。
3.根据权利要求1所述的方法,所述方法还包括:
在监测到所述第二卷缓存空间的缓存容量大于第二阈值以及从所述动态分配空间中无法获取空闲缓存为所述卷缓存空间进行分配,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,直至监测到所述第二卷缓存空间的当前占用容量达到所述第二阈值。
4.根据权利要求3所述的方法,所述数据回写的数据量大于所述读写访问的数据的数据量;所述方法还包括:
在监测到达到第二阈值的第二卷缓存空间存在空闲缓存时,将所述动态申请开关的开关状态从关闭状态置为使能状态。
5.根据权利要求3所述的方法,所述方法还包括:
在监测到所述第二卷缓存空间的当前占用容量持续达到所述第二阈值时,将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中。
6.根据权利要求1所述的方法,所述计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间,包括:
计算所述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在所述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将所述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
7.一种存储卷的缓存空间管理装置,所述装置应用于存储设备;所述存储设备包括若干个存储卷、与若干个存储卷对应的存储设备缓存空间;其中,所述存储设备缓存空间包括用于在存储卷创建时执行缓存空间初始分配的固定分配空间、以及用于在存储卷创建后的读写访问触发执行缓存空间动态分配的动态分配空间,并预设动态申请开关,所述动态申请开关的开关状态包括使能状态、关闭状态;所述装置包括:
分配模块,响应于针对目标存储卷的创建指令,创建目标存储卷并从所述固定分配空间中为所述目标存储卷初始分配对应的预设容量的卷缓存空间,所述卷缓存空间对应被预分配了指示所述卷缓存空间的最大占用容量限制的第一阈值;
计算模块,计算所述卷缓存空间的读写访问频度,并基于计算得到的所述读写访问频度,将所述卷缓存空间划分为频繁读写访问的第一卷缓存空间和非频繁读写访问的第二卷缓存空间,所述第二卷缓存空间对应被预分配了指示所述第二卷缓存空间的最小占用容量限制的第二阈值;
管理模块,用于在监测到所述卷缓存空间的缓存容量达到第一阈值以及所述第二卷缓存空间的缓存容量大于第二阈值,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,监测到直至所述第二卷缓存空间的当前占用容量达到所述第二阈值。
8.根据权利要求7所述的装置,所述动态申请开关的开关状态的初始状态为使能状态;所述管理模块进一步:
在监测到所述卷缓存空间的缓存容量小于第一阈值并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,从所述动态分配空间中为所述卷缓存空间新增分配缓存,以使所述卷缓存空间的缓存容量扩展。
9.根据权利要求8所述的装置,所述管理模块进一步:
在监测到所述第二卷缓存空间的缓存容量大于第二阈值以及从所述动态分配空间中无法获取空闲缓存为所述卷缓存空间进行分配,并且所述动态申请开关的开关状态为使能状态时,响应于针对所述目标存储卷的读写访问,将所述动态申请开关的开关状态置为关闭状态,以及将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中,并将所述第二卷缓存空间中数据回写后的空闲缓存释放回所述动态分配空间中,直至监测到所述第二卷缓存空间的当前占用容量达到所述第二阈值。
10.根据权利要求9所述的装置,所述数据回写的数据量大于所述读写访问的数据的数据量;所述管理模块进一步:
在监测到达到第二阈值的第二卷缓存空间存在空闲缓存时,将所述动态申请开关的开关状态从关闭状态置为使能状态。
11.根据权利要求9所述的装置,所述管理模块进一步:
在监测到所述第二卷缓存空间的当前占用容量持续达到所述第二阈值时,将所述第二卷缓存空间中的缓存的数据回写至所述目标存储卷的物理空间中。
12.根据权利要求7所述的装置,所述计算模块进一步:
计算所述卷缓存空间中缓存的数据的读写访问频度,将读写访问频度大于预设访问次数阈值的数据对应在所述卷缓存空间中占用的缓存空间作为第一卷缓存空间;以及,将所述卷缓存空间中除第一卷缓存空间外的其它缓存空间作为第二卷缓存空间。
13.一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行如权利要求1至6任一项所述的方法。
14.一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1至6任一项所述的方法。
CN202010879227.3A 2020-08-27 2020-08-27 存储卷的缓存空间管理方法、装置及电子设备 Active CN112015343B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010879227.3A CN112015343B (zh) 2020-08-27 2020-08-27 存储卷的缓存空间管理方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010879227.3A CN112015343B (zh) 2020-08-27 2020-08-27 存储卷的缓存空间管理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112015343A CN112015343A (zh) 2020-12-01
CN112015343B true CN112015343B (zh) 2022-07-22

Family

ID=73503784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010879227.3A Active CN112015343B (zh) 2020-08-27 2020-08-27 存储卷的缓存空间管理方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112015343B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112995704B (zh) * 2021-04-25 2021-08-06 武汉中科通达高新技术股份有限公司 一种缓存管理方法、装置、电子设备及存储介质
CN113628087B (zh) * 2021-08-20 2022-06-03 轩昂环保科技股份有限公司 城市智慧管家管理系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102207830B (zh) * 2011-05-27 2013-06-12 杭州宏杉科技有限公司 一种缓存动态分配管理方法及装置
US8799569B2 (en) * 2012-04-17 2014-08-05 International Business Machines Corporation Multiple enhanced catalog sharing (ECS) cache structure for sharing catalogs in a multiprocessor system
US9058282B2 (en) * 2012-12-31 2015-06-16 Intel Corporation Dynamic cache write policy
CN107092443B (zh) * 2017-04-28 2020-04-07 杭州宏杉科技股份有限公司 数据迁移方法及装置
CN110286856B (zh) * 2019-06-17 2022-11-25 杭州宏杉科技股份有限公司 卷克隆方法、装置、电子设备及机器可读存储介质

Also Published As

Publication number Publication date
CN112015343A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
US9098417B2 (en) Partitioning caches for sub-entities in computing devices
US9830277B2 (en) Selective space reclamation of data storage memory employing heat and relocation metrics
US6857047B2 (en) Memory compression for computer systems
USRE48127E1 (en) Information processing apparatus and driver
US7424577B2 (en) Dynamic optimization of cache memory
US9146688B2 (en) Advanced groomer for storage array
US8725936B2 (en) Storage system with flash memory, and storage control method
EP3414665B1 (en) Profiling cache replacement
US7430639B1 (en) Optimization of cascaded virtual cache memory
CN108268219B (zh) 一种处理io请求的方法及装置
US9047200B2 (en) Dynamic redundancy mapping of cache data in flash-based caching systems
Awad et al. Write-aware management of nvm-based memory extensions
CN112015343B (zh) 存储卷的缓存空间管理方法、装置及电子设备
JP6711121B2 (ja) 情報処理装置、キャッシュメモリ制御方法、およびキャッシュメモリ制御プログラム
CN113778662B (zh) 内存回收方法及装置
US11126553B2 (en) Dynamic allocation of memory between containers
CN113342265B (zh) 缓存管理方法、装置、处理器及计算机装置
US11138104B2 (en) Selection of mass storage device streams for garbage collection based on logical saturation
CN111427804B (zh) 一种减少缺页中断次数的方法、存储介质及智能终端
US20090276600A1 (en) Method and apparatus for determining memory usage for a computing device
CN111639037A (zh) 一种缓存的动态分配方法、装置及DRAM-Less固态硬盘
US11693570B2 (en) Machine learning to improve caching efficiency in a storage system
CN109739688B (zh) 快照资源空间管理方法、装置、电子设备
US20050144389A1 (en) Method, system, and apparatus for explicit control over a disk cache memory
CN114115711B (zh) 基于非易失内存文件系统的快速缓存系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant