用于存储介质的协同数据迁移制造技术

技术编号:23940975 阅读:30 留言:0更新日期:2020-04-25 05:04
提供了一种存储系统。所述存储系统包括工作负荷管理器(111),其具有对用于存储驱动器(120)的主机(110)数据操作的可见性。所述工作负荷管理器被配置为确定包括用于所述存储驱动器的存储介质(123)的主机数据操作和数据迁移操作的操作调度,并且指示存储介质管理器(122)根据所述操作调度执行所述数据迁移操作和所述主机数据操作。所述存储系统还包括存储介质管理器(122),所述存储介质管理器(122)被配置为根据所述操作调度从所述工作负荷管理器接收指令,并且响应地执行所述数据迁移操作和所述主机数据操作。

Collaborative data migration for storage media

【技术实现步骤摘要】
【国外来华专利技术】用于存储介质的协同数据迁移相关申请本申请特此要求享有于2017年6月14日提交的、标题为“COOPERATIVEDATAMIGRATION”的美国临时专利申请号US62/519,268的权益和优先权,并且该美国临时专利申请的全部内容特此通过引用并入。
技术介绍
固态存储驱动器(SSD)包括各种固态存储介质,诸如NAND闪存或其他类似的存储介质,并且通常要求多种低级介质维护活动来补偿底层物理存储介质的限制。这些介质维护活动可以包括垃圾收集、损耗均衡(wearleveling)、数据老化避免或其他维护活动。维护活动通常必须与数据操作共存,所述数据操作诸如是由主机活动、用户应用程序、操作系统功能等启动的读取/写入/擦除数据操作。当前,SSD的介质维护活动由可能与由主机系统启动的数据操作冲突的低级驱动器电子设备或处理器元件处理。这可能导致效率低、过多的介质损耗和写入放大,因为介质维护活动可能涉及移动过多的数据或可能在不合时宜的时间期间发生。
技术实现思路
提供了一种存储系统。所述存储系统包括工作负荷管理器,所述工作负荷管理器具有对用于存储驱动器的主机数据操作的可见性。所述工作负荷管理器被配置为确定包括用于所述存储驱动器的存储介质的主机数据操作和数据迁移操作的操作调度,并且指示存储介质管理器根据所述操作调度执行所述数据迁移操作和所述主机数据操作。所述存储系统还包括存储介质管理器,所述存储介质管理器被配置为根据所述操作调度从所述工作负荷管理器接收指令,并且响应地执行所述数据迁移操作和所述主机数据操作。附图说明参考以下附图可以更好地理解本公开内容的许多方面。虽然结合这些附图描述了若干实施方式,但是本公开内容不限于本文公开的实施方式。相反,目的是覆盖所有替代方案、改型和等同物。图1例示了一个示例实施方式中的数据存储系统。图2例示了一个示例实施方式中的数据存储流。图3例示了一个示例实施方式中的操作数据存储系统的方法。图4例示了一个示例实施方式中的操作数据存储系统的方法。图5例示了一个示例实施方式中的存储控制器。具体实施方式固态存储驱动器(SSD)包括各种固态存储介质,诸如NAND闪存或其他类似的存储介质,并且通常要求各种低级介质维护活动来支持数据存储和检索操作。这些介质维护活动可以包括数据迁移活动,所述数据迁移活动包括到不同的存储介质位置的数据移动。数据迁移活动包括垃圾收集、损耗均衡、数据老化避免或其他数据/介质维护活动。出于例示的目的,本文讨论了NAND闪存存储介质。但是应理解,可以以类似的方式采用和管理其他形式的存储介质。闪存存储介质通常通过写入到多组逻辑块来管理,所述逻辑块有时被称为超级块,并且在本文中被称为分配单元(allocationunit,AU)。分配单元指的是粒度单元(granularunit),在所述粒度单元处,介质管理实体分配物理介质以用于写入新数据和擦除无效数据。由于各种各样的原因,分配单元内的数据可能需要被迁移到新分配单元。在数据迁移的第一实施例中,分配单元内的数据的大部分已经由主机系统重写或已经被修整/被擦除,并且已经变得无效。然后,剩余的有效数据被移动并且被压缩以将分配单元空出来,这些分配单元随后用于接收/存储新数据。此第一类型的数据迁移被称为垃圾收集。在数据迁移的第二实施例中,分配单元内的数据是不稳定的,并且数据被移动到更稳定的位置。此不稳定的数据可能是由于读取干扰活动引起的,诸如通过读取闪存的可以影响周围区域的稳定性的一些区域。当数据长时间存储在同一位置时,此不稳定的数据代替地可能是由于数据保留问题引起的。在数据迁移的第三实施例中,分配单元内的数据由于在比目标时间早的过去时间被写入而是冷的,但是驻留在具有低编程/擦除循环计数的存储区域中。然后,此冷数据可以被移动到具有高编程/擦除循环计数的块。数据迁移的此第三实施例被称为损耗均衡。SSD可以自主地迁移数据,这不提供将新数据与数据迁移活动精细地交错的能力,或考虑已知的未来存储工作负荷的能力。当不期望时,这可以导致不正确的决策和/或性能的中断。如果在迁移数据的同时新数据继续到达以由存储介质存储,则数据迁移活动可以负面影响相关联的存储驱动器的性能,因为数据迁移活动消耗带宽资源。此外,如果正被迁移的数据将被重写,则发生原本可以避免的迁移。SSD可以尝试基于工作负荷启发法(heuristics)做出这些决策,但是工作负荷启发法不预测将来的工作负荷或其内已经部署了数据活动的特定用户应用程序或存储适当的位置(niche)。另外,由于日志结构文件系统,许多系统具有多层垃圾收集。在这些情况下,常常SSD将在介质管理层处执行垃圾收集,同时在工作负荷管理层处执行附加的垃圾收集,从而导致效率低下和写入放大,因为可能移动过多的数据。本文的实施例有利地允许将各种垃圾收集功能叠并成增强型工作负荷管理层中的单个功能,从而导致减少的写入放大、增加的存储设备性能以及减少的介质损耗。一些存储协议,诸如在嵌入式多介质卡(eMMC)上使用的存储协议,提供了用于存储设备传达数据迁移的紧迫性的接口,以及完全禁用数据迁移的能力。然而,eMMC特征可能仍然导致移动过多的数据,并且可能无法处理与主机数据操作的有效共存。例如,eMMC设备可以允许在合时宜的时间发生垃圾收集,但是eMMC设备不提供与本文所讨论的增强型工作负荷管理层相同的选择存储设备希望迁移哪些数据的灵活性、交错数据流的能力以及理解分配单元边界的能力。因此,本文所讨论的增强型工作负荷管理层可以确定哪些数据迁移将导致介质被空出来和被擦除,并且相应地优化数据迁移。此外,本文所讨论的增强型元件将存储设备最适合的数据存储方面(诸如物理介质管理)与通信量(traffic)生成实体最擅长的数据存储方面(诸如工作负荷管理)分离。工作负荷指示数据流和相关联的特征。例如,工作负荷包括有顺序的写入操作、随机写入操作、混合读取/写入操作、以及它们的时间分布。本文所讨论的增强型工作负荷管理层可以使用由物理介质管理元件监视的数据保留统计和存储介质损耗的知识来应用过去的、现在的和将来的工作负荷的知识。该工作负荷管理层可以改善关于何时迁移数据(诸如何时新数据的突发结束)以及迁移什么数据(诸如推迟迁移将在不久的将来被重写的数据)的动作。提供了介质管理层,该介质管理层向工作负荷管理层指示物理介质信息,以允许工作负荷管理层基于工作负荷做出更好的数据迁移选择。在迁移数据的所有原因中,更依赖于工作负荷的一个原因是垃圾收集。因此,选择哪些数据进行垃圾收集由工作负荷管理层而不由低级物理介质实体最好地处理。然而,物理介质知识(诸如分配单元边界)由工作负荷管理层应用以写入数据和挑选具有最小数目的有效数据块要迁移的分配单元,从而使具有最少数目的数据块迁移的介质位置空出来。图1现在被呈现为采用增强型存储工作负荷管理特征的第一示例系统。图1例示了一个示例实施方式中的数据存储系统100。在图1中,主机系统110通过驱动器接口150通信耦合到存储设备120。主机系统110包括工作负荷管理器11本文档来自技高网...

