具有经压缩的正向映射的存储分层制造技术

技术编号:17912236 阅读:30 留言:0更新日期:2018-05-10 18:10
一种数据存储设备包括存储分层和存储控制器,所述存储控制器可操作地耦合至所述存储分层并且被配置成通信地耦合至主机设备。所述存储控制器包括第一存储器,所述第一存储器可操作地耦合至所述存储控制器并且被配置用于存储替代数据结构。所述存储控制器进一步包括第二存储器,所述第二存储器可操作地耦合至所述存储控制器并且被配置用于存储正向映射,所述正向映射被配置用于将多个逻辑块地址映射到所述存储分层上的物理位置。所述存储控制器进一步包括筛选模块,所述筛选模块被配置用于基于包含在所述替代数据结构中的数据对所述正向映射进行筛选。所述存储控制器进一步包括压缩模块,所述压缩模块被配置用于压缩所述正向映射以便生成压缩正向映射。

【技术实现步骤摘要】
具有经压缩的正向映射的存储分层
技术介绍
数据存储设备可以使用如可在O(logn)时间内或更快地搜索的正向映射等正向映射来将逻辑地址与存储分层上的物理位置关联以供主机设备使用。根据逻辑和物理地址范围的大小以及存储介质上数据的碎片化水平,表示正向映射的数据结构(比如,树或散列表)对于可用存储器空间来说可能增长得太大。对于具有有限存储器空间以及可能需要频繁更新正向映射的动态存储分层的单独存储设备,表示正向映射的数据结构的大小更有可能是个问题。
技术实现思路
一种数据存储设备包括存储分层和存储控制器,所述存储控制器可操作地耦合至所述存储分层并且被配置成通信地耦合至主机设备。所述存储控制器包括第一存储器,所述第一存储器可操作地耦合至所述存储控制器并且被配置用于存储替代数据结构。所述存储控制器进一步包括第二存储器,所述第二存储器可操作地耦合至所述存储控制器并且被配置用于存储正向映射,所述正向映射被配置用于将多个逻辑块地址映射到所述存储分层上的物理位置。所述存储控制器进一步包括筛选模块,所述筛选模块被配置用于基于包含在所述替代数据结构中的数据对所述正向映射进行筛选。所述存储控制器进一步包括压缩模块,所述压缩模块被配置用于压缩所述正向映射以便生成压缩正向映射。提供本
技术实现思路
是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本
技术实现思路
并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。本文还描述和叙述了其他实施方式。附图说明图1是用于管理具有压缩正向映射的存储分层的示例装置的框图。图2是示例正向映射的中间压缩级别。图3是具有里程碑逻辑块地址条目的示例压缩正向映射。图4展示了用于更新正向映射的示例操作。图5是对环形缓冲器中的压缩正向映射的筛选操作的示例简化图。图6展示了筛选操作的示例操作。图7展示了用于在筛选操作期间搜索和更新正向映射的示例操作。具体实施方式本公开涉及对存储分层上的逻辑和物理地址进行映射。从逻辑到物理地址的映射在本文中被称为正向映射。正向映射可以用于基于逻辑地址找到数据的物理地址以供主机设备用于访问数据。在具有非常大的存储器容量的数据存储系统上,可以使用可以提供对正向映射的可更新且可搜索表示的数据结构(例如,树、索引文件、散列表等)来表示正向映射。表示正向映射的数据结构的特性可以是搜索所述特性满足搜索度量,包括但不限于满足O(logn)或更好的对数搜索的搜索复杂度。具有这些能力的数据结构根据其大小而伴随有存储器占地面积成本,并且可能无法增长到大到足以将正向映射维持在对数据存储设备上的可用存储器的约束内。可能需要更多存储器以便存储表示正向映射的数据结构,其中,数据存储介质具有大范围的物理地址和/或其中,预计碎片化水平很大。为了使设备增大正向映射的大小并保留令人满意的搜索和更新能力,可用压缩正向映射(例如,使用哈夫曼码来压缩的正向映射)来代替数据结构以便减小与存储正向映射相关联的存储器占地面积,但是还构想了其他压缩方案或编码。压缩正向映射可以保留搜索能力(比如,在对数时间内或以更好的方式进行搜索的能力),同时相比基于树或散列表的数据结构,占据较小的存储器占地面积。关于对压缩正向映射的修改,在一些情况下,如下文中更详细地描述的,有可能在不首先进行解压缩的情况下对本文中描述的正向映射进行更新。在不进行解压缩的情况下不可能改变压缩映射的情况下,可以对单独数据结构进行实例化和维持以便存储无法输入到压缩正向映射上的任何替代条目,所述数据结构在本文中被称为替代数据结构。可以在各种存储器结构(包括但不限于:静态缓冲器、环形缓冲器、动态存储器等和/或其任何组合)中实施压缩正向映射。当替代条目的单独数据结构接近容量条件或刷新条件时,“筛选”操作可以对压缩正向映射进行解压缩(或者分段地或者全部地)、合并来自单独数据结构的替代条目、然后对正向映射进行再压缩并丢弃单独数据结构(或者一些条目或者全部)。正向映射在筛选操作期间保持可搜索,这是因为单独数据结构(或其子集)为了搜索目的而“滑动”进入到压缩正向映射的域中,同时对尚存较高优先序(可能地,最近实例化的)单独数据结构(其将在筛选操作期间和之后存储未来替代条目,直到其在下一个筛选操作中合并到正向映射中)做出任何新替代条目。筛选操作将分摊改变压缩列表的成本。筛选到压缩正向映射中的替代条目越多,筛选操作将更高效。图1是用于管理具有压缩正向映射的存储分层的示例装置100的框图。装置100包括数据存储设备102,所述数据存储设备具有经由主机接口122将存储分层108通信地耦合至主机104的存储控制器106。在实施方式中,存储分层108是动态存储分层。存储控制器106提供用于允许主机104将数据存储到存储分层108中并从其中检索数据的机制。在实施方式中,存储分层108是数据高速缓存,包括但不限于:易失性随机存取存储器(RAM)存储介质(比如,DRAM)或非易失性RAM(比如,NAND闪存)。在另一种实施方式中,存储分层108是主数据存储设备,比如,旋转磁盘数据存储介质。存储控制器106可以利用通信接口和协议(包括SATA、SCSI、eSATA、SAS、USB等)经由主机接口122与主机104通信。存储控制器106还包括功能模块110(比如,正向映射模块112、压缩模块114、更新模块116、筛选模块118、替代数据结构模块120、滑动模块126以及正向映射搜索模块130)。正向映射模块112生成将逻辑块地址与物理位置关联的正向映射。正向映射搜索模块130对正向映射进行搜索以便定位正向映射的与逻辑块地址相对应的区域。在实施方式中,搜索模块130被配置用于使用以下各项中的至少一项在最差的O(logn)时间内定位压缩正向映射的与逻辑块地址相对应的区域:索引文件、树、里程碑条目以及散列表。压缩模块114可以将正向映射重写成可压缩格式(例如,通过用逻辑块地址增量(△)来代替全宽逻辑块地址、为连续块数量添加值、移除可以从其他数据(比如,在此示例中,等于具有下降的二进制表示的低16位逻辑块地址的“文件编号”)中推断的任何数据、等等)。压缩模块114可以进一步根据各种压缩技术对可压缩正向映射进行压缩以便生成压缩正向映射。压缩模块114还可以作为筛选操作的一部分、搜索操作的一部分或为了将压缩正向映射准备好以便更新正向映射中的条目的目的而对压缩正向映射进行解压缩。更新模块116可以对正向映射、可压缩正向映射和/或压缩正向映射中的任何数据执行更新。例如,更新模块116可以通过将物理位置字段中的值编辑为指示压缩正向映射中的条目被删除的特殊值来将所述条目标记为删除。更新模块116可以进一步通过用等宽或较窄宽度位置来代替条目的物理位置字段中的值从而更新压缩正向映射中的物理位置字段。更新模块116可以进一步对解压缩正向映射或可压缩正向映射做出任何编辑。存储控制器106可以进一步包括用于执行本文公开的筛选操作的筛选模块118。筛选模块118本身可以对压缩正向映射进行解压缩,或者其可以调用压缩模块114以便对压缩正向映射进行解压缩。筛选模块118可以执行如下文更加详细地解释的与筛选操作有关的其他功能,包括确定什么时候应当执行筛选操作、存储压缩或解压缩正向映射、对其进行复制本文档来自技高网...
具有经压缩的正向映射的存储分层

【技术保护点】
一种方法,包括:生成存储分层的正向映射,所述正向映射将多个逻辑块地址映射到所述存储分层上的物理位置;压缩所述正向映射;从主机接收对所述正向映射中逻辑块地址到所述动态存储分层上的物理位置的映射进行修改的请求;以及响应于来自所述主机的所述请求来更新经压缩的正向映射。

【技术特征摘要】
2016.10.27 US 15/336,6671.一种方法,包括:生成存储分层的正向映射,所述正向映射将多个逻辑块地址映射到所述存储分层上的物理位置;压缩所述正向映射;从主机接收对所述正向映射中逻辑块地址到所述动态存储分层上的物理位置的映射进行修改的请求;以及响应于来自所述主机的所述请求来更新经压缩的正向映射。2.如权利要求1所述的方法,其中,所述更新操作进一步包括:在不对所述正向映射进行解压缩的情况下更新所述正向映射。3.如权利要求2所述的方法,其中,所述更新操作进一步包括:减小条目的物理位置字段的长度。4.如权利要求2所述的方法,其中,所述更新操作进一步包括:仅删除条目的盘区的一部分。5.如权利要求1所述的方法,进一步包括:使用以下各项中的至少一项在O(logn)时间内或更快地定位所述经压缩正向映射的与逻辑块地址相对应的区域:索引文件、里程碑条目、树和散列表。6.如权利要求1所述的方法,其中,所述正向映射中的一个或多个条目包括逻辑块地址△字段、连续块数量字段和物理位置字段。7.如权利要求1所述的方法,其中,所述更新操作进一步包括:更新替代数据结构,所述替代数据结构包括以下各项之一:树和散列表。8.一种方法,包括:生成存储分层的正向映射,所述正向映射将多个逻辑块地址映射到所述存储分层上的物理位置;压缩所述正向映射;从主机接收对所述正向映射中逻辑块地址到所述动态存储分层上的物理位置的映射进行修改的请求;响应于来自所述主机的所述请求来更新替代数据结构;对所述正向映射的至少一部分进行解压缩;对所述正向映射的至少一部分进行筛选;以及对所述正向映射的至少一部分进行再压缩。9.如权利要求8所述的方法,其中,所述筛选操作进一步包括:从经解压缩的正向映射中丢弃被删除条目;从所述经解压缩的正向映射中丢弃被替代逻辑块地址范围;以及将来自所述数据结构的替代表条目插入到所述经解压缩的正向映射中。10.如权利要求9所述的方法,其中,所述筛选操作进一步包括:对所述经解压缩的正向映射中的条目的压缩效率进行评估;以及基于评估操作来选择用于所述再压缩操...

【专利技术属性】
技术研发人员:B·T·埃德加M·A·盖特纳J·利物达尔
申请(专利权)人:希捷科技有限公司
类型:发明
国别省市:美国,US

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

1