【技术实现步骤摘要】
固态硬盘的垃圾回收方法、装置、电子设备及存储介质
[0001]本专利技术涉及信息处理
,特别是涉及一种固态硬盘的垃圾回收方法、一种固态硬盘的垃圾回收装置、一种电子设备以及一种计算机可读存储介质。
技术介绍
[0002]随着计算机技术的不断发展,以及各类信息的爆发式增长,能够存储大量数据的硬盘逐渐成为人们生活中必不可少的一部分,其中,SSD(Solid State Disk或Solid State Drive,固态硬盘)是目前较为主流的硬盘,随着MLC(Multi
‑
Level Cell,多层单元闪存)、TLC(Trinary
‑
Level Cell,三层单元闪存)、QLC(Quad
‑
Level Cell,四层单元闪存)乃至未来的PLC(Penta
‑
Level Cell,五层单元闪存)等多阶存储单元的发展,SSD的容量也正在迅速增长,同时相较于传统硬盘,因其采用闪存作为存储介质,读写速度更快,且SSD内部不存在任何机械部件,防震抗摔性更好,同时具备功耗更低、噪音更小、更轻便等优点,受到众多青睐。
[0003]但是对于SSD而言,由于SSD采用闪存作为存储介质,一方面使得SSD的可擦写次数有限,另一方面在向SSD写入数据时,必须采用先擦除再写入的方式,从而随着时间的推移,SSD中从未使用的存储空间会越来越少,导致性能明显下降,因此,为更好地利用SSD的空间,需要定期对SSD进行垃圾回收,SSD的垃圾回收指将写满数据的物理块的有效页迁 ...
【技术保护点】
【技术特征摘要】
1.一种固态硬盘的垃圾回收方法,其特征在于,所述固态硬盘包括多个脏数据块以及多个空闲块,所述方法包括:获取所述固态硬盘的有效数据占比链表、磨损次数链表以及空闲块链表,所述有效数据占比链表对应所述脏数据块的有效数据占比优先级,所述磨损次数链表对应所述脏数据块的磨损优先级,所述空闲块链表对应所述空闲块的空闲优先级;获取所述空闲块的数量,若所述空闲块的数量低于预设空闲块阈值,则遍历所述有效数据占比链表,按照所述有效数据占比优先级确定各个待回收脏数据块的回收顺序,并依次对各个所述待回收脏数据块进行垃圾回收;将有效数据占比小于有效占比阈值的待回收脏数据块作为目标脏数据块,并通过所述磨损次数链表查找所述目标脏数据块对应的目标磨损优先级;根据所述固态硬盘当前是否存在数据交互,将所述目标脏数据块对应的目标磨损优先级调整至预设磨损阈值区间内,并通过所述空闲块链表查找空闲优先级最高的空闲块作为目标空闲块,将各个所述目标脏数据块中有效数据迁移至所述目标空闲块。2.根据权利要求1所述的方法,其特征在于,所述遍历所述有效数据占比链表,按照所述有效数据占比优先级确定各个待回收脏数据块的回收顺序,并依次对各个所述待回收脏数据块进行垃圾回收,包括:遍历所述有效数据占比链表,按照所述有效数据占比优先级由小至大的顺序确定各个待回收脏数据块的回收顺序,以及各个所述待回收脏数据块对应的待回收磨损次数;若所述待回收磨损次数大于预设磨损上限阈值,则上浮所述待回收脏数据块对应的有效数据占比优先级,延后所述待回收脏数据的垃圾回收;若所述待回收磨损次数大于或等于预设磨损下限阈值,且小于或等于预设磨损上限阈值,则对所述待回收脏数据块进行垃圾回收。3.根据权利要求2所述的方法,其特征在于,所述上浮所述待回收脏数据块对应的有效数据占比优先级,包括:获取所述待回收脏数据块的待回收有效数据占比,采用所述待回收有效数据占比、所述待回收磨损次数以及预设上浮偏移值进行计算,获得所述待回收脏数据块对应的上浮程度值,并根据所述上浮程度值上浮所述待回收脏数据块对应的有效数据占比优先级。4.根据权利要求3所述的方法,其特征在于,所述采用所述待回收有效数据占比、所述待回收磨损次数以及预设上浮偏移值进行计算,获得所述待回收脏数据块对应的上浮程度值,包括:采用公式:计算得出所述待回收脏数据块对应的上浮程度值;其中,G为预设上浮偏移值,VDFC为待回收有效数据占比,k为待回收有效数据占比的系数,PEC为待回收磨损次数,b为待回收磨损次数的系数。5.根据权利要求2所述的方法,其特征在于,所述将有效数据占比小于有效占比阈值的待回收脏数据块作为目标脏数据块,包括:采用公式:
计算有效占比阈值,并将各个所述待回收脏数据块的有效数据占比与所述有效占比阈值进行比较;将有效数据占比小于有效占比阈值的待回收脏数据块作为目标脏数据块;为有效数据占比的设定阈值,Total为数据块总的数据帧个数,F为空闲块的数量,a为空闲块的数量所对应的系数。6.根据权利要求5所述的方法,其特征在于,在所述将有效数据占比小于有效占比阈值的待回收脏数据块作为目标脏数据块之前,还包括:若所述待回收磨损次数大于预设磨损下限阈值,且小于预设常规磨损阈值,则获取所述待回收脏数据块的待回收有效数据占比,并采用所述待回收有效数据占比及空闲块的数量,计算有效占比阈值。7.根据权利要求5或6所述的方法,其特征在于,还包括:将有效数据占比大于或等于有效占比阈值的待回收脏数据块作为滞后脏数据块,通过所述磨损次数链表查找所述滞后脏数据块对应的磨损优先级,并按照预设上浮程度值上浮所述滞后脏数据块对应的磨损优先级。8.根据权利要求5或6所述的方法,其特征在于,还包括:将待回收磨损次数小于预设磨损下限阈值的待回收脏数据块作为强制脏数据块,并通过所述磨损次数链表查找所述强制脏数据块对应的强制磨损优先级;根据所述固态硬盘当前是否存在数据交互,将所述强制脏数据块对应的强制磨损优先级调整至预设磨损阈值区间内,并通过所述空闲块链表查找空闲优先级最高的空闲块作为目标空闲块,将各个所述强制脏数据块中有效数据迁移至所述目标空闲块。9.根据权利要求1所述的方法,其特征在于,所述根据所述固态硬盘当前是否存在数据交互,将所述目标脏数据块对应的目标磨损优先级调整至预设磨损阈值区间内,包括:若所述固态硬盘当前存在数据交互,则调整所述目标脏数据块对应的目标磨损优先级,使其处于第一预设磨损优先级与第二预设磨损优先级之间;若所述固态硬盘当前不存在数据交互,则调整所述目标脏数据块对应的目标磨损优先级,使其处于第三预设磨损优先级与第四预设磨损优先级之间。10.根据权利要求9所述的方法,其特征在于,还包括:若所述固态硬盘当前存在数据交互,则基于对所述目标脏数据块对应的目标磨损优先级的调整,控制所述目标脏数据块的磨损次数与平均磨损次数的偏差小于或等于第一预设偏差;若所述固态硬盘当前不存在数据交互,则基于对所述目标脏数据块对应的目标磨损优先级的调整,控制所述目标脏数据块的磨损次数与平均磨损次数的偏差小于或等于第二预设偏差,其中,所述第二预设偏差小于所述第一预设偏差。11.根据权利要求9或10所述的方法,其特征在于,所述若所述固态硬盘当前存在数据交互,包括:获取当前时间戳,以及所述固态硬盘最近一次进行数据交互对应的历史时间戳;若所述当前时间戳与所述历史时间戳之间的差值小于或等于预设时间戳差阈值,则所述固态硬盘当前存在数据交互。
12.根据权利要求11所述的方法,其特征在于,所述若所述固态硬盘当前不存在数据交互,包括:若所述当前时间戳与所述历史时间戳之间的差值大于预设时间戳差阈值,则所述固态硬盘当前不存在数据交互。13.根据权利要求1所述的方法,其特征在于,在所述获取所述固态硬盘的有效数据占比链表、磨损次数链表以及空闲块链表之前,还包括:针对所述固态硬盘的脏数据块设立多个有效数据占比优先级、磨损优先级;针对每一所述有效数据占比优先级建立一个对应的有效数据占比链表,并针对每一所述磨损优先级建立一个对应的磨损次数链表;获取所述固态硬盘中各个脏数据块的有效数据占比以及磨损次数;采用各个所述脏数据块的有效数据占比进行有效优先级匹配,确定各个所述脏数据块对应的有效数据占比优先级,并将各个所述脏数据块的有效数据占比信息链接至与所述有效数据占比优先级对应的有效数据占比链表;采用各个所述脏数据块的磨损次数进行磨损优先级匹配,确定各个所述脏数据块对应的磨损优先级,并将各个所述脏数据块的磨损次数信息链接至与所...
【专利技术属性】
技术研发人员:王鑫,赵宝林,赵金,钟戟,秦文政,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。