【技术保护点】
1.一种存储系统,包括:/n工作负荷管理器,其具有对用于存储驱动器的主机数据操作的可见性,所述工作负荷管理器被配置为确定包括用于所述存储驱动器的存储介质的主机数据操作和数据迁移操作的操作调度,并且指示存储介质管理器根据所述操作调度执行所述数据迁移操作和所述主机数据操作;以及/n所述存储介质管理器,其被配置为根据所述操作调度从所述工作负荷管理器接收指令,并且响应地执行所述数据迁移操作和所述主机数据操作。/n

【技术特征摘要】
【国外来华专利技术】20170614 US 62/519,2681.一种存储系统,包括:
工作负荷管理器,其具有对用于存储驱动器的主机数据操作的可见性,所述工作负荷管理器被配置为确定包括用于所述存储驱动器的存储介质的主机数据操作和数据迁移操作的操作调度,并且指示存储介质管理器根据所述操作调度执行所述数据迁移操作和所述主机数据操作;以及
所述存储介质管理器,其被配置为根据所述操作调度从所述工作负荷管理器接收指令,并且响应地执行所述数据迁移操作和所述主机数据操作。


2.根据权利要求1所述的存储系统,其中,所述操作调度包括与所述主机数据操作中的主机数据操作交错的所述数据迁移操作中的数据迁移操作。


