当前位置: 首页 > 专利查询>易乐天专利>正文

一种数据自精简方法和系统及存储装置制造方法及图纸

技术编号:9569072 阅读:98 留言:0更新日期:2014-01-16 02:38
一种数据自精简方法和系统及存储装置,该方法包括以下步骤:1.1初始化;1.2接收操作请求,如果是空间释放或精简卷删除请求,则进入步骤1.5,如是写请求,则进入步骤1.3;1.3接收写入数据段,从信息映射表找到精简池空闲空间的逻辑地址,将该数据段写入对应的物理地址;1.4更新各映射表和空闲空间索引表,并在存储设备或者存储介质中相应更新,如写数据操作请求是覆盖写操作请求进入步骤1.5;1.5更新各映射表和空闲空间索引表完成空间释放或者回收操作并进行相应更新。该系统用来执行上述方法。该存储装置包括上述自精简系统。本发明专利技术在空闲空间写数据提高存储系统写性能,用写时拷贝保证映射表一致性,及时告知存储设备无效页面地址。

【技术实现步骤摘要】
一种数据自精简方法和系统及存储装置
本专利技术主要涉及到数据存储领域,特指一种适用于数据存储设备的数据自精简方法及系统。
技术介绍
传统存储系统中的逻辑卷在存储设备或存储介质上所占用的物理空间大小,通常在逻辑卷被创建时就已经由应用或用户采用固定空间分配方法指定和分配;也就是说,逻辑卷在存储设备或存储介质上独占一个固定的物理空间。然而,在实际使用中,由于逻辑卷占用的存储空间中很多部分没有填满数据,因此将造成大量存储设备或者存储介质上的存储空间闲置。因此,传统的固定空间分配方法的存储空间利用率极为低下。近些年来,越来越多的存储系统在为逻辑卷分配空间时,采用自动精简配置技术。在自动精简配置技术中,存储系统通常包含精简卷、精简池和映射表三部分。其中,精简卷为建立在精简池之上的逻辑卷;精简池为精简卷分配存储设备上的物理空间;映射表包括多个表项,该映射表用于记录精简池存储的数据的物理地址与该数据对应的精简卷逻辑地址之间的对应关系。在自动精简配置技术中,在为应用创建新的逻辑卷时,存储系统并不会让逻辑卷独占存储设备或存储介质上的物理空间,而是提供一个虚拟的精简卷,多个精简卷对应的精简池共享存储设备或者存储介质上的物理空间。当应用向精简卷中写入数据时,处理过程如下:精简卷根据应用发出的请求写入数据的命令,向精简池申请存储空间,精简池从存储设备或存储介质中分配物理空间,以使待写入数据写入精简池分配的存储空间中;在待写入数据写入精简池分配的存储空间后,映射表记录该数据在精简卷上对应的逻辑地址,与在精简池中对应的存储设备或存储介质上的物理地址,以指示该数据实际分配的物理空间。传统的数据自精简技术存在以下几个问题:1.采用原地更新方法完成覆盖写操作,当覆盖写操作指向随机地址时,数据在存储设备或者存储介质上的物理位置也会随机分布,导致存储设备或者存储介质的写性能降低。对于新型存储介质如闪存等,这种使数据分布在不同物理位置的随机写操作,还会急剧降低其使用寿命。2.更新映射表时通常只能采用外部一致性机制如日志机制等,保存映射表的一致性,当对精简卷进行映射表的更新操作时发生系统宕机,则可能会导致长时间的映射表恢复操作,甚至导致映射表的不一致。3.现有的自动精简配置方法通常只实现了逻辑层的空间回收,没有利用新型的存储介质如闪存、PCM等本身的空间管理特性真正释放物理层空间。比如,删除一个文件时,现有的自动精简配置方法通常只将映射表中相应的表项删除,而不告知固态硬盘无效页面地址。
技术实现思路
本专利技术要解决的问题就在于:针对现有技术存在的技术问题,本专利技术提供一种在空闲空间写数据、基于写时拷贝技术保证映射表一致性、能够及时告知存储设备无效页面地址的数据自精简方法和系统及存储装置。为了解决上述问题,本专利技术采用以下技术方案:一种数据自精简方法,包括以下步骤:(1.1)精简控制层为每个精简池建立信息映射表,表示每个精简池的状态信息和对应的物理存储空间;为每个精简卷中的已分配存储空间的数据段建立地址映射表,表示所述数据段和精简池上的逻辑地址的映射关系;为每个精简池建立空闲空间索引表,表示该精简控制层上的每一段空闲空间的逻辑地址和逻辑空间大小;并将所述信息映射表和地址映射表以及空闲空间索引表写入存储设备或存储介质中;(1.2)精简控制层接收主机端对精简卷的操作请求,如果该操作请求是空间释放请求或者精简卷删除请求,则进入步骤(1.5);如果该操作请求是写数据操作请求,则进入步骤(1.3);(1.3)精简控制层接收所述写数据操作请求对应的写入数据段,从所述信息映射表中找到有空闲逻辑空间的精简池,从该精简池的空闲空间索引表中找到空闲空间的逻辑地址,将所述写入数据段写入该逻辑地址对应的存储设备或者存储介质中的物理地址中;(1.4)精简控制层更新所述信息映射表和地址映射表以及空闲空间索引表,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表;如果所述写数据操作请求是覆盖写数据操作请求,被该操作请求指定的覆盖写的逻辑地址为待释放的逻辑地址,进入步骤(1.5);否则,所述主机端对精简卷的操作请求执行完毕;(1.5)针对每一个所述待释放的逻辑地址,通过更新所述信息映射表和地址映射表以及空闲空间索引表完成对该逻辑地址的释放或者回收操作,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表。在步骤(1.1)中,所述信息映射表采用平衡树结构,其中,关键字为精简池对应的逻辑地址偏移,根节点和中间节点保存了所述关键字和关键字对应的地址指针,地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和信息索引段,一个信息索引段对应一个精简池,表示为:物理卷信息数组,精简池RAID类型,精简池大小,精简池剩余大小>;所述物理卷信息数组表示为:(设备ID,偏移),(设备ID,偏移),(设备ID,偏移)…;其中,所述设备ID用于表示物理存储设备或者存储介质的唯一标识号,所述偏移表示设备ID对应的存储设备或者存储介质中的起始位置,所述物理卷信息数组的长度由精简池的RAID类型决定,所述精简池RAID类型表示构成精简池的存储设备或者存储介质的冗余组织方式,所述精简池大小表示精简池对应的物理存储空间大小,所述精简池剩余大小记录精简池中空闲的物理存储空间大小。作为本专利技术方法的进一步改进:在步骤(1.1)中,所述地址映射表采用平衡树结构,关键字为所述精简卷的标识符和所述精简卷的卷内逻辑地址偏移,根节点和中间节点保存了关键字和关键字对应的地址指针,该地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和逻辑地址索引段,一个所述逻辑地址索引段对应于一个已经被写入存储设备或存储介质的数据段,表示为:数据段逻辑地址,数据段长度,所述数据段逻辑地址表示该数据段在精简池中的逻辑地址起始位置,所述数据段长度表示该数据段的数据长度。在步骤(1.1)中,所述空闲空间索引表采用平衡树结构,关键字为一段空闲空间在精简池中的起始地址,根节点和中间节点保存了关键字和关键字对应的地址指针,该地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和空闲空间长度段。在步骤(1.4)中,包括以下步骤:(1.4.1)更新所述信息映射表,根据写入数据段的大小重新计算被占用逻辑空间的精简池的剩余大小,并修改该精简池对应的精简池剩余大小表项中的值;将该精简池对应的新的信息映射表写入存储设备或者存储介质中,删除原有的表项;(1.4.2)更新所述地址映射表,在该表中增加一个逻辑地址索引段,表示所述写入数据段占用的逻辑地址起始位置和该数据段的长度;将增加的索引段数据写入存储设备或者存储介质中;(1.4.3)更新所述空闲空间索引表,删除精简池已被使用的空闲空间对应的表项,并将该精简池剩余的空闲空间组织成为新的空闲空间索引表;将该精简池对应的新的空闲空间索引表写入存储设备或者存储介质中,删除原有的空闲空间索引表。所述步骤(1.5)的具体流程为:(1.5.1)更新所述信息映射表,根据释放或者回收掉的数据段的大小重新计算被占用逻辑空间的精简池的剩余大本文档来自技高网
...
一种数据自精简方法和系统及存储装置

