当前位置: 首页 > 专利查询>苹果公司专利>正文

闪存转换层(FTL)数据库日志记录方案制造技术

技术编号:11407878 阅读:148 留言:0更新日期:2015-05-06 07:15
本发明专利技术公开一种方法,该方法包括:在包括非易失性存储器和易失性存储器的存储设备中,保持对用于管理非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构,使得数据结构的至少一部分存储在易失性存储器中。在存储设备的操作期间创建日志记录分块序列,每个日志记录分块包括数据结构的相应切片以及自序列中的前一日志记录分块以来数据结构中发生的一个或多个变化。将该日志记录分块序列存储在非易失性存储器中。在从存储设备中的电力中断恢复时,使用所存储的日志记录分块来重建数据结构。

【技术实现步骤摘要】
【国外来华专利技术】闪存转换层(FTL)数据库日志记录方案
本专利技术整体涉及数据存储,并且具体地讲涉及用于非易失性存储设备中的日志记录的方法和系统。
技术介绍
各种存储器系统使用非易失性存储器诸如闪存存储器来存储数据。闪存存储器设备通常由被称为闪存管理层或闪存转换层(FTL)的管理层来管理。除其它任务之外,FTL通常管理闪存存储器在电力中断之前和之后的操作。
技术实现思路
本文所述的本专利技术的实施例提供一种用在包括非易失性存储器和易失性存储器的存储设备中的方法。该方法包括保持对用于管理非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构,使得将数据结构的至少一部分存储在易失性存储器中。在存储设备的操作期间创建日志记录分块序列,每个日志记录分块包括数据结构的相应切片以及自该序列中的前一日志记录分块以来数据结构中发生的一个或多个变化。将该日志记录分块序列存储在非易失性存储器中。在从存储设备中的电力中断恢复时,使用所存储的日志记录分块来重建数据结构。在一些实施例中,数据结构包括逻辑地址到非易失性存储器中的相应物理存储地址的映射。除此之外或作为另外一种选择,数据结构包括非易失性存储器的相应存储块的参数的数据库。在所公开的实施例中,创建日志记录分块序列包括:累积变化;以及在所累积的变化达到预定义数据大小时存储日志记录分块,该日志记录分块包括所累积的变化以及数据结构的切片。在实施例中,创建日志记录分块序列包括:在存储在给定日志记录分块中的变化中包括不与存储在给定日志记录分块中的数据结构的切片相关的至少一个变化。在另一个实施例中,创建日志记录分块序列包括:在连续日志记录分块中存储循环地扫描数据结构的相应连续切片。在另一个实施例中,创建日志记录分块序列包括:在每个日志记录分块中存储指向数据结构中的相应位置的指示,相应切片从该相应位置获得。在另一个实施例中,至少一个数据结构包括多个数据结构,并且每个日志记录分块包括多个数据结构的相应切片。在另一个实施例中,重建数据结构包括:识别在电力中断之前最近被写入到非易失性存储器的最后的日志记录分块;识别包括数据结构的第一有效切片的第一日志记录分块;以及从非易失性存储器恢复日志记录分块,从所识别的第一日志记录切片直到所识别的最后的日志记录分块。恢复日志记录分块可包括:仅在验证从给定日志记录分块读取的给定变化所涉及的切片已经恢复时,应用该给定变化。根据本专利技术的实施例,另外提供了一种存储设备,该存储设备包括非易失性存储器、易失性存储器和处理器。该处理器被配置为:保持对用于管理非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构,使得将数据结构的至少一部分存储在易失性存储器中;在存储设备的操作期间创建日志记录分块序列,每个日志记录分块包括数据结构的相应切片以及自该序列中的前一日志记录分块以来数据结构中发生的一个或多个变化;将该日志记录分块序列存储在非易失性存储器中;并且在从存储设备中的电力中断恢复时,使用所存储的日志记录分块来重建数据结构。通过其实施例的下面的具体实施方式以及结合附图,将更全面地理解本专利技术,其中:附图说明图1是根据本专利技术的实施例的示意性地示出存储器系统的框图;图2是根据本专利技术的实施例的示意性地示出数据库日志记录方案的图;图3是根据本专利技术的实施例的示意性地示出用于数据库日志记录的方法的流程图;并且图4是根据本专利技术的实施例的示意性地示出数据库恢复方案的图。具体实施方式综述本文所述的本专利技术的实施例提供用于保护免受非易失性存储设备中的电力中断影响的改进的方法和系统。在一些实施例中,存储设备包括非易失性存储器诸如NAND闪存存储器以及管理非易失性存储器中的数据存储的处理器。处理器保持对用于非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构。数据结构可包括例如逻辑到物理地址转换表和/或存储块参数数据库。数据结构的至少一部分存储在存储设备的易失性存储器诸如随机存取存储器(RAM)中。这样,应保护数据结构免受电力中断影响。在本文所述的一些实施例中,处理器通过应用定期日志记录方案来保护数据结构。在典型的实现方式中,处理器将数据结构划分为大量连续切片。在存储设备的操作期间,处理器逐步累积数据结构中发生的变化。当所累积的变化达到预定义数据大小时,处理器创建“日志记录分块”,该日志记录分块包括自前一日志记录分块以来发生的变化并且还包括数据结构的下一切片。处理器然后将日志记录分块存储在非易失性存储器中。换句话讲,处理器连续创建并且存储日志记录分块序列,使得每个分块包括数据结构的相应切片加上自前一分块以来数据结构中发生的变化。然而,存储在给定分块中的变化可与整个数据结构有关,而不一定与存储在给定分块中的单独切片有关。日志记录分块序列使得处理器能够在电力中断的情况下重建数据结构。以下进一步描述示例性恢复方案。因为处理器以小分块形式而不是大量地备份数据结构和变化,所公开的日志记录方案几乎不或不降低存储性能。此外,此方案使得处理器能够在电力中断后以高速重建数据结构。因为以频繁的间隔备份数据结构的切片,需要备份的变化的数量相当小。因此,在恢复期间,仅需要应用少量的变化。此特征还减少在任何给定时间尚未被备份到非易失性存储器的变化,即,将由于电力中断而丢失的变化的数量。此外,选择分块大小和分块中的单独字段的大小的灵活性允许将日志记录方案调谐为任何期望的运行时存储性能和恢复时间之间的平衡。处理器存储日志记录分块的速率通常是可变的,并且取决于活动的水平:在密集存储期间,变化快速累积,日志记录分块迅速填充,并且日志记录速率是高的。在空闲时间期间,变化缓慢累积,并且日志记录速率因此降低。系统描述图1是根据本专利技术的实施例的示意性地示出存储器系统的框图。在本实例中,存储器系统包括将数据存储在固态驱动器(SSD)24中的计算机20。计算机20可包括例如手机、平板电脑或个人计算机。计算机包括用作主机的中央处理单元(CPU)26。在另选的实施例中,主机可包括任何其它合适的处理器或控制器,并且存储设备可包括任何其它合适的设备。例如,主机可包括企业存储系统的存储控制器,并且存储设备可包括SSD或SSD阵列。将数据存储在非易失性存储设备中的主机的其它示例包括移动电话、数码相机、媒体播放器和可移动存储器卡或可移动存储器设备。SSD24将用于CPU26的数据存储在非易失性存储器中,在本实例中存储在一个或多个NAND闪存存储器设备34中。在另选的实施例中,SSD24中的非易失性存储器可包括任何其它合适类型的非易失性存储器,诸如例如NOR闪存、电荷撷取闪存(CTF)、相变RAM(PRAM)、磁阻RAM(MRAM)或铁电RAM(FeRAM)。SSD控制器30执行SSD的各种存储和管理任务。SSD控制器也通称为存储器控制器。SSD控制器30包括用于与CPU26通信的主机接口38;用于与闪存设备34通信的存储器接口46;以及执行SSD的各种处理任务的处理器42。SSD24还包括易失性存储器,在本实例中为随机存取存储器(RAM)50。在图1的实施例中,RAM50被示出为SSD控制器30的一部分,尽管RAM可以另选地与SSD控制器分开。RAM50可包括例如静态RAM(SRAM)、动态RAM(DRAM)、两种RAM类型的组合或任何其它合本文档来自技高网...
闪存转换层(FTL)数据库日志记录方案

