一种基于闪存实现的冷热数据自动分离方法、系统及闪存的制作方法

文档序号:6377093阅读:452来源:国知局
专利名称:一种基于闪存实现的冷热数据自动分离方法、系统及闪存的制作方法
技术领域
本发明涉及闪存存储技术领域,尤其涉及一种基于闪存实现的冷热数据自动分离方法、系统及闪存。
背景技术
现有计算机或存储系统中常对数据根据访问频率进行分类,以区分冷数据和热数据,以便用户对数据进行处理。热数据需要在高性能、高度可用、高要求的环境下即时存取。温数据处于近线或在线备份环境中,用户需要快速访问这些数据,但访问的次数较少。冷数据需要归档并长期保存的数据。
目前计算机或存储系统中对冷热数据的分离都需要在主机上运行通过一定算法模型创建的软件,同时需要将数据暂存在内存(缓存)中,通过冷热数据判断软件对数据访问频率进行检测,从而判断数据的冷热程度。其缺点主要包括一、数据需要暂存在内存(缓存)中,在系统突然掉电时增加了数据丢失的风险。二、需要在主机上运行冷热数据判断软件,增加了主机中央处理器的负担。三、现有方法都是通过算法和数据模型创建的,模型的准确度影响了最终数据分离的效果。综上可知,现有冷热数据分离方法在实际使用上,显然存在不便与缺陷,所以有必要加以改进。

发明内容
针对上述的缺陷,本发明的目的在于提供一种基于闪存实现的冷热数据自动分离方法、系统及闪存,其能使数据在闪存的存储过程中,自动实现根据访问频率高低进行分离存储,无需额外的冷热数据判断算法和缓存支持。为了实现上述目的,本发明提供一种基于闪存实现的冷热数据自动分离方法,包括为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识;当所述闪存对数据进行处理时,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤中所述热度等级根据所述访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤包括当所述闪存写入一新数据时,将该数据的热度标识设置为最热数据。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括对写入数据进行动态磨损均衡处理时,在所述逻辑物理地址映射表中将该写入数据的热度标识设置为热数据。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括对写入数据进行静态磨损均衡处理时,当有物理页或物理块达到静态磨损均衡的设定值后,将该物理页或物理块中数据进行搬移;若该被搬移的数据的热度标识为次冷数据或最冷数据,则在所述逻辑物理地址映射表中将该数据的热度标识更新最冷数据,否则将该数据的热度标识更新为次冷数据。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址
映射表中的热度标识进行更新的步骤还包括当有物理页或物理块达到垃圾回收的设定值后,将该物理页或物理块中数据进行搬移;若该被搬移的数据的热度标识为最热数据、次热数据或热数据,则在所述逻辑物理地址映射表中将该数据的热度标识更新为冷数据,否则保持该数据的热度标识不变。根据本发明的冷热数据自动分离方法,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括当对数据进行读干扰消除处理时,则将该数据的热度标识更新为访问频率更高的热度等级。本发明相应提供一种基于闪存实现的冷热数据自动分离系统,包括热度标识设置单元,用于为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识;热度标识更新单元,用于当所述闪存对数据进行处理时,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。根据本发明的冷热数据自动分离系统,所述热度等级根据所述访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。本发明还提供一种包括上述冷热数据自动分离系统的闪存。本发明通过在闪存的逻辑物理地址映射表中添加一表示数据访问频率的热度标识,当闪存对数据进行处理时,则根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。数据在闪存中存储一段时间以后,在逻辑物理地址映射表中的热度标识将能够表示出数据的访问频率的高低,同时由于本发明直接在闪存逻辑物理地址映射表对数据冷热程度进行处理,仅需修改FTL算法即可,因此无需额外的软件和缓存来实现数据的冷热分离。从而本发明能使数据在闪存的存储过程中,自动实现根据访问频率进行分离存储,无需额外的冷热数据判断算法和缓存支持。