【技术保护点】
一种数据自精简方法,其特征在于,包括以下步骤:(1.1)精简控制层为每个精简池建立信息映射表,表示每个精简池的状态信息和对应的物理存储空间;为每个精简卷中的已分配存储空间的数据段建立地址映射表,表示所述数据段和精简池上的逻辑地址的映射关系;为每个精简池建立空闲空间索引表,表示该精简层上的每一段空闲空间的逻辑地址和逻辑空间大小;并将所述信息映射表和地址映射表以及空闲空间索引表写入存储设备或存储介质中;(1.2)精简控制层接收主机端对精简卷的操作请求,如果该操作请求是空间释放请求或者精简卷删除请求,则进入步骤(1.5);如果该操作请求是写数据操作请求,则进入步骤(1.3);?(1.3)精简控制层接收所述写数据操作请求对应的写入数据段,从所述信息映射表中找到有空闲逻辑空间的精简池,从该精简池的空闲空间索引表中找到空闲空间的逻辑地址,将所述写入数据段写入该逻辑地址对应的存储设备或者存储介质中的物理地址中;(1.4)精简控制层更新所述信息映射表和地址映射表以及空闲空间索引表,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表;如果所述写数据操作请求是覆盖写数据操作请求,被该操作请求指定的覆盖写的逻辑地址为待释放的逻辑地址,进入步骤(1.5);否则,所述主机端对精简卷的操作请求执行完毕;(1.5)针对每一个所述待释放的逻辑地址,通过更新所述信息映射表和地址映射表以及空闲空间索引表完成对该逻辑地址的释放或者回收操作,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表。...