【技术保护点】
一种方法,包括:在包括非易失性存储器和易失性存储器的存储设备中,保持对用于管理所述非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构,使得所述数据结构的至少一部分存储在所述易失性存储器中;在所述存储设备的操作期间创建日志记录分块序列,每个日志记录分块包括所述数据结构的相应切片以及自所述序列中的前一日志记录分块以来在所述数据结构中发生的一个或多个变化;将所述日志记录分块序列存储在所述非易失性存储器中;以及在从所述存储设备中的电力中断恢复时,使用所存储的日志记录分块来重建所述数据结构。

【技术特征摘要】
【国外来华专利技术】2012.09.28 US 13/630,1761.一种操作存储设备的方法,包括:在包括非易失性存储器和易失性存储器的存储设备中,保持对用于管理所述非易失性存储器中的数据存储的管理信息进行存储的至少一个数据结构,使得所述数据结构的至少一部分存储在所述易失性存储器中;在所述存储设备的操作期间创建日志记录分块序列,每个日志记录分块包括所述数据结构的相应切片以及自所述序列中的前一日志记录分块以来在所述数据结构中发生的一个或多个变化;将所述日志记录分块序列存储在所述非易失性存储器中;在从所述存储设备中的电力中断恢复时,并联读取所存储的日志记录分块的子集;以及至少使用所存储的日志记录分块的子集来重建所述数据结构。2.根据权利要求1所述的方法,其中所述数据结构包括逻辑地址到所述非易失性存储器中的相应物理存储位置的映射。3.根据权利要求1所述的方法,其中所述数据结构包括所述非易失性存储器的相应存储块的参数的数据库。4.根据权利要求1所述的方法,其中创建所述日志记录分块序列包括:累积所述变化;以及在所累积的变化达到预定义数据大小时存储所述日志记录分块,所述日志记录分块包括所累积的变化以及所述数据结构的切片。5.根据权利要求1所述的方法,其中创建所述日志记录分块序列包括:在存储在给定日志记录分块中的所述变化中包括不与存储在所述给定日志记录分块中的所述数据结构的切片相关的至少一个变化。6.根据权利要求1所述的方法,其中创建所述日志记录分块序列包括:在连续日志记录分块中存储循环地扫描所述数据结构的相应连续切片。7.根据权利要求1所述的方法,其中创建所述日志记录分块序列包括:在每个日志记录分块中存储指向所述数据结构中的相应位置的指示,所述相应切片从所述相应位置获得。8.根据权利要求1所述的方法,其中所述至少一个数据结构包括多个数据结构,并且其中每个日志记录分块包括所述多个数据结构的相应切片。9.根据权利要求1所述的方法,其中重建所述数据结构包括:识别在所述电力中断之前最近被写入到所述非易失性存储器的最后的日志记录分块;识别包括所述数据结构的第一有效切片的第一日志记录分块;以及从所述非易失性存储器恢复所述日志记录分块,从所识别的第一日志记录切片直到所识别的最后的日志记录分块。10.根据权利要求9所述的方法,其中恢复所述日志记录分块包括:仅在验证从给定日志记录分块读取的给定变化所涉及的所述切片已经恢复时,应用所述给...

【专利技术属性】
技术研发人员:R·盖伊E·杉戴尔E·哈如诗Y·施瓦茨
申请(专利权)人:苹果公司
类型:发明
国别省市:美国;US

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

1