用于分配存储的设备、系统和方法技术方案

技术编号:7575493 阅读:187 留言:0更新日期:2012-07-18 19:02
本发明专利技术公开了一种用于分配非易失性存储的设备、系统和方法。存储装置可呈现可超出该装置的物理存储容量的逻辑地址。存储装置可分配逻辑地址空间中的逻辑容量。当存在足够的未指定和/或未分配的逻辑容量来满足分配请求时,可允许该请求。通过请求物理存储容量可将数据存储在非易失性存储装置上。当存在足够的可用物理存储容量来满足物理存储请求,诸如存储请求或物理存储预留时,可允许该请求。该装置可保留将逻辑地址空间中的逻辑标识符(LID)与存储装置上的存储位置关联的索引。这个索引可用于做出逻辑容量分配和/或管理物理存储空间。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及数据存储的分配并且更具体地涉及数据存储在非易失性存储装置诸如固态存储装置上的分配。
技术介绍
相关领域描述典型的数据存储装置为块存储装置,其中逻辑块地址(“LBA”)与物理块地址 (“PBA”)之间存在近一对一映射。通常,LBA和PBA之间的一对一映射的唯一例外是,数据存储装置可具有少量附加块,这些附加块可重新映射到经确定为不良块的块。根据LBA 和PBA之间的这种一对一映射,LBA与对象名、文件名和其它逻辑标识符之间的高层映射在文件服务器或文件系统中进行。通常,使用LBA和PBA之间的这种一对一映射的数据存储装置为随机存取存储装置。文件服务器或文件系统可使用小型计算机系统接口(“SCSI”) 命令将指定给特定LBA的数据块发送至数据存储装置。当初始化数据存储装置时,向典型的存储装置分配LBA。在这种情况下,分配LBA相当于将在数据存储装置上可用的LBA的范围或列表指定给连接至文件服务器或文件系统的客户端或计算机,所述文件服务器或文件系统连接至数据存储装置。在服务器或其它计算机可访问不止一个数据存储装置的系统中,如果数据存储装置为随机存取装置,则文件服务器或文件系统通常包括附加标识符,其中每个LBA识别被访问的特定数据存储装置。所述标识符可为驱动器名、在存储装置的制造商处指定的唯一标识符、逻辑名或可用于对所述系统中可访问的各种数据存储装置进行区分的其它标识符。在该系统中,客户端可通过一个或多个服务器来访问数据存储装置。每个客户端均可分配有存储空间。分配的存储空间可为整个存储装置,可为存储装置的一部分,或者可为两个或更多个存储装置的全部或部分。通常,对于其中的服务器或客户端可访问两个或更多个存储装置的系统而言,存储空间和相应地址的分配将在连接至这些存储装置的文件服务器或文件系统中进行。通常,文件系统管理指定和未指定的LBA。未指定的LBA位于未使用的LBA池中。创建新文件时,将LBA从未使用的LBA池中移除并且LBA与该文件关联。删除该文件时,使LBA返回到未使用的LBA池中。在LBA和PBA之间不存在一一对应的数据存储装置诸如顺序存储装置或日志结构存储装置中,通常存在另一层逻辑到物理映射,其与存在于连接至随机存取存储装置的文件系统或文件服务器中的逻辑到逻辑映射类似。这些装置可针对访问所述装置的任何文件系统冗余地管理其自身的LBA使用率。这种重复可有利于文件系统实施〃 TRIM命令〃,以向所述装置提供文件系统正在将LBA移动至未使用的LBA池中的提示,以使得所述装置可同样如此。可能存在其它逻辑到逻辑映射,以支持其它中间转换,例如支持精简配置层。在顺序存储装置、日志结构文件系统或其它类似装置中,文件系统/文件服务器中的逻辑到逻辑映射以及其它逻辑到逻辑映射和/或逻辑到物理映射是无效的,增加了复杂性并且在一些情况下为冗余的。
技术实现思路
非易失性存储装置可向客户端呈现逻辑地址空间。逻辑地址空间可包括可与存储装置的物理存储位置(或通常为“存储位置”)无关的多个逻辑标识符(LID)。因此,逻辑地址空间与特定存储位置之间可能不存在预定义和/或预置映射。所述装置(或其它实体) 可保留将逻辑地址空间中的LID与存储装置的各个存储位置关联的索引。LID与存储位置之间的关联数据可为任意数据。LID与存储位置的关联数据可用于确定可用逻辑容量和/ 或可用物理存储容量。客户端请求可包括针对逻辑地址空间中的逻辑容量的请求。如果逻辑地址空间中存在足够的逻辑容量,则可满足该请求。逻辑地址空间的逻辑容量可包括已分配、未分配、 已指定和/或未指定的识别LID。如本文所用,分配的LID可指逻辑地址空间中已分配给特定客户端的LID。所述分配可包括预留所述LID、一系列LID、一组顺序定序LID、一组连续LID、一组连续和不连续 LID和/或逻辑地址空间中的逻辑容量,以供客户端使用。分配的LID可能或可能不对应于存储装置上的物理存储容量。未分配的LID可指逻辑地址空间中未分配给客户端和/或与存储在非易失性存储装置上的数据关联的LID。如本文所用,指定的LID可指与存储在非易失性存储装置上的数据关联的分配的 LID。因此,指定的LID可指与所述存储装置的一个或多个存储位置关联的LID。未指定的 LID可指与存储在非易失性存储装置上的数据不关联的LID。如上所述,分配的LID可为未指定的LID。类似地,未分配的LID可为未指定的LID。一种分配数据存储空间的设备可被配置为在功能上执行以下必要步骤接收分配请求,确定数据存储装置的逻辑空间是否具有足够的未指定和/或未分配的逻辑空间,并且提供回复。分配请求模块可从请求装置接收分配逻辑地址空间中的逻辑容量的分配请求。在数据存储装置处接收分配请求。所述逻辑容量用于将数据存储在数据存储装置上。逻辑容量模块确定逻辑地址空间是否具有足够的未指定和/或未分配的逻辑空间来满足分配请求。所述确定可包括搜索保留逻辑容量分配的索引,诸如逻辑到物理映像,其包括逻辑空间中映射到一个或多个物理位置的指定的逻辑标识符(“LID”),与所述指定的LID相对应的数据存储在数据存储装置上的所述一个或多个物理位置。然而,可使用其它数据结构、索引和/或映像。分配回复模块可响应于确定逻辑空间是否具有足够的逻辑空间的逻辑容量模块向请求装置提供回复。所述回复可包括关于是否可满足分配请求的指示。如本文所用,逻辑标识符(“LID”)可指逻辑块地址(“LBA”)、一系列LBA、一组不连续LBA、索引、文件名、索引节点或其它逻辑标识符中的一个或多个。LID可指不同于对象标识符的逻辑标识符。在一些实施方案中,数据存储装置包括存储装置和存储控制器和/或驱动器,其中存储控制器和/或驱动器包括包括存储装置中的物理地址的逻辑到物理映像。在另一个实施方案中,对应于逻辑空间(“逻辑空间容量”)的存储容量显著大于数据存储装置的物理存储容量。逻辑空间容量包括与分配的逻辑空间结合的未指定和/或未分配的逻辑空间。分配的逻辑空间包括分配的逻辑空间内的指定的LID和未指定的LID。在一些实施方案中,所述设备包括物理容量请求模块、物理容量分配模块和物理容量回复模块。物理容量请求模块从请求装置接收物理容量请求,其中在数据存储装置处接收物理容量请求。物理容量请求包括数据存储装置中的可用物理存储容量的量的请求。 物理容量分配模块确定数据存储装置上的可用物理存储容量的量。可用物理存储容量的量包括数据存储装置中的未指定的存储位置的物理存储容量。在另一个实施方案中,物理容量分配模块追踪指定的物理地址、未指定的物理地址、分配的物理地址容量和/或未分配的物理地址容量。在另一个实施方案中,接收分配请求包括接收逻辑分配请求或接收存储数据的请求。在另一个实施方案中,确定逻辑空间是否包括足够的未分配的逻辑空间来满足分配请求包括接收请求的LID列表以待分配并且验证这些LID可供分配或者识别满足连同所述请求接收的标准的未分配的LID。在一个实施方案中,所述设备包括分配模块,该分配模块响应于确定逻辑空间包括足够的未分配的逻辑空间来满足分配请求的逻辑容量模块向请求装置分配足以满足分配请求的未分配的逻辑空间。在另一个实施方案中,分配模块结合存储数据的请求分配一个或多个LID,并且在存储与存储数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:乔纳森·希尔达大卫·弗林
申请(专利权)人:弗森艾奥公司
类型:发明
国别省市:

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

1
相关领域技术