【技术特征摘要】
1.一种数据自精简方法,其特征在于,包括以下步骤:(1.1)精简控制层为每个精简池建立信息映射表,表示每个精简池的状态信息和对应的物理存储空间;为每个精简卷中的已分配存储空间的数据段建立地址映射表,表示所述数据段和精简池上的逻辑地址的映射关系;为每个精简池建立空闲空间索引表,表示该精简控制层上的每一段空闲空间的逻辑地址和逻辑空间大小;并将所述信息映射表和地址映射表以及空闲空间索引表写入存储设备或存储介质中;(1.2)精简控制层接收主机端对精简卷的操作请求,如果该操作请求是空间释放请求或者精简卷删除请求,则进入步骤(1.5);如果该操作请求是写数据操作请求,则进入步骤(1.3);(1.3)精简控制层接收所述写数据操作请求对应的写入数据段,从所述信息映射表中找到有空闲逻辑空间的精简池,从该精简池的空闲空间索引表中找到空闲空间的逻辑地址,将所述写入数据段写入该逻辑地址对应的存储设备或者存储介质中的物理地址中;(1.4)精简控制层更新所述信息映射表和地址映射表以及空闲空间索引表,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表;如果所述写数据操作请求是覆盖写数据操作请求,被该操作请求指定的覆盖写的逻辑地址为待释放的逻辑地址,进入步骤(1.5);否则,所述主机端对精简卷的操作请求执行完毕;(1.5)针对每一个所述待释放的逻辑地址,通过更新所述信息映射表和地址映射表以及空闲空间索引表完成对该逻辑地址的释放或者回收操作,并更新存储设备或者存储介质中存储的所述信息映射表和地址映射表以及空闲空间索引表。2.根据权利要求1所述的数据自精简方法,其特征在于,在步骤(1.1)中,所述信息映射表采用平衡树结构,其中,关键字为精简池对应的逻辑地址偏移,根节点和中间节点保存了所述关键字和关键字对应的地址指针,地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和信息索引段,一个信息索引段对应一个精简池,表示为:<物理卷信息数组,精简池RAID类型,精简池大小,精简池剩余大小>;所述物理卷信息数组表示为:(设备ID,偏移),(设备ID,偏移),(设备ID,偏移)…;其中,所述设备ID用于表示物理存储设备或者存储介质的唯一标识号,所述偏移表示设备ID对应的存储设备或者存储介质中的起始位置,所述物理卷信息数组的长度由精简池的RAID类型决定,所述精简池RAID类型表示构成精简池的存储设备或者存储介质的冗余组织方式,所述精简池大小表示精简池对应的物理存储空间大小,所述精简池剩余大小记录精简池中空闲的物理存储空间大小。3.根据权利要求1所述的数据自精简方法,其特征在于,在步骤(1.1)中,所述地址映射表采用平衡树结构,关键字为所述精简卷的标识符和所述精简卷的卷内逻辑地址偏移,根节点和中间节点保存了关键字和关键字对应的地址指针,该地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和逻辑地址索引段,一个所述逻辑地址索引段对应于一个已经被写入存储设备或存储介质的数据段,表示为:数据段逻辑地址,数据段长度,所述数据段逻辑地址表示该已经被写入存储设备或存储介质的数据段在精简池中的逻辑地址起始位置,所述数据段长度表示该已经被写入存储设备或存储介质的数据段的数据长度。4.根据权利要求1所述的数据自精简方法,其特征在于,在步骤(1.1)中,所述空闲空间索引表采用平衡树结构,关键字为一段空闲空间在精简池中的起始地址,根节点和中间节点保存了关键字和关键字对应的地址指针,该地址指针是关键字对应的子节点在存储设备或者存储介质上的物理位置,所述平衡树的叶节点中保存着多个关键字和空闲空间长度段。5.根据权利要求1所述的数据自精简方法,其特征在于,在步骤(1.4)中,包括以下步骤:(1.4.1)更新所述信息映射表,根据写入数据段的大小重新计算被占用逻辑空间的精简池的剩余大小,并修改该精简池对应的精简池剩余大小表项中的值;将该精简池对应的新的信息映射表写入存储设备或者存储介质中,删除原有的表项;(1.4.2)更新所述地址映射表,在该表中增加一个逻辑地址索引段,表示所述写入数据段占用的逻辑地址起始位置和该写入数据段的长...

【专利技术属性】
技术研发人员:易乐天钱凯赵朕毅
申请(专利权)人:易乐天钱凯赵朕毅
类型:发明
国别省市:

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

1