3.根据权利要求1所述的存储系统,包括:
所述工作负荷管理器被配置为至少基于所述主机数据操作的寻址属性来确定何时执行所述数据迁移操作。


4.根据权利要求3所述的存储系统,其中,所述数据迁移操作影响由所述主机数据操作的寻址属性指示的所述存储介质的存储分配单元。


5.根据权利要求1所述的存储系统,包括:
所述工作负荷管理器被配置为至少基于所述主机数据操作的属性来确定在所述数据迁移操作中迁移的数据。


6.根据权利要求5所述的存储系统,其中,所述主机数据操作影响由所述数据迁移操作指示的数据的部分。


7.根据权利要求1所述的存储系统,包括:
所述工作负荷管理器被配置为跟踪至少使用由所述存储介质管理器顺序地递增的数据块地址并且响应于由所述工作负荷管理器提交给所述存储介质管理器的数据写入操作来写入到所述存储介质的数据。


8.根据权利要求7所述的存储系统,包括:
所述工作负荷管理器被配置为从所述存储介质管理器接收由所述数据迁移操作影响的数据位置的指示,并且响应地将所述数据位置与所述数据写入操作的数据块地址进行比较,以确定所述操作调度的至少一部分。


9.根据权利要求1所述的存储系统,包括:
所述工作负荷管理器被配置为从所述存储介质管理器接收存储介质属性的一个或多个指示,其中所述一个或多个指示包括由所述数据迁移操作影响的数据位置的指示、在所述存储介质上剩余的空闲数据分配单元的数量的指示、以及为到所述存储介质的写入操作估计的最终数据块寻址的指示之中的至少一个;并且
所述工作负荷管理器被配置为至少部分地基于存储介质属性的所述一个或多个指示来确定所述操作调度。


10.根据权利要求8所述的存储系统,包括:
所述工作负荷管理器被配置为至少使所述主机存储操作之中的写入操作优先于所述数据迁移操作之中的垃圾收集任务,直到所述主机数据操作下降到阈值活动水平以下为止或直到在所述存储介质上剩余的空闲数据分配单元的数量下降到阈值满度水平以下为止。


11.一种操作存储控制器的方法,该方法包括:
在具有对用于存储驱动器的主机数...

【专利技术属性】
技术研发人员:N·科赫T·R·埃尔哈特E·哈宾加C·伯格曼D·C·普鲁厄特J·斯莱特里
申请(专利权)人:波利伍德有限责任公司
类型:发明
国别省市:美国;US

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

1