CN111813343B - 一种固态硬盘垃圾回收方法、系统及相关组件 - Google Patents
一种固态硬盘垃圾回收方法、系统及相关组件 Download PDFInfo
- Publication number
- CN111813343B CN111813343B CN202010687038.6A CN202010687038A CN111813343B CN 111813343 B CN111813343 B CN 111813343B CN 202010687038 A CN202010687038 A CN 202010687038A CN 111813343 B CN111813343 B CN 111813343B
- Authority
- CN
- China
- Prior art keywords
- strength
- current
- determining
- recycling
- solid state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000007787 solid Substances 0.000 title claims abstract description 93
- 239000010813 municipal solid waste Substances 0.000 title claims abstract description 88
- 238000011084 recovery Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004064 recycling Methods 0.000 claims abstract description 109
- 238000012544 monitoring process Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 230000007423 decrease Effects 0.000 claims description 9
- 230000003313 weakening effect Effects 0.000 abstract description 8
- 238000004891 communication Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Of Solid Wastes (AREA)
Abstract
本申请公开了一种固态硬盘垃圾回收方法,包括:监控固态硬盘的空间可用率及IO状态;根据当前空间可用率及当前IO状态,确定回收强度;按照所述回收强度对所述固态硬盘进行垃圾回收。本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。相应的,本申请还公开了一种固态硬盘垃圾回收系统、装置及可读存储介质。
Description
技术领域
本发明涉及存储领域,特别涉及一种固态硬盘垃圾回收方法、系统及相关组件。
背景技术
当前,固态硬盘的垃圾回收依据通常是block无效率,根据block无效率来判断和选择合适的block进行回收。但是block无效率的设定时通常会出现以下问题:
如果回收block无效率过低,垃圾回收过早开始启动并开始迁移block内的数据,更新新数据并删除旧数据,短期内效果可能较好,但是由于固态硬盘本身存在擦除次数的限制,因此频繁地迁移block数据会导致固态硬盘的擦除次数增加,降低固态硬盘的使用寿命,增加了开发成本和客户的使用成本;如果回收block无效率过高,就会导致垃圾回收启动时机过晚,进一步的,如果客户端的IO压力较大,当存储增加的容量高于垃圾回收的容量时,就会出现存储使用容量持续增加,最终导致存储写满容量,无法继续存储工作,客户端的IO被强制搁置,出现用户数据丢失的情况。
因此,如何设置合适的垃圾回收时机,是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种固态硬盘垃圾回收方法、系统及相关组件,从而能够动态调整垃圾回收强度。其具体方案如下:
一种固态硬盘垃圾回收方法,包括:
监控固态硬盘的空间可用率及IO状态;
根据当前空间可用率及当前IO状态,确定回收强度;
按照所述回收强度对所述固态硬盘进行垃圾回收。
优选的,所述IO状态包括IO并发个数和/或IO读写比例。
优选的,所述根据当前空间可用率及当前IO状态,确定回收强度的过程,具体包括:
判断当前IO并发个数是否小于预设个数;
若是,确定所述回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定所述回收强度。
优选的,所述根据当前空间可用率及当前IO读写比例,确定回收强度的过程,具体包括:
若当前空间可用率小于第一预设值,确定所述回收强度为低强度;
若当前空间可用率在所述第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定所述回收强度为中强度,若否,则确定所述回收强度为低强度;
若当前空间可用率在所述第二预设值与第三预设值之间,判断当前IO读写比例是否小于所述第一比例;
若是,则确定所述回收强度为高强度,若否,则根据当前可用空间率的变化确定所述回收强度;
若当前空间可用率超过所述第三预设值,确定所述回收强度为高强度。
优选的,所述根据当前可用空间率的变化确定所述回收强度的过程,具体包括:
若当前可用空间率持续减少,则确定所述回收强度为高强度;
若当前可用空间率未持续减少,则确定所述回收强度为中强度。
优选的,所述按照所述回收强度对所述固态硬盘进行垃圾回收的过程,具体包括:
按照所述回收强度对应的block无效率和/或grain并发速度,对所述固态硬盘进行垃圾回收。
优选的,所述回收强度和所述block无效率、所述grain并发速度的对应关系包括:随着所述回收强度的增强,所述block无效率呈降低趋势,所述grain并发速度呈增大趋势。
相应的,本发明还公开了一种固态硬盘垃圾回收系统,包括:
监控模块,用于监控固态硬盘的空间可用率及IO状态;
强度确定模块,用于根据当前空间可用率及当前IO状态,确定回收强度;
动作模块,用于按照所述回收强度对所述固态硬盘进行垃圾回收。
相应的,本发明还公开了一种固态硬盘垃圾回收装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任一项所述固态硬盘垃圾回收方法的步骤。
相应的,本发明还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任一项所述固态硬盘垃圾回收方法的步骤。
本申请公开了一种固态硬盘垃圾回收方法,包括:监控固态硬盘的空间可用率及IO状态;根据当前空间可用率及当前IO状态,确定回收强度;按照所述回收强度对所述固态硬盘进行垃圾回收。本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中一种固态硬盘垃圾回收方法的步骤流程图;
图2为本发明实施例中一种固态硬盘垃圾回收方法的子步骤流程图;
图3为本发明实施例中一种固态硬盘垃圾回收方法的子步骤流程图;
图4为本发明实施例中一种固态硬盘垃圾回收系统的结构分布图;
图5为本发明实施例中一种固态硬盘垃圾回收装置的结构分布图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
固态硬盘的垃圾回收依据通常是block无效率,根据block无效率来判断和选择合适的block进行回收。但是block无效率的设定过高或过低都会出现一些问题,使得数据成本和安全性无法兼顾。
本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
本发明实施例公开了一种固态硬盘垃圾回收方法,参见图1所示,包括:
S1:监控固态硬盘的空间可用率及IO状态;
S2:根据当前空间可用率及当前IO状态,确定回收强度;
S3:按照回收强度对固态硬盘进行垃圾回收。
其中,IO状态通常包括IO并发个数和/或IO读写比例。可以理解的是,IO并发个数越高,工作主机的压力越大;IO读写比例越大,对固态硬盘的空间影响越小。
进一步的,步骤S3中按照回收强度对固态硬盘进行垃圾回收的过程,具体包括:
按照回收强度对应的block无效率和/或grain并发速度,对固态硬盘进行垃圾回收。
具体的,随着回收强度的增强,block无效率呈降低趋势,grain并发速度呈增大趋势。
也就是说,实际确定的回收强度,对应确定垃圾回收过程中的block无效率和/或grain并发速度。当固态硬盘的空间可用率降低、IO状态对应的主机工作强度增大时,为了保证固态硬盘的存储工作效率,本实施例实时对垃圾回收的回收强度进行调整,具体调整垃圾回收过程中的block无效率和/或grain并发速度,当block无效率降低,意味着判定某一block是否需要进行垃圾回收操作的条件降低,block更容易被执行垃圾回收操作,当grain并发速度增加,则对任一block进行垃圾回收操作的耗时缩短,回收速度提高。
本申请实施例公开了一种固态硬盘垃圾回收方法,包括:监控固态硬盘的空间可用率及IO状态;根据当前空间可用率及当前IO状态,确定回收强度;按照回收强度对固态硬盘进行垃圾回收。本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
本发明实施例公开了一种具体的固态硬盘垃圾回收方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。
上一实施例中步骤S2根据当前空间可用率及当前IO状态,确定回收强度的过程,具体包括:
判断当前IO并发个数是否小于预设个数;
若是,确定回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定回收强度。
进一步的,根据当前空间可用率及当前IO读写比例,确定回收强度的过程,具体包括:
若当前空间可用率小于第一预设值,确定回收强度为低强度;
若当前空间可用率在第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为中强度,若否,则确定回收强度为低强度;
若当前空间可用率在第二预设值与第三预设值之间,判断当前IO读写比例是否小于所述第一比例;
若是,则确定回收强度为高强度,若否,则根据当前可用空间率的变化确定回收强度;
若当前空间可用率超过第三预设值,确定回收强度为高强度。
优选的,根据当前可用空间率的变化确定回收强度的过程,具体包括:
若当前可用空间率持续减少,则确定回收强度为高强度;
若当前可用空间率未持续减少,则确定回收强度为中强度。
具体的,将上述内容以步骤流程图的形式表示,可如图2所示:
S201:判断当前IO并发个数是否小于预设个数;若是,确定回收强度为中强度;若否,进入步骤S202;
在当前IO并发个数小于预设个数时,可认为当前主机压力小,垃圾回收可以较快执行。本实施例可设置预设个数为500。
S202:判断当前空间可用率与第一预设值、第二预设值、第三预设值的大小关系;若当前空间可用率小于第一预设值,确定回收强度为低强度;若当前空间可用率在第一预设值与第二预设值之间,进入步骤S203;若当前空间可用率在第二预设值与第三预设值之间,进入步骤S04;若当前空间可用率超过第三预设值,确定回收强度为高强度。
可以理解的是,第一预设值、第二预设值、第三预设值依次增大,这三个数值具有明确的大小关系,不可更改,但具体比较时每个比较区间的开闭可根据实际需求灵活设定。本实施例中这三个数值可依次设为50%、80%和90%。
在当前空间可用率小于第一预设值时,固态硬盘的可用空间量充足,垃圾回收设为低强度,仅用于保障业务性能即可。
在当前空间可用率超过第三预设值时,固态硬盘的可用空间即将耗尽,将回收强度设置为高强度。
S203:判断当前IO读写比例是否小于第一比例;若是,则确定回收强度为中强度,若否,则确定回收强度为低强度;
此时当前空间可用率位于第一预设值和第二预设值之间,垃圾回收的目标是尽量保障业务性能,同时也保证垃圾回收的速度。
通常第一比例选择为50%,如果当前IO读写比例不小于第一比例,则实际上读任务较多,写任务的数量等于或少于读任务的数量,任务处理对固态硬盘的空间消耗影响较少,因此IO读写比例不小于第一比例时的回收强度,要弱于IO读写比例小于第一比例时的回收强度,可设定前者为低强度,后者为中强度。
S204:判断当前IO读写比例是否小于第一比例;若是,则确定回收强度为高强度,若否,进入步骤S205;
此时当前空间可用率位于第二预设值和第三预设值之间,已用空间消耗较多,相应的OP(Over-provisioning,主芯片预留隐藏空间)空间甚至已经消耗掉50%,为了保证回收效果,回收强度明显要高于S203的情况。
S205:根据当前可用空间率的变化确定回收强度;若当前可用空间率持续减少,则确定回收强度为高强度;若当前可用空间率未持续减少,则确定回收强度为中强度。
可以理解的是,判断当前可用空间率的变化时,利用第一时刻点到当前时刻的历史记录数据判断,该第一时刻点到当前时刻的时间长度为预设时间段。
可以理解的是,将本实施例中垃圾回收方法落实到具体程序上时,也可直接按照图3中的流程图进行。
可以理解的是,本实施例中回收强度的确定依据包括当前IO并发个数、当前空间可用率、当前IO读写比例、当前可用空间率的变化,这四个参数的重要度和参考顺序可以有其他方案,判断中步骤S203和S204均涉及第一比例,这两步也可以分别选择不同的两个比例值作为比较判断依据。
本实施例仅作为一种参考,并非限制。
可以理解的是,本实施例中可设置的回收强度包括三个等级:低强度、中强度和高强度。除了这种等级设置外,还可以设置更多等级的回收强度,每个回收强度具有相应的block无效率和grain并发速度,所述回收强度和所述block无效率、所述grain并发速度的对应关系包括:随着回收强度增高,block无效率呈降低趋势,grain并发速度呈增大趋势。
本实施例兼顾了固态硬盘的业务性能和垃圾回收的速度,在保证垃圾回收效果的同时减少了垃圾回收对业务性能的负面影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
相应的,本发明实施例还公开了一种固态硬盘垃圾回收系统,参见图4所示,包括:
监控模块01,用于监控固态硬盘的空间可用率及IO状态;
强度确定模块02,用于根据当前空间可用率及当前IO状态,确定回收强度;
动作模块03,用于按照回收强度对固态硬盘进行垃圾回收。
本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
在一些具体的实施例中,IO状态包括IO并发个数和/或IO读写比例。
在一些具体的实施例中,强度确定模块02具体用于:
判断当前IO并发个数是否小于预设个数;
若是,确定回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定回收强度。
在一些具体的实施例中,强度确定模块02具体用于:
若当前空间可用率小于第一预设值,确定回收强度为低强度;
若当前空间可用率在第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为中强度,若否,则确定回收强度为低强度;
若当前空间可用率在第二预设值与第三预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为高强度,若否,则根据当前可用空间率的变化确定回收强度;
若当前空间可用率超过第三预设值,确定回收强度为高强度。
在一些具体的实施例中,强度确定模块02具体用于:
若当前可用空间率持续减少,则确定回收强度为高强度;
若当前可用空间率未持续减少,则确定回收强度为中强度。
在一些具体的实施例中,强度确定模块02具体用于:
按照回收强度对应的block无效率和/或grain并发速度,对固态硬盘进行垃圾回收。
在一些具体的实施例中,随着回收强度的增强,block无效率呈降低趋势,grain并发速度呈增大趋势。
相应的,本发明还公开了一种固态硬盘垃圾回收装置,参见图5所示,包括处理器11和存储器12;其中,处理器11执行存储器12中保存的计算机程序时实现以下步骤:
监控固态硬盘的空间可用率及IO状态;
根据当前空间可用率及当前IO状态,确定回收强度;
按照回收强度对固态硬盘进行垃圾回收。
本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
在一些具体的实施例中,IO状态包括IO并发个数和/或IO读写比例。
在一些具体的实施例中,处理器11执行存储器12中保存的计算机子程序时,具体可以实现以下步骤:
判断当前IO并发个数是否小于预设个数;
若是,确定回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定回收强度。
在一些具体的实施例中,处理器11执行存储器12中保存的计算机子程序时,具体可以实现以下步骤:
若当前空间可用率小于第一预设值,确定回收强度为低强度;
若当前空间可用率在第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为中强度,若否,则确定回收强度为低强度;
若当前空间可用率在第二预设值与第三预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为高强度,若否,则根据当前可用空间率的变化确定回收强度;
若当前空间可用率超过第三预设值,确定回收强度为高强度。
在一些具体的实施例中,处理器11执行存储器12中保存的计算机子程序时,具体可以实现以下步骤:
若当前可用空间率持续减少,则确定回收强度为高强度;
若当前可用空间率未持续减少,则确定回收强度为中强度。
在一些具体的实施例中,处理器11执行存储器12中保存的计算机子程序时,具体可以实现以下步骤:
按照回收强度对应的block无效率和/或grain并发速度,对固态硬盘进行垃圾回收。
在一些具体的实施例中,随着回收强度的增强,block无效率呈降低趋势,grain并发速度呈增大趋势。
进一步的,本实施例中的固态硬盘垃圾回收装置,还可以包括:
输入接口13,用于获取外界导入的计算机程序,并将获取到的计算机程序保存至存储器12中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器11中,以便处理器11利用上述各种指令和参数展开相应的处理。本实施例中,输入接口13具体可以包括但不限于USB接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。
输出接口14,用于将处理器11产生的各种数据输出至与其相连的终端设备,以便于与输出接口14相连的其他终端设备能够获取到处理器11产生的各种数据。本实施例中,输出接口14具体可以包括但不限于USB接口、串行接口等。
通讯单元15,用于在固态硬盘垃圾回收装置和外部服务器之间建立远程通讯连接,以便于固态硬盘垃圾回收装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元15具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。
键盘16,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。
显示器17,用于对固态硬盘垃圾回收的相关信息进行实时显示,以便于用户及时地了解当前固态硬盘垃圾回收的实际情况。
鼠标18,可以用于协助用户输入数据并简化用户的操作。
进一步的,本申请实施例还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动硬盘、CD-ROM或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
监控固态硬盘的空间可用率及IO状态;
根据当前空间可用率及当前IO状态,确定回收强度;
按照回收强度对固态硬盘进行垃圾回收。
本申请实时对固态硬盘的工作状态进行监控,并根据其工作状态调整回收强度,在回收空间的同时尽量减少垃圾回收对业务性能的影响,从而实现减弱固态硬盘寿命负影响和业务不中断的目的。
在一些具体的实施例中,IO状态包括IO并发个数和/或IO读写比例。
在一些具体的实施例中,可读存储介质中存储的计算机子程序被处理器执行时,具体可以实现以下步骤:
判断当前IO并发个数是否小于预设个数;
若是,确定回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定回收强度。
在一些具体的实施例中,可读存储介质中存储的计算机子程序被处理器执行时,具体可以实现以下步骤:
若当前空间可用率小于第一预设值,确定回收强度为低强度;
若当前空间可用率在第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为中强度,若否,则确定回收强度为低强度;
若当前空间可用率在第二预设值与第三预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定回收强度为高强度,若否,则根据当前可用空间率的变化确定回收强度;
若当前空间可用率超过第三预设值,确定回收强度为高强度。
在一些具体的实施例中,可读存储介质中存储的计算机子程序被处理器执行时,具体可以实现以下步骤:
若当前可用空间率持续减少,则确定回收强度为高强度;
若当前可用空间率未持续减少,则确定回收强度为中强度。
在一些具体的实施例中,可读存储介质中存储的计算机子程序被处理器执行时,具体可以实现以下步骤:
按照回收强度对应的block无效率和/或grain并发速度,对固态硬盘进行垃圾回收。
在一些具体的实施例中,随着回收强度的增强,block无效率呈降低趋势,grain并发速度呈增大趋势。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种固态硬盘垃圾回收方法、系统及相关组件进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种固态硬盘垃圾回收方法,其特征在于,包括:
监控固态硬盘的空间可用率及IO状态;
根据当前空间可用率及当前IO状态,确定回收强度;
按照所述回收强度对所述固态硬盘进行垃圾回收;
所述IO状态包括IO并发个数和/或IO读写比例;
其中,所述根据当前空间可用率及当前IO状态,确定回收强度的过程,具体包括:
判断当前IO并发个数是否小于预设个数;
若是,确定所述回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定所述回收强度;
其中,所述根据当前空间可用率及当前IO读写比例,确定回收强度的过程,具体包括:
若当前空间可用率小于第一预设值,确定所述回收强度为低强度;
若当前空间可用率在所述第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定所述回收强度为中强度,若否,则确定所述回收强度为低强度;
若当前空间可用率在所述第二预设值与第三预设值之间,判断当前IO读写比例是否小于所述第一比例;
若是,则确定所述回收强度为高强度,若否,则根据当前可用空间率的变化确定所述回收强度;
若当前空间可用率超过所述第三预设值,确定所述回收强度为高强度。
2.根据权利要求1所述固态硬盘垃圾回收方法,其特征在于,所述根据当前可用空间率的变化确定所述回收强度的过程,具体包括:
若当前可用空间率持续减少,则确定所述回收强度为高强度;
若当前可用空间率未持续减少,则确定所述回收强度为中强度。
3.根据权利要求1至2任一项所述固态硬盘垃圾回收方法,其特征在于,所述按照所述回收强度对所述固态硬盘进行垃圾回收的过程,具体包括:
按照所述回收强度对应的block无效率和/或grain并发速度,对所述固态硬盘进行垃圾回收。
4.根据权利要求3所述固态硬盘垃圾回收方法,其特征在于,所述回收强度和所述block无效率、所述grain并发速度的对应关系包括:
随着所述回收强度的增强,所述block无效率呈降低趋势,所述grain并发速度呈增大趋势。
5.一种固态硬盘垃圾回收系统,其特征在于,包括:
监控模块,用于监控固态硬盘的空间可用率及IO状态;
强度确定模块,用于根据当前空间可用率及当前IO状态,确定回收强度;
动作模块,用于按照所述回收强度对所述固态硬盘进行垃圾回收;
所述IO状态包括IO并发个数和/或IO读写比例;
其中,所述强度确定模块根据当前空间可用率及当前IO状态,确定回收强度的过程,具体包括:
判断当前IO并发个数是否小于预设个数;
若是,确定所述回收强度为中强度;
若否,根据当前空间可用率及当前IO读写比例,确定所述回收强度;
其中,所述强度确定模块根据当前空间可用率及当前IO读写比例,确定回收强度的过程,具体包括:
若当前空间可用率小于第一预设值,确定所述回收强度为低强度;
若当前空间可用率在所述第一预设值与第二预设值之间,判断当前IO读写比例是否小于第一比例;
若是,则确定所述回收强度为中强度,若否,则确定所述回收强度为低强度;
若当前空间可用率在所述第二预设值与第三预设值之间,判断当前IO读写比例是否小于所述第一比例;
若是,则确定所述回收强度为高强度,若否,则根据当前可用空间率的变化确定所述回收强度;
若当前空间可用率超过所述第三预设值,确定所述回收强度为高强度。
6.一种固态硬盘垃圾回收装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述固态硬盘垃圾回收方法的步骤。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述固态硬盘垃圾回收方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010687038.6A CN111813343B (zh) | 2020-07-16 | 2020-07-16 | 一种固态硬盘垃圾回收方法、系统及相关组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010687038.6A CN111813343B (zh) | 2020-07-16 | 2020-07-16 | 一种固态硬盘垃圾回收方法、系统及相关组件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111813343A CN111813343A (zh) | 2020-10-23 |
CN111813343B true CN111813343B (zh) | 2022-07-08 |
Family
ID=72865263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010687038.6A Active CN111813343B (zh) | 2020-07-16 | 2020-07-16 | 一种固态硬盘垃圾回收方法、系统及相关组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111813343B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463075B (zh) * | 2020-12-14 | 2023-04-18 | 苏州浪潮智能科技有限公司 | 一种固态硬盘的数据读写方法和系统 |
CN113778821A (zh) * | 2021-07-30 | 2021-12-10 | 联芸科技(杭州)有限公司 | 固态硬盘的介质访问管理方法及固态硬盘 |
CN114020208B (zh) * | 2021-09-30 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 数据垃圾回收方法、装置、计算机设备以及存储介质 |
CN114741326A (zh) * | 2022-03-21 | 2022-07-12 | 阿里巴巴(中国)有限公司 | 数据处理方法以及装置 |
CN115904264B (zh) * | 2023-03-13 | 2023-06-13 | 浪潮电子信息产业股份有限公司 | 一种存储系统中块的垃圾数据回收方法、装置以及介质 |
CN116644001B (zh) * | 2023-07-20 | 2023-10-17 | 合肥康芯威存储技术有限公司 | 一种存储器件及其垃圾回收的控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408410A (zh) * | 2018-11-13 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种固态硬盘垃圾回收的仲裁方法、装置及存储介质 |
CN109977031A (zh) * | 2017-12-27 | 2019-07-05 | 成都华为技术有限公司 | 固态硬盘垃圾回收的方法和固态硬盘 |
CN110659217A (zh) * | 2019-08-30 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种固态硬盘的垃圾回收方法、装置、设备及存储介质 |
CN111078134A (zh) * | 2019-10-18 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 调整存储阵列中垃圾回收并发数量的方法、设备及介质 |
CN111090398A (zh) * | 2019-12-13 | 2020-05-01 | 北京浪潮数据技术有限公司 | 固态硬盘的垃圾回收方法、装置、设备及可读存储介质 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10572181B2 (en) * | 2017-02-01 | 2020-02-25 | Microsoft Technology Licensing, Llc | Multiple stage garbage collector |
-
2020
- 2020-07-16 CN CN202010687038.6A patent/CN111813343B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109977031A (zh) * | 2017-12-27 | 2019-07-05 | 成都华为技术有限公司 | 固态硬盘垃圾回收的方法和固态硬盘 |
CN109408410A (zh) * | 2018-11-13 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种固态硬盘垃圾回收的仲裁方法、装置及存储介质 |
CN110659217A (zh) * | 2019-08-30 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种固态硬盘的垃圾回收方法、装置、设备及存储介质 |
CN111078134A (zh) * | 2019-10-18 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 调整存储阵列中垃圾回收并发数量的方法、设备及介质 |
CN111090398A (zh) * | 2019-12-13 | 2020-05-01 | 北京浪潮数据技术有限公司 | 固态硬盘的垃圾回收方法、装置、设备及可读存储介质 |
CN111158598A (zh) * | 2019-12-29 | 2020-05-15 | 北京浪潮数据技术有限公司 | 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
Suzhen Wu ; Weidong Zhu等."GC-Steering: GC-Aware Request Steering and Parallel Reconstruction Optimizations for SSD-Based RAIDs".《IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 》.2020, * |
全程优化的固态硬盘垃圾回收方法;方才华等;《计算机应用》;20170510(第05期);第1257-1262页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111813343A (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111813343B (zh) | 一种固态硬盘垃圾回收方法、系统及相关组件 | |
CN105302478B (zh) | 一种数据存储方法及电子设备 | |
JP2006351004A (ja) | 携帯端末機のメモリ管理方法 | |
CN110543281A (zh) | 一种存储压缩实现方法、装置、设备及存储介质 | |
CN109614045A (zh) | 一种元数据落盘方法、装置及相关设备 | |
CN109582649A (zh) | 一种元数据存储方法、装置、设备及可读存储介质 | |
CN105446848B (zh) | 电子设备的数据处理性能的测试方法及装置 | |
CN116225334A (zh) | 一种冷热数据存储方法、装置以及介质 | |
US20020049826A1 (en) | Object distributing system, portable terminal and server used therefor, and memory management method | |
CN104408126B (zh) | 一种数据库的持久化写入方法、装置和系统 | |
CN108920725B (zh) | 一种对象存储的方法及对象存储网关 | |
CN109634528A (zh) | 一种目标数据的落盘方法、装置、设备及存储介质 | |
CN108052294B (zh) | 一种分布式存储系统的修改写方法和修改写系统 | |
CN106648485A (zh) | 页面展示的方法和客户端 | |
CN115437572A (zh) | 一种数据落盘方法、装置、设备及介质 | |
CN109460411A (zh) | 一种基于hive的数据老化方法、装置及设备 | |
KR101691091B1 (ko) | 컴퓨팅 시스템 및 그것의 하이버네이션 방법 | |
CN114661624A (zh) | 一种数据高效采集存储方法、系统、设备和存储介质 | |
CN111176568B (zh) | 一种数据分析的方法和装置 | |
CN109660576B (zh) | 用户数据实时迁移方法、存储介质、电子设备及系统 | |
CN109086223A (zh) | 一种控制垃圾回收的方法和装置 | |
CN115858407B (zh) | 一种数据存储方法、装置、设备、可读存储介质及服务器 | |
KR101221992B1 (ko) | 데이터 로깅 장치 | |
CN116405726B (zh) | 基于emmc磨损度的数据存储控制方法、系统和可读存储介质 | |
KR102491352B1 (ko) | 스택 거리를 효율적으로 추정하는 전자장치 및 이의 동작방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |