System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于使用基于段的存储的实例存储的技术制造技术_技高网

用于使用基于段的存储的实例存储的技术制造技术

技术编号:41328665 阅读:3 留言:0更新日期:2024-05-13 15:06
本公开涉及一种用于使用基于段的存储的实例存储的技术,其中描述了用于在存储设备上存储数据的示例,包括:在实时写入流缓存中存储对应于数据段的一个或多个逻辑块(LB);针对数据段中的每个LB写入在缓存条目中指向实时写入流缓存中的LB的缓存元素,其中缓存条目包括对应于数据段的多个LB的多个缓存元素;针对缓存条目写入在映射表中指向缓存条目的表条目;以及当针对缓存条目触发存储策略时,将由缓存条目的每个缓存元素所指向的多个LB写入到流以作为连续LB在存储设备上进行存储;并且更新表条目以指向存储设备上的连续LB中的第一LB的物理地址。

【技术实现步骤摘要】

所描述的方面涉及存储设备,诸如非and(nand)存储设备,并且更具体地,涉及存储设备上的基于段的存储。


技术介绍

1、在针对裸金属存储设备或存储设备阵列的实例存储中,压缩可以用于改进系统性能、服务质量(qos)、成本效率等。例如,实例存储可以用在具有多个虚拟机访问同一驱动阵列(例如,固态驱动(ssd)阵列)以进行存储的场景中。实例存储可以包括多个ssd,这些ssd可以被组合用于支持多个虚拟机的单个系统存储,这些虚拟机可以执行一个或多个服务器,并且实例存储可以经由接口卡和相关联的固件来访问驱动阵列。

2、虽然压缩可以改变应用的用户数据大小,但可以使用映射表来维持原始逻辑块寻址(lba)(例如,实例存储中的lba)与新物理位置(例如,ssd中的lba)之间的映射。应用可以访问较小逻辑块(lb)(诸如4千字节(kb))中的ssd阵列,并且用于ssd阵列的接口卡固件可以维护基于4kb的逻辑到物理(l2p)的映射表。随着ssd驱动阵列容量变得更大,由接口卡固件维护的l2p映射表的大小也会增加。例如,16太字节(tb)的ssd阵列可以使用至少16吉字节(gb)的动态随机存取存储器(dram)来缓存l2p表。具有大的dram表可能导致dram的大成本、使用较大电路布局的更多dram芯片、较大功率消耗(可能导致ssd温度、性能(功率节流))。


技术实现思路

1、下面呈现了对一个或多个实现方式的简化概述,以便提供对这种实现的基本理解。本概述不是对所有预期实现方式的广泛综述,并且既不旨在标识所有实现方式的关键或重要元素,也不旨在描绘任何或所有实现方式的范围。其唯一目的是以简化形式呈现一个或多个实现方式的一些概念,作为对稍后呈现的更详细描述的序言。

2、在一个示例中,提供了一种用于在存储设备上使用基于段的存储的实例存储的计算机实现的方法,该方法包括:将对应于数据段的一个或多个逻辑块存储在实时写入流缓存中;针对数据段中的每个逻辑块,写入缓存条目中指向实时写入流缓存中的该逻辑块的缓存元素,其中缓存条目包括与数据段的多个逻辑块对应的多个缓存元素;针对缓存条目,写入在映射表中指向缓存条目的表条目;以及当存储策略针对缓存条目被触发时:将由缓存条目的每个缓存元素所指向的多个逻辑块写入到流以作为连续逻辑块在存储设备上进行存储;以及将表条目更新为指向存储设备上的连续逻辑块中的第一逻辑块的物理地址。