图I是本发明冷热数据自动分离系统的原理结构示意图;图2是本发明基于闪存实现的冷热数据自动分离方法的流程图;图3是本发明一种实施例中闪存对数据进行静态磨损均衡处理过程的流程图;图4是本发明一种实施例中闪存对数据进行垃圾回收处理过程的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。如图I所示,本发明一种基于闪存实现的冷热数据自动分离系统100,可应用于SSD(Solid State Disk,固态硬盘)硬盘,内置于闪存的 FTL(Flash TranslationLayer,闪存转换层)中,其主要包括热度标识设置单元10以及热度标识更新单元20。热度标识设置单元10,用于为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识。热度标识更新单元,用于当闪存对数据进行处理,根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。即不同的热度标识代表了不同的热度等级和不同的访问频率。在本发明的一个实施例中,热度等级根·据访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。在实际操作中,热度等级可以根据具体情况进行划分。闪存对数据进行处理通常包括写数据、读数据、动态磨损均衡处理、静态磨损均衡处理、垃圾回收处理以及读干扰消除处理。由于闪存自身的特性,需要FTL算法保证闪存使用的可靠性,延长闪存的使用寿命。目前最常用的做法是为闪存维护一个逻辑物理地址映射表并且通过一些辅助算法实现。有数据写入时,将数据写入到擦写次数最少的空闲页(或块)中-动态磨损均衡;当数据占用的页(或块)的擦写次数和当前空闲页(或块)的擦写次数的差异达到某一设定值后,将该数据搬移到擦写次数最少的空闲页(或块)中-静态磨损均衡;当一个使用过的页(或块)中的有效数据小于某一设定值后,将该有效数据搬移到擦写次数最少的空闲页(或块)中-垃圾回收;当某一页(或块)被读取的次数达到一定次数时,将该有效数据搬移到擦写次数最少的空闲页(或块)中-读干扰消除。本发明正是利用FTL的这些基本算法,并进行一些修改,使数据在闪存的存储过程中自动实现冷热数据的分离。一种具体实施例如下在闪存的逻辑物理地址映射表的每个记录增加一个热度标识,用于表示数据的访问频率的高低,比如将热度标识根据访问频率由高至低分成6个等级最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。当闪存写入一新数据时,将该数据的热度标识设置为最热数据。对写入数据进行动态磨损均衡的处理过程与现有技术相同,只是在修改逻辑物理地址映射表时,将该写入数据的热度标识设置为热数据。对数据进行静态磨损均衡处理时,当有物理页(或物理块)达到静态磨损均衡的设定值后,将数据搬移到擦写次数最多的空闲页(或空闲块)中;若该数据的热度标识为次冷数据或最冷数据,在逻辑物理地址映射表中将热度标识更新为最冷数据,否则,将该热度标识修改为次冷数据。对数据进行垃圾回收时,当有物理页(或物理块)达到垃圾回收的设定值后,将数据搬移到擦写次数中等的空闲页(或空闲块)中;若该数据的热度标识为各种热数据等级,在逻辑物理地址映射表中将其修改为冷数据,否则将热度标识保持不变。
对数据进行读干扰消除处理,给数据的读次数预设一些阀值,当读数据的次数每达到一次阀值,在逻辑物理地址映射表中将该数据的热度标识将往热数据方向变动一个等级,即则将该数据的热度标识更新为访问频率更高的热度等级。通过上面的做法,数据在闪存中存储一段时间以后,在逻辑物理地址映射表中的热度标识将能够表示出数据的访问频率的高低。本发明通过在闪存的逻辑物理地址映射表中添加一表示数据访问频率的热度标识,当闪存对数据进行处理时,则根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。同时由于本发明直接在闪存逻辑物理地址映射表对数据冷热程度进行处理,仅需修改FTL算法即可,因此无需额外的软件和缓存来实现数据的冷热分离。从而本发明能够其能对存入闪存中的数据根据访问频率进行分离存储,无需额外的冷热数据判断算法和缓存支持。本发明通过特定的FTL算法原则,使数据在闪存的存储过程中,自动实现冷热数据的分离。如图2所示,本发明还提供一种基于闪存实现的冷热数据自动分离方法,其通过如图I所示的系统100实现,该方法包括 步骤S201,为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识。本步骤通过热度标识设置单元10实现。逻辑物理地址映射表中每个记录是指每个逻辑地址与物理地址的对应关系,在逻辑物理地址映射表中的每个记录中预留一定空间存储该热度标识,该热度标识与逻辑页相关。步骤S202,当闪存对数据进行处理时,根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。本步骤通过热度标识更新单元20实现。即不同的热度标识代表了不同的热度等级和不同的访问频率。在本发明的一个实施例中,热度等级根据访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。在实际操作中,热度等级可以根据具体情况进行划分。闪存对数据进行处理通常包括写数据、读数据、动态磨损均衡处理、静态磨损均衡处理、垃圾回收处理以及读干扰消除处理。优选的是,步骤S202还包括当闪存写入一新数据时,将该数据的热度标识设置为最热数据。优选的是,步骤S202还包括对写入数据进行动态磨损均衡处理时,在所述逻辑物理地址映射表中将该写入数据的热度标识设置为热数据。优选的是,步骤S202还包括当对数据进行读干扰消除处理时,则将该数据的热度标识更新为访问频率更高的热度等级。图3是闪存对数据进行静态磨损均衡处理过程的流程图,该流程包括步骤S301,对写入数据进行静态磨损均衡处理时,当有物理页或物理块达到静态磨损均衡的设定值后,将该物理页或物理块中数据进行搬移。步骤S302,若该被搬移的数据的热度标识为次冷数据或最冷数据,则在逻辑物理地址映射表中将该数据的热度标识更新最冷数据,否则将该数据的热度标识更新为次冷数据。图4是闪存对数据进行垃圾回收处理过程的流程图,该流程包括步骤S401,当有物理页或物理块达到垃圾回收的设定值后,将该物理页或物理块中数据进行搬移。步骤S402,若该被搬移的数据的热度标识为最热数据、次热数据或热数据,则在逻辑物理地址映射表中将该数据的热度标识更新为冷数据,否则保持该数据的热度标识不变。综上所述,本发明通过在闪存的逻辑物理地址映射表中添加一表示数据访问频率的热度标识,当闪存对数据进行处理时,则根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。数据在闪存中存储一段时间以后,在逻辑物理地址映射表中的热度标识将能够表示出数据的访问频率的高低,同时由于本发明直接在闪存逻辑物理地址映射表对数据冷热程度进行处理,仅需修改FTL算法即可,因此无需额外的软件和缓存来实现数据的冷热分离。从而本发明能使数据在闪存的存储过程中,自动实现根据访问频率进行分离存储,无需额外的冷热数据判断算法和缓存支持。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变 形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种基于闪存实现的冷热数据自动分离方法,其特征在于,包括 为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识; 当所述闪存对数据进行处理时,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。
2.根据权利要求I所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤中所述热度等级根据所述访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。
3.根据权利要求2所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤包括 当所述闪存写入一新数据时,将该数据的热度标识设置为最热数据。
4.根据权利要求2所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括对写入数据进行动态磨损均衡处理时,在所述逻辑物理地址映射表中将该写入数据的热度标识设置为热数据。
5.根据权利要求2所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括 对写入数据进行静态磨损均衡处理时,当有物理页或物理块达到静态磨损均衡的设定值后,将该物理页或物理块中数据进行搬移; 若该被搬移的数据的热度标识为次冷数据或最冷数据,则在所述逻辑物理地址映射表中将该数据的热度标识更新最冷数据,否则将该数据的热度标识更新为次冷数据。
6.根据权利要求2所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括 当有物理页或物理块达到垃圾回收的设定值后,将该物理页或物理块中数据进行搬移; 若该被搬移的数据的热度标识为最热数据、次热数据或热数据,则在所述逻辑物理地址映射表中将该数据的热度标识更新为冷数据,否则保持该数据的热度标识不变。
7.根据权利要求2所述的冷热数据自动分离方法,其特征在于,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新的步骤还包括 当对数据进行读干扰消除处理时,则将该数据的热度标识更新为访问频率更高的热度等级。
8.一种基于闪存实现的冷热数据自动分离系统,其特征在于,包括 热度标识设置单元,用于为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率闻低的热度标识; 热度标识更新单元,用于当所述闪存对数据进行处理时,根据预设的热度等级对所述逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。
9.根据权利要求8所述的冷热数据自动分离系统,其特征在于,所述热度等级根据所述访问频率由高至低分为最热数据、次热数据、热数据、冷数据、次冷数据和最冷数据。
10.一种包括如权利要求8 9任一项所述的系统的闪存。
全文摘要
本发明适用于闪存存储技术领域,提供了一种基于闪存实现的冷热数据自动分离方法、系统及闪存,该方法包括为闪存的逻辑物理地址映射表中每个记录添加表示数据的访问频率高低的热度标识;当闪存对数据进行处理时,根据预设的热度等级对逻辑物理地址映射表中的热度标识进行更新,不同的热度等级对应不同的热度标识。本发明直接在闪存逻辑物理地址映射表对数据冷热程度进行处理,仅需修改FTL算法即可,因此无需额外的软件和缓存来实现数据的冷热分离。从而本发明能使数据在闪存的存储过程中,自动实现根据访问频率进行分离存储,无需额外的冷热数据判断算法和缓存支持。
文档编号G06F12/02GK102902628SQ20121034553
公开日2013年1月30日 申请日期2012年9月18日 优先权日2012年9月18日
发明者陈宏彬 申请人:记忆科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1