存储系统中垃圾收集的方法和系统的制作方法_5

文档序号:9631493阅读:来源:国知局
两次迭代中,存在用于15次数据写入的6次移动。写入幅度然后可被计算为I次写入+ ?次移动/15次写入)= 1.4。换句话说,对于每次写入,需要0.4次附加写入。通过在接收写入请求的同时在改进的垃圾收集操作过程中基于寿命将数据分类实现的1.4的写入幅度是通过在接收写入请求的同时在常规的垃圾收集过程中忽略数据寿命实现的1.8的写入幅度的改善。
[0086]本发明的一个或多个实施方式提供基于数据的寿命将存储于存储设备中的数据分类的系统和方法。以这种方式,所有已知为持久数据的数据被存储于长寿命块中,而短寿命数据或具有未知寿命的数据被存储于短寿命块中。通过根据本发明的各种实施方式配置数据,存储设备通过减少垃圾收集过程中的数据移动改善给定固态存储器模块(或其子集)的性能。通过减少垃圾收集过程中的数据移动,根据本发明的一个或多个实施方式,存储设备中的写入幅度可最小化。由于对各写入而言数据移动减少,因此,将写入幅度最小化可导致固态存储器模块的编写/擦除循环的次数更少。由于编写/擦除循环的次数会减少固态存储器模块的寿命,因此,通过使写入幅度最小化获得性能增益。
[0087]并且,本发明的实施方式使得能够创建允许存储设备在单个查找步骤中访问数据的存储器内数据结构。换句话说,存储设备可使用存储器内数据结构,以直接查明存储设备中的数据的物理地址。使用该信息,存储设备能够直接访问数据并且不需要为了获得数据横穿任何中间元数据层次。
[0088]可通过使用由系统中的一个或多个处理器执行的指令实现本发明的一个或多个实施方式。并且,这种指令可与存储于一个或多个非暂时性计算机可读介质上的计算机可读指令对应。
[0089]虽然关于有限数量的实施方式描述了本发明,但本领域技术人员在受益于本公开之后可以理解,可在不背离这里公开的本发明的范围的情况下设计其它实施方式。因此,本发明的范围仅由所附的权利要求限定。
【主权项】
1.一种非暂时性计算机可读介质,包括指令,所述指令被处理器执行时执行一种方法,所述方法包括: (al)接收将数据写入到持久存储器的第一请求; (bl)响应于所述第一请求,将所述数据写入到所述持久存储器中的短寿命块,其中,所述数据是短寿命数据;和 (cl)执行包括以下过程的改进的垃圾收集操作: 选择第一块中的第一碎片页; 确定所述第一碎片页是活动的; 基于确定所述第一碎片页是活动的,将所述第一碎片页移动到所述持久存储器中的长寿命块, 其中,所述长寿命块与所述短寿命块不同,并且其中,所述长寿命块不包含任何短寿命数据。2.根据权利要求1所述的非暂时性计算机可读介质,其中,所述方法还包括: 接收将第二数据写入到持久存储器的第二请求,其中,所述第二请求指定所述第二数据是长寿命数据; 响应于所述第二请求,将所述第二数据写入到所述持久存储器中的所述长寿命块。3.根据权利要求1所述的非暂时性计算机可读介质,其中,确定所述第一碎片页是活动的包括: 使用与所述第一碎片页相关联的第一 TOC条目产生第一导出物理地址; 基于第一对象ID和第一偏移ID选择第一被存储物理地址,其中,所述第一对象ID和所述第一偏移ID位于所述第一 TOC条目中;和 基于所述第一导出物理地址与所述第一被存储物理地址相匹配,确定所述第一碎片页是活动的。4.根据权利要求1所述的非暂时性计算机可读介质,其中,选择所述第一被存储物理地址还包含: 使用所述第一对象ID和所述第一偏移ID在存储器内数据结构中执行查找,以识别所述第一被存储物理地址。5.根据权利要求1所述的非暂时性计算机可读介质,其中,所述短寿命块是NAND块。6.根据权利要求1所述的非暂时性计算机可读介质,其中,所述持久存储器是固态存储器。7.根据权利要求1所述的非暂时性计算机可读介质,其中,所述改进的垃圾收集操作还包括: 选择所述持久存储器中的第二块; 确定所述第二块包含多个活动碎片页,并且不包含任何死碎片页;和 将所述多个活动碎片页的各活动页移动到第二长寿命块。8.根据权利要求7所述的非暂时性计算机可读介质,其中,执行所述多个活动碎片页中的每一个的移动用于耗损均衡。9.根据权利要求1所述的非暂时性计算机可读介质,其中,与选自包含(al)和(bl)的组的至少一个并行地执行所述改进的垃圾收集操作的至少一部分。10.—种用于管理数据的方法,包括:(a2)接收将数据写入到持久存储器的第一请求;(b2)响应于所述第一请求,将所述数据写入到所述持久存储器中的短寿命块,其中,所述数据是选自包含短寿命数据和未知寿命的数据的组的一个;和(c2)执行包括以下过程的改进的垃圾收集操作:选择第一块中的第一碎片页;确定所述第一碎片页是活动的;基于确定所述第一碎片页是活动的,将所述第一碎片页移动到所述持久存储器中的长寿命块,其中,所述长寿命块与所述短寿命块不同,并且其中,所述长寿命块不包含任何短寿命数据。11.根据权利要求10所述的方法,所述方法还包括:接收将第二数据写入到持久存储器的第二请求,其中,所述第二请求指定所述第二数据是长寿命数据;响应于所述第二请求,将所述第二数据写入到所述持久存储器中的所述长寿命块。12.根据权利要求10所述的方法,其中,确定所述第一碎片页是活动的包括:使用与所述第一碎片页相关联的第一 TOC条目产生第一导出物理地址;基于第一对象ID和第一偏移ID选择第一被存储物理地址,其中,所述第一对象ID和所述第一偏移ID位于所述第一 TOC条目中;和基于所述第一导出物理地址与所述第一被存储物理地址相匹配,确定所述第一碎片页是活动的。13.根据权利要求10所述的方法,其中,选择所述第一被存储物理地址还包含:使用所述第一对象ID和所述第一偏移ID在存储器内数据结构中执行查找,以识别所述第一被存储物理地址。14.根据权利要求10所述的方法,其中,所述改进的垃圾收集操作还包括:选择所述持久存储器中的第二块;确定所述第二块包含多个活动碎片页,并且不包含任何死碎片页;和将所述多个活动碎片页的各活动页移动到第二长寿命块。15.根据权利要求14所述的方法,其中,执行所述多个活动碎片页中的每一个的移动用于耗损均衡。16.根据权利要求10所述的方法,其中,与选自包含(a2)和(b2)的组的至少一个并行地执行所述改进的垃圾收集操作的至少一部分。17.—种存储设备,包括:持久存储器;包含指令的非暂时性计算机可读介质;处理器,被配置为执行所述指令,其中,所述指令被所述处理器执行时执行所述方法,所述方法包括:(a3)接收将数据写入到所述持久存储器的第一请求;(b3)响应于所述第一请求,将所述数据写入到所述持久存储器中的短寿命块,其中,所述数据是选自包含短寿命数据和未知寿命的数据的组的一个;和(c3)执行包括以下过程的改进的垃圾收集操作:选择第一块中的第一碎片页;确定所述第一碎片页是活动的;基于确定所述第一碎片页是活动的,将所述第一碎片页移动到所述持久存储器中的长寿命块,其中,所述长寿命块与所述短寿命块不同,并且其中,所述长寿命块不包含任何短寿命数据,其中,与选自包含(a3)和(b3)的组的至少一个并行地执行所述改进的垃圾收集操作的至少一部分。18.根据权利要求17所述的存储设备,还包括:被配置为存储存储器内数据结构的存储器,其中,选择所述第一被存储物理地址还包括使用所述第一对象ID和所述第一偏移ID在所述存储器内数据结构中执行查找,以识别所述第一被存储物理地址。19.根据权利要求17所述的存储设备,其中,所述持久存储器包括多个固态存储器模块。20.根据权利要求17所述的存储设备,其中,所述方法还包括:接收将第二数据写入到持久存储器的第二请求,其中,所述第二请求指定所述第二数据是长寿命数据;和响应于所述第二请求,将所述第二数据写入到所述持久存储器中的所述长寿命块。
【专利摘要】公开了一种用于存储系统中垃圾收集的方法和系统。本发明的管理数据的方法包括:接收将数据写入到持久存储器的第一请求;并响应于第一请求,将数据写入到持久存储器中的短寿命块,其中,数据是短寿命数据或未知寿命的数据。该方法还包括执行包括以下过程的改进的垃圾收集操作:选择第一块中的第一碎片页;确定第一碎片页是活动的;以及基于确定第一碎片页是活动的,将第一碎片页移动到持久存储器中的长寿命块,其中,长寿命块与短寿命块不同,并且其中,长寿命块不包含任何短寿命数据。
【IPC分类】G06F12/02
【公开号】CN105389264
【申请号】CN201510489258
【发明人】J·S·邦威克
【申请人】Emc公司
【公开日】2016年3月9日
【申请日】2015年8月11日
【公告号】EP2990952A1, US20160062882
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1