3、在另一示例中,提供了一种用于在存储设备上使用基于段的存储的实例存储的装置,其中该装置包括处理器和其上具有指令的非瞬态存储器。该指令在由处理器执行时使处理器:将对应于数据段的一个或多个逻辑块存储在实时写入流缓存中;针对数据段中的每个逻辑块,写入缓存条目中指向实时写入流缓存中的该逻辑块的缓存元素,其中缓存条目包括与数据段的多个逻辑块对应的多个缓存元素;针对缓存条目,写入在映射表中指向该缓存条目的表条目;以及当存储策略针对缓存条目被触发时,将由缓存条目的每个缓存元素所指向的多个逻辑块写入到流以作为连续逻辑块在存储设备上进行存储;以及将表条目更新为指向存储设备上的连续逻辑块中的第一逻辑块的物理地址。

4、在另一示例中,提供一种非瞬态计算机可读存储介质,该非瞬态计算机可读存储介质存储有指令,该指令在由处理器执行时使处理器执行一种方法。该方法包括:将对应于数据段的一个或多个逻辑块存储在实时写入流缓存中;针对数据段中的每个逻辑块,写入缓存条目中指向实时写入流缓存中的该逻辑块的缓存元素,其中缓存条目包括与数据段的多个逻辑块对应的多个缓存元素;针对缓存条目,写入在映射表中指向该缓存条目的表条目;以及当存储策略针对缓存条目被触发时,将由缓存条目的每个缓存元素所指向的多个逻辑块写入到流以作为连续逻辑块在存储设备上进行存储;以及将表条目更新为指向存储设备上的连续逻辑块中的第一逻辑块的物理地址。

5、为了实现前述和相关目的,一个或多个实现包括下文充分描述并在权利要求中特别指出的特征。以下描述和附图详细阐述了一个或多个实现的某些说明性特征。然而,这些特征仅指示可以采用各种实现的原理的各种方式中的几种,并且本描述旨在包括所有这样的实现及其等效方案。

本文档来自技高网...

【技术保护点】

1.一种用于在存储设备上使用基于段的存储的实例存储的计算机实现的方法,包括:

2.根据权利要求1所述的计算机实现的方法,其中所述存储策略是通过填充数据段的所述多个逻辑块中的每个逻辑块来触发的。

3.根据权利要求1所述的计算机实现的方法,其中存储所述一个或多个逻辑块包括:使用仅附加写入操作并发地存储与所述数据段或者包括所述数据段的多个数据段中的一者对应的多个逻辑块。

4.根据权利要求1所述的计算机实现的方法,其中与缓存条目相关联的所述多个逻辑块的至少一部分处于在所述实时写入流缓存中的非连续位置,并且其中将所述多个逻辑块写入到所述流包括:以与所述缓存条目中的所述多个缓存元素的顺序对应的序列,从所述实时写入流缓存写入与所述缓存条目相关联的所述多个逻辑块。

5.根据权利要求4所述的计算机实现的方法,其中针对给定逻辑块的所述缓存元素指示所述第一逻辑块的所述物理地址和所述给定逻辑块在所述连续逻辑块中的偏移,并且其中针对所述多个逻辑块中的每个逻辑块,将所述多个逻辑块以所述序列写入到所述流是基于在针对该逻辑块的所述缓存元素中所指示的所述第一逻辑块的所述物理地址和所述偏移。

6.根据权利要求1所述的计算机实现的方法,其中所述表条目包括作为修整、缓存、未密封或密封中的一者的所述数据段的段状态。

7.根据权利要求1所述的计算机实现的方法,还包括:执行对所述流上的所述连续逻辑块的压缩。

8.根据权利要求1所述的计算机实现的方法,其中所述实时写入流由促进访问所述存储设备的接口卡来提供。

9.根据权利要求1所述的计算机实现的方法,其中所述数据段包括所述存储设备的用户空间序列逻辑块地址范围。

10.根据权利要求1所述的计算机实现的方法,还包括:在写入到所述实时写入流缓存之后或在写入到所述流之后,处理针对所述数据段的一个或多个被请求的逻辑块,以与连续逻辑块一起进行存储,包括:

11.根据权利要求10所述的计算机实现的方法,其中当所述段状态被缓存时,处理所述一个或多个被请求的逻辑块包括:

