管理存储系统中的访问请求的方法、设备和程序产品技术方案

技术编号:28837131 阅读:15 留言:0更新日期:2021-06-11 23:34
本公开涉及管理存储系统中的访问请求的方法、设备和程序产品。在一种方法中,基于针对存储系统的访问请求,获取访问请求所涉及的数据对象的地址范围。基于描述一组地址范围与一组地址范围内的一组数据区块被执行的一组操作之间的关联关系,确定是否正在针对地址范围内的数据区块执行垃圾收集操作。根据确定正在针对地址范围内的数据区块执行垃圾收集操作,标识访问请求的访问类型。基于访问类型,利用存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,响应于访问请求。由于没有被执行垃圾收集操作的地址范围内的数据区块具有较快访问速度,利用这些区块来服务于访问请求,可以提高数据访问性能。提供了相应的设备和计算机程序产品。

【技术实现步骤摘要】
管理存储系统中的访问请求的方法、设备和程序产品
本公开的各实现方式涉及存储系统的管理,更具体地,涉及用于管理存储系统中的访问请求的方法、设备和计算机程序产品。
技术介绍
随着数据存储技术的发展,各种数据存储设备已经能够向用户提供越来越高的数据存储能力,并且访问请求速度也有了很大程度的提高。随着用户不断向存储系统中写入和删除数据,存储系统中的存储空间中将会出现碎片。在此的碎片是指存储系统中的空闲存储空间并不连续,而是存在空闲存储空间和已分配存储空间的大小过小,并且相互交错的情况。此时,需要针对存储系统执行垃圾收集(GarbageCollection),以便确保存储系统中的空闲区块以及已分配区块尽量以连续方式分布。此时,如何以更为有效的方式管理存储系统中的垃圾收集以及后续的访问请求操作,成为一个研究热点。
技术实现思路
因而,期望能够开发并实现一种以更为有效的方式来管理存储系统的技术方案。期望该技术方案能够与现有的存储系统相兼容,并且通过改造现有存储系统的各种配置,来以更为有效的方式管理存储系统中的任务。根据本公开的第一方面,提供了一种用于管理存储系统中的访问请求的方法。在该方法中,基于针对存储系统的访问请求,获取访问请求所涉及的数据对象的地址范围。基于描述一组地址范围与一组地址范围内的一组数据区块被执行的一组操作之间的关联关系,确定是否正在针对地址范围内的数据区块执行垃圾收集操作。根据确定正在针对地址范围内的数据区块执行垃圾收集操作,标识访问请求的访问类型。基于访问类型,利用存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于访问请求。根据本公开的第二方面,提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得电子设备执行用于管理存储系统中的访问请求的动作。该动作包括:基于针对存储系统的访问请求,获取访问请求所涉及的数据对象的地址范围;基于描述一组地址范围与一组地址范围内的一组数据区块被执行的一组操作之间的关联关系,确定是否正在针对地址范围内的数据区块执行垃圾收集操作;根据确定正在针对地址范围内的数据区块执行垃圾收集操作,标识访问请求的访问类型;以及基于访问类型,利用存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于访问请求。根据本公开的第三方面,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的第一方面的方法。附图说明结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实现方式。在附图中:图1A和1B分别示意性示出了其中可以实现本公开的实现方式的存储系统的示意图;图2示意性示出了其中可以实现本公开的实现方式的示例性环境的框图;图3示意性示出了图2中的存储资源池的图示;图4示意性示出了根据本公开的示例性实现方式的用于管理存储系统中的访问请求的过程的框图;图5示意性示出了根据本公开的示例性实现方式的用于管理存储系统中的访问请求的方法的流程图;图6A示意性示出了根据本公开的示例性实现方式的性能特征的一个示例的框图;图6B示意性示出了根据本公开的示例性实现方式的性能特征的另一示例的框图;图7示意性示出了根据本公开的示例性实现方式的用于建立性能特征和垃圾收集状态之间的关联关系的过程的框图;图8示意性示出了根据本公开的示例性实现方式的根据访问类型来针对存储系统执行访问请求的过程的框图;以及图9示意性示出了根据本公开的示例性实现的用于管理存储系统中的访问请求的设备的框图。具体实施方式下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实现”和“一个实现”表示“至少一个示例实现”。术语“另一实现”表示“至少一个另外的实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。将会理解,在存储系统的运行过程中,为了确保存储系统的效率以及可分配存储空间的连续性,通常在后台执行垃圾收集操作。在垃圾收集操作中,需要执行数据区块的迁移,以便将零散的已分配数据区块执行,例如,可以将其迁移至连续存储空间。以此方式,可以确保已分配区块连续分布,并且使得可用于分配的空闲区块也可以连续分布。垃圾收集操作通常在存储系统后台执行,并且将会导致针对存储系统中的数据区块执行的访问请求操作的延迟。目前已经提供了用于提高垃圾收集的性能的技术方案。在一个技术方案中,存储设备的提供者已经提出了通过优化固件的方式来提高垃圾收集性能的技术方案。然而,该技术方案是在存储设备的内部实现的,当存储设备已经被部署在存储系统中之后,存储系统的管理员并不能修改存储设备内部的设置。在另一技术方案中,已经提出了在存储系统级别的垃圾收集管理。例如,可以避免存储系统出现过多垃圾后再执行大规模垃圾收集,而是可以随时在存储系统中执行小规模的垃圾收集。尽管该技术方案可以避免大规模垃圾收集造成在较长时间段期间的访问请求延迟。然而,如果用户正好在小规模垃圾收集期间访问存储系统中的数据,同样会面临访问请求的延迟。此时,如何处理针对存储系统中的数据区块的访问,以便降低垃圾收集造成的延迟,成为一个研究热点。在下文中,将首先描述本公开的应用环境。在本公开的上下文中,存储系统可以是基于RAID的存储系统。基于RAID的存储系统可以将多个存储设备组合起来,成为一个磁盘阵列。通过提供冗余的存储设备,可以使得整个磁盘组的可靠性大大超过单一的存储设备。RAID可以提供优于单一的存储设备的各种优势,例如,增强数据整合度,增强容错功能,增加吞吐量或容量,等等。RAID存在多个标准,例如RAID-1,RAID-2,RAID-3,RAID-4,RAID-5,RAID-6,RAID-10,RAID-50等等。关于RAID级别的更多细节,本领域技术人员例如可以参见https://en.wikipedia.org/wiki/Standard_RAID_levels、以及https://en.wikipedia.org/wiki/Nested_RAID_levels等。图1A示意性示出了其中可以实现本公开的方法的存储系统100A的示意图。在图1A所示的存储系统中,以包括五个独立存储设备(110、112、114、116以及118)的RAID-5(4D+1P,其中4D表示存储系统中包括四个存本文档来自技高网...

【技术保护点】
1.一种用于管理存储系统中的访问请求的方法,包括:/n基于针对所述存储系统的访问请求,获取所述访问请求所涉及的数据对象的地址范围;/n基于描述一组地址范围与所述一组地址范围内的一组数据区块被执行的一组操作之间的关联关系,确定是否正在针对所述地址范围内的数据区块执行垃圾收集操作;/n根据确定正在针对所述地址范围内的数据区块执行所述垃圾收集操作,标识所述访问请求的访问类型;以及/n基于所述访问类型,利用所述存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于所述访问请求。/n

【技术特征摘要】
1.一种用于管理存储系统中的访问请求的方法,包括:
基于针对所述存储系统的访问请求,获取所述访问请求所涉及的数据对象的地址范围;
基于描述一组地址范围与所述一组地址范围内的一组数据区块被执行的一组操作之间的关联关系,确定是否正在针对所述地址范围内的数据区块执行垃圾收集操作;
根据确定正在针对所述地址范围内的数据区块执行所述垃圾收集操作,标识所述访问请求的访问类型;以及
基于所述访问类型,利用所述存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于所述访问请求。


2.根据权利要求1所述的方法,其中所述存储系统是独立磁盘冗余阵列,所述存储系统包括多个条带;以及其中基于所述访问类型,利用所述存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于所述访问请求包括:根据确定所述访问类型为读取类型,
确定所述地址范围内的所述数据区块所在的条带;
分别从所述条带中的所述数据区块以外的一组数据区块读取一组数据;以及
基于读取的所述一组数据,重建所述数据对象。


3.根据权利要求1所述的方法,其中所述存储系统是独立磁盘冗余阵列,所述存储系统包括多个条带;以及其中基于所述访问类型,利用所述存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于所述访问请求包括:根据确定所述访问类型为写入类型,
从所述存储系统中选择没有被执行垃圾收集操作的临时数据区块;
向选择的所述临时数据区块写入所述数据对象;以及
更新与所述数据对象相对应的地址映射以将所述数据对象的地址设置为所述数据对象被写入的地址范围。


4.根据权利要求3所述的方法,其中从所述存储系统中选择没有被执行垃圾收集操作的所述临时数据区块包括:
确定所述地址范围内的所述数据区块所在的条带;
确定所述条带中的所述数据区块以外的一组数据区块;
从所述存储系统中的所述一组数据区块分别所位于的一组存储设备以外的存储设备中,选择所述临时数据区块。


5.根据权利要求3所述的方法,进一步包括:
根据确定所述垃圾收集操作已经被完成,将所述数据对象从所述临时数据区块迁移至所述地址范围;以及
更新所述地址映射以将所述数据对象的地址设置为所述地址范围。


6.根据权利要求1所述的方法,其中所述存储系统是独立磁盘冗余阵列,所述存储系统包括多个条带;以及其中基于所述访问类型,利用所述存储系统中的没有被执行垃圾收集操作的地址范围内的数据区块,来响应于所述访问请求包括:根据确定所述访问类型为空间分配类型,
从所述存储系统中选择没有被执行垃圾收集操作的一组数据区块;以及
向所述访问请求的请求者分配选择的所述一组数据区块。


7.根据权利要求1所述的方法,进一步包括:
分别获取与所述一组数据区块相关联的一组性能特征以及所述一组数据区块正在被执行一组操作;以及
基于与所述一组数据区块相关联的所述一组性能特征和所述一组操作训练所述关联关系,使得基于训练的所述关联关系和所述一组性能特征所获取的一组操作状态估计与所述一组操作相匹配。


8.根据权利要求7所述的方法,其中所述一组性能特征中的性能特征包括以下中的至少任一项:
针对所述一组数据区块中的数据区块进行访问的延迟时间、所述延迟时间在预定时间段内的变化、以及所述数据区块中被访问的数据量。


9.根据权利要求8所述的方法,其中所述一组性能特征中的性能特征进一步包括所述数据量中的净载荷,以及所述方法进一步包括:
确定所述数据区块被访问的所述数据量与所述存储系统中的目标数据对象之间的差异;以及
基于所述差异确定所述净载荷。


10.根据权利要求7所述的方法,其中确定是否正在针对所述地址范围内的数据区块执行垃圾收集操作包括:
确定与所述地址范围内的所述数据区块相关联的性能特征;以及
基于确定的所述性能特征和所述关联关系,获取与所述性能特征相关联的所述操作状态估计。


11.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器耦...

【专利技术属性】
技术研发人员:刘冰
申请(专利权)人:伊姆西IP控股有限责任公司
类型:发明
国别省市:美国;US

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

1