12.根据权利要求10所述的计算机实现的方法,其中当所述段状态是未密封时,处理所述一个或多个被请求的逻辑块包括:

13.根据权利要求12所述的计算机实现的方法,还包括:在处理所述一个或多个被请求的逻辑块之前对所述数据段进行解压缩。

14.根据权利要求10所述的计算机实现的方法,其中当所述段状态是密封时,处理所述一个或多个被请求的逻辑块包括:

15.根据权利要求14所述的计算机实现的方法,还包括:在处理所述一个或多个被请求的逻辑块之前对所述数据段进行解压缩。

16.一种用于在存储设备上使用基于段的存储的实例存储的装置,所述装置包括处理器和其上具有指令的非瞬态存储器,其中所述指令在由所述处理器执行时使所述处理器:

17.根据权利要求16所述的装置,其中所述存储策略是通过填充数据段的所述多个逻辑块中的每个逻辑块来触发的。

18.根据权利要求16所述的装置,其中所述指令使所述处理器:使用仅附加写入操作并发地存储与所述数据段或包括所述数据段的多个数据段中的一者对应的多个逻辑块。

19.根据权利要求16所述的装置,其中与缓存条目相关联的所述多个逻辑块的至少一部分处于在所述实时写入流缓存中的非连续位置,并且其中所述指令使所述处理器:以与所述缓存条目中的所述多个缓存元素的顺序对应的序列,从所述实时写入流缓存写入与所述缓存条目相关联的所述多个逻辑块。

20.一种非瞬态计算机可读存储介质,所述非瞬态计算机可读存储介质存储有指令,所述指令在由处理器执行时使所述处理器执行方法,其中所述方法包括:

...

【技术特征摘要】

1.一种用于在存储设备上使用基于段的存储的实例存储的计算机实现的方法,包括:

2.根据权利要求1所述的计算机实现的方法,其中所述存储策略是通过填充数据段的所述多个逻辑块中的每个逻辑块来触发的。

3.根据权利要求1所述的计算机实现的方法,其中存储所述一个或多个逻辑块包括:使用仅附加写入操作并发地存储与所述数据段或者包括所述数据段的多个数据段中的一者对应的多个逻辑块。

4.根据权利要求1所述的计算机实现的方法,其中与缓存条目相关联的所述多个逻辑块的至少一部分处于在所述实时写入流缓存中的非连续位置,并且其中将所述多个逻辑块写入到所述流包括:以与所述缓存条目中的所述多个缓存元素的顺序对应的序列,从所述实时写入流缓存写入与所述缓存条目相关联的所述多个逻辑块。

5.根据权利要求4所述的计算机实现的方法,其中针对给定逻辑块的所述缓存元素指示所述第一逻辑块的所述物理地址和所述给定逻辑块在所述连续逻辑块中的偏移,并且其中针对所述多个逻辑块中的每个逻辑块,将所述多个逻辑块以所述序列写入到所述流是基于在针对该逻辑块的所述缓存元素中所指示的所述第一逻辑块的所述物理地址和所述偏移。

6.根据权利要求1所述的计算机实现的方法,其中所述表条目包括作为修整、缓存、未密封或密封中的一者的所述数据段的段状态。

7.根据权利要求1所述的计算机实现的方法,还包括:执行对所述流上的所述连续逻辑块的压缩。

8.根据权利要求1所述的计算机实现的方法,其中所述实时写入流由促进访问所述存储设备的接口卡来提供。

9.根据权利要求1所述的计算机实现的方法,其中所述数据段包括所述存储设备的用户空间序列逻辑块地址范围。

10.根据权利要求1所述的计算机实现的方法,还包括:在写入到所述实时写入流缓存之后或在写入到所述流之后,处理...

【专利技术属性】
技术研发人员:许鹏周平胡潮红刘飞徐长友范勤
申请(专利权)人:脸萌有限公司
类型:发明
国别省市:

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

1