CN111158598B - 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 - Google Patents

一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 Download PDF

Info

Publication number
CN111158598B
CN111158598B CN201911386516.3A CN201911386516A CN111158598B CN 111158598 B CN111158598 B CN 111158598B CN 201911386516 A CN201911386516 A CN 201911386516A CN 111158598 B CN111158598 B CN 111158598B
Authority
CN
China
Prior art keywords
target
inefficiency
storage pool
full
disk array
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
Application number
CN201911386516.3A
Other languages
English (en)
Other versions
CN111158598A (zh
Inventor
孙京本
李佩
刘如意
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN201911386516.3A priority Critical patent/CN111158598B/zh
Publication of CN111158598A publication Critical patent/CN111158598A/zh
Application granted granted Critical
Publication of CN111158598B publication Critical patent/CN111158598B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

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)
  • Memory System (AREA)

Abstract

本申请公开了一种全闪磁盘阵列的垃圾回收方法,包括:获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率;根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收。本方法是根据目标存储池中的目标容量使用率确定出对应的无效率阈值,再利用该无效率阈值进行垃圾回收,通过更精准地调整目标存储池垃圾回收的回收率,在能够保障全闪磁盘阵列正常运行的基础上,提升各block的利用率,提升全闪磁盘阵列的利用率。本申请还公开了一种全闪磁盘阵列的垃圾回收装置、设备及存储介质,均具有上述有益效果。

Description

一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质
技术领域
本发明涉及磁盘处理领域,特别涉及一种全闪磁盘阵列的垃圾回收方法、装置、设备及计算机可读存储介质。
背景技术
随着信息存储技术的快速发展,磁盘阵列的应用越来越广泛。磁盘阵列是由多个磁盘组合成一个容量巨大的磁盘组,可以充分发挥出多块磁盘的优势,全闪磁盘阵列指的是利用采用闪存(FLASH芯片)作为存储介质的固态硬盘设置的磁盘阵列。为了避免垃圾数据过多而影响全闪磁盘阵列的正常使用,可以基于全闪磁盘阵列的存储池进行垃圾回收(Garbage Collection,GC)。
现有技术中,在对全闪磁盘阵列进行垃圾回收时,一般是预先设置无效率阈值,然后获取存储池中各block的目标无效率值,再将目标无效率值超过无效率阈值的block进行垃圾回收。但是,在实际操作中,若无效率阈值设置较高,那么可能导致目标存储池的容量使用率长期处于较高的值,从而影响全闪磁盘阵列的使用性能;若无效率阈值设置较低,那么将导致各block的利用率较低,降低全闪磁盘阵列的利用率。
因此,如何既提高全闪磁盘阵列的利用率,又保障全闪磁盘阵列的使用性能,是本领域技术人员目前需要解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种全闪磁盘阵列的垃圾回收方法,能够既提高全闪磁盘阵列的利用率,又保障全闪磁盘阵列的使用性能;本发明的另一目的是提供一种全闪磁盘阵列的垃圾回收装置、设备及计算机可读存储介质,均具有上述有益效果。
为解决上述技术问题,本发明提供一种全闪磁盘阵列的垃圾回收方法,包括:
获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率;
根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收。
优选地,进一步包括:
获取目标主机在预设时间段内对所述全闪磁盘阵列的目标读写IO数量;
根据所述目标读写IO数量确定出对应的目标回收强度;
对应的,所述将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收的过程,具体包括:
按照所述目标回收强度将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收。
优选地,所述根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值的过程,具体包括:
将所述目标存储池的容量使用率划分为预设数量的容量使用范围,并为各所述容量使用范围设置对应的无效率;
确定出所述目标容量使用率所属的目标容量使用范围,并确定出与所述目标容量使用范围对应的无效率阈值。
优选地,所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率的过程,具体为:
按照第一时间周期获取所述全闪磁盘阵列的各所述目标存储池的所述目标容量使用率;
按照第二时间周期获取所述目标存储池中的各所述block的所述目标无效率。
优选地,在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之前,进一步包括:
判断所述目标存储池上是否设置有标识信息;
若是,则进入所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率的步骤。
优选地,在所述将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收之后,进一步包括:
记录进行垃圾回收的时间和对应的无效率阈值。
优选地,在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之后,进一步包括:
当所述目标容量使用率超过预设阈值时,发出对应的提示信息。
为解决上述技术问题,本发明还提供一种全闪磁盘阵列的垃圾回收装置,包括:
获取模块,用于获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率;
确定模块,用于根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
回收模块,用于将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收。
优选地,进一步包括:
IO获取模块,用于获取目标主机在预设时间段内对所述全闪磁盘阵列的目标读写IO数量;
强度确定模块,用于根据所述目标读写IO数量确定出对应的目标回收强度;
对应的,所述回收模块具体包括:
第一回收模块,用于按照所述目标回收强度将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收。
优选地,所述确定模块具体包括:
划分单元,用于将所述目标存储池的容量使用率划分为预设数量的容量使用范围,并为各所述容量使用范围设置对应的无效率;
确定单元,用于确定出所述目标容量使用率所属的目标容量使用范围,并确定出与所述目标容量使用范围对应的无效率阈值。
优选地,所述获取模块具体包括:
第一获取单元,用于按照第一时间周期获取所述全闪磁盘阵列的各所述目标存储池的所述目标容量使用率;
第二获取单元,用于按照第二时间周期获取所述目标存储池中的各所述block的所述目标无效率。
优选地,进一步包括:
判断模块,用于在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之前,判断所述目标存储池上是否设置有标识信息;
若是,则调用所述获取模块。
优选地,进一步包括:
记录单元,用于在所述将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收之后,记录进行垃圾回收的时间和对应的无效率阈值。
优选地,进一步包括:
提示单元,用于在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之后,当所述目标容量使用率超过预设阈值时,发出对应的提示信息。
为解决上述技术问题,本发明还提供一种全闪磁盘阵列的垃圾回收设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种全闪磁盘阵列的垃圾回收方法的步骤。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种全闪磁盘阵列的垃圾回收方法的步骤。
本发明提供的一种全闪磁盘阵列的垃圾回收方法,通过获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率;然后根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;再将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收,实现对全闪磁盘阵列的垃圾回收。因此,相较于现有技术中直接对无效率超过预设无效率阈值的block进行垃圾回收的技术方案,本方法是根据目标存储池中的目标容量使用率确定出对应的无效率阈值,再利用该无效率阈值进行垃圾回收,通过更精准地调整目标存储池垃圾回收的回收率,在能够保障全闪磁盘阵列正常运行的基础上,提升各block的利用率,提升全闪磁盘阵列的利用率。
为解决上述技术问题,本发明还提供了一种全闪磁盘阵列的垃圾回收装置、设备及计算机可读存储介质,均具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种全闪磁盘阵列的垃圾回收方法的流程图;
图2为本发明实施例提供的一种全闪磁盘阵列的垃圾回收装置的结构图;
图3为本发明实施例提供的一种全闪磁盘阵列的垃圾回收设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的核心是提供一种全闪磁盘阵列的垃圾回收方法,能够既提高全闪磁盘阵列的利用率,又保障全闪磁盘阵列的使用性能;本发明的另一核心是提供一种全闪磁盘阵列的垃圾回收装置、设备及计算机可读存储介质,均具有上述有益效果。
为了使本领域技术人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1为本发明实施例提供的一种全闪磁盘阵列的垃圾回收方法的流程图。如图1所示,一种全闪磁盘阵列的垃圾回收方法包括:
S10:获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率。
可以理解的是,全闪磁盘阵列一般对应有多个存储池,因此在实际操作中,可以是以存储池为单位,对各存储池进行垃圾回收操作,从而实现对全闪磁盘阵列的垃圾回收。
在本实施例中,首先是获取全闪磁盘阵列中各目标存储池的当前的目标容量使用率。具体的,当存在IO读写操作时,会将目标存储池中对应的block设置为used的状态,因此,通过统计目标存储池中状态为used的block的数量,并利用该目标存储池中的block总数计算出该目标存储池的目标容量使用率。具体的,无效率指的是垃圾数据大小占整个block块大小的比例,本实施例中,通过统计各block的垃圾数据的大小,计算出各block的目标无效率。
S20:根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
S30:将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收。
具体的,在确定出目标容量使用率后,根据预先设置的容量使用率和无效率的对应关系,利用该目标容量使用率确定出对应的无效率阈值,该无效率阈值即,当前进行垃圾回收的无效率参考信息。可以理解的是,若确定出的目标容量使用率不同,依据预设的对应关系,确定出的无效率阈值可能是不同的。
并且,在实际操作中,一般的,目标存储池中的目标容量使用率越高,进行垃圾回收的无效率阈值越低。例如,假设当前目标存储池中的目标容量使用率为80%,进行垃圾回收的block的无效率可以是20%,以便能够尽快降低目标存储池中的容量使用率;假设当前目标存储池中的目标容量使用率为20%,此时目标存储池中的容量充足,因此进行垃圾回收的block的无效率可以是80%。
具体的,在确定出目标无效率值超过当前的无效率阈值的block时,将该block加入待回收的blockset中,以实现对目标存储池中的block的垃圾回收,实现对全闪磁盘阵列的垃圾回收。
本发明实施例提供的一种全闪磁盘阵列的垃圾回收方法,通过获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率;然后根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;再将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收,实现对全闪磁盘阵列的垃圾回收。因此,相较于现有技术中直接对无效率超过预设无效率阈值的block进行垃圾回收的技术方案,本方法是根据目标存储池中的目标容量使用率确定出对应的无效率阈值,再利用该无效率阈值进行垃圾回收,通过更精准地调整目标存储池垃圾回收的回收率,在能够保障全闪磁盘阵列正常运行的基础上,提升各block的利用率,提升全闪磁盘阵列的利用率。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例进一步包括:
获取目标主机在预设时间段内对全闪磁盘阵列的目标读写IO数量;
根据目标读写IO数量确定出对应的目标回收强度;
对应的,将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收的过程,具体包括:
按照目标回收强度将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收。
具体的,在本实施例中,当目标主机对全闪磁盘阵列进行读写操作时,统计出目标读写IO数量,即,获取目标主机在预设时间段内对全闪磁盘阵列的目标读写IO数量。然后,预先设置读写IO数量和回收强度的对应关系,再根据获取到的目标读写IO数量,确定出对应的目标回收强度。
本实施例提供的一种读写IO数量与回收强度的对应关系如下:
读IO大于200,或者写IO高于300,回收强度为高等级;
读IO低于50,或写IO低于200,回收强度为低等级;
读IO大于50且低于200,写IO高于200且低于300,回收强度为中等级。
需要说明的是,本实施例中,是根据并行回收的block数量以及每个block中并行回收grain的数量来确定回收强度。可以理解的是,并行回收的block数量越多、每个block中并行回收grain的数量越多,回收强度越高;反之亦然。
可见,本实施例通过进一步根据目标主机在预设时间段内对全闪磁盘阵列的目标读写IO数量确定出对应的目标回收强度,并按照目标回收强度对目标存储池进行垃圾回收,能够根据实际需求高效地实现垃圾回收,提升垃圾回收的效率。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例中,根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值的过程,具体包括:
将目标存储池的容量使用率划分为预设数量的容量使用范围,并为各容量使用范围设置对应的无效率;
确定出目标容量使用率所属的目标容量使用范围,并确定出与目标容量使用范围对应的无效率阈值。
需要说明的是,在实际操作中,可以预先设置容量使用率和无效率的函数对应关系,在确定出目标容量使用率时,根据函数对应关系确定出对应的无效率阈值。
具体的,在本实施例中,通过预先将目标存储池的容量使用率划分为预设数量的容量使用范围,例如,将容量使用率划分为7个容量使用范围:0~15%、15%~35%、35%~50%、50%~70%、70%~80%、80%~90%、90%~100%;各容量使用范围分别对应的无效率为:5%、10%、20%、40%、60%、80%、96%。需要说明的是,在其他的实施方式中,容量使用范围的划分方式以及各对应的无效率值可以根据实际需求进行调整设置,上述只是一种举例,不作为具体的限定。
因此,在实际操作中,在确定出目标容量使用率之后,确定出该目标容量使用率所对应的目标容量使用范围,再根据该目标容量使用范围确定出对应的无效率阈值。
可见,按照本实施例的方式,通过设置容量使用率和无效率的对应关系,从而根据对应关系得出与目标容量使用率对应的无效率阈值,操作方式方便快捷。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例中,获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率的过程,具体为:
按照第一时间周期获取全闪磁盘阵列的各目标存储池的目标容量使用率;
按照第二时间周期获取目标存储池中的各block的目标无效率。
具体的,在本实施例中,是利用第一定时器按照第一时间周期获取全闪磁盘阵列的各目标存储池的目标容量使用率;并利用第二定时器按照第二时间周期获取目标存储池中的各block的目标无效率。并且在本实施例中,第一时间周期和第二时间周期可以是相同的,也可以是不同的,本实施例对此不做限定。
可见,本实施例通过按照预设时间周期获取目标容量使用率和目标无效率,因此,能够更全面地进行垃圾回收。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例中,在获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率之前,进一步包括:
判断目标存储池上是否设置有标识信息;
若是,则进入获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率的步骤。
在本实施例中,是预先在目标存储池上设置表示该存储池为能够按照上述任一实施例提供的方法进行垃圾回收的存储池。因此,通过预先检测目标存储池上是否存在该标识信息,以确定是否执行上述任一实施例的方法,即,若检测到目标存储池上设置有标识信息,则进入获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率的步骤。需要说明的是,在实际操作中,可以是为目标存储池设置标识信息true,或者设置其他的字符信息,本实施例对标识信息的具体类型不做限定。
因此,本方法通过在检测出目标存储池上设置有标识信息的情况下,才执行按照目标容量使用率和目标无效率进行垃圾回收的步骤,避免无效操作。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例在将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收之后,进一步包括:
记录进行垃圾回收的时间和对应的无效率阈值。
需要说明的是,在实际操作中,由于各目标存储池每次进行垃圾回收时的目标容量使用率可能不同,因此进行垃圾回收时的无效率阈值可能是不同的,在本实施例中,是在将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收之后,进一步获取当前进行垃圾回收的时间,并获取当前执行垃圾回收操作时所对应的无效率阈值。在实际操作中,可以是以表格或者文本的形式记录各进行垃圾回收的时间和对应的无效率阈值,本实施例对此不做限定。另外需要说明的是,可以是根据全闪磁盘阵列的各目标存储池,分别利用表格进行记录,也可以是以一张表格记录全闪磁盘阵列的各目标存储池,因此在记录时,可以进一步增加目标存储池的存储池信息。
本实施例通过进一步记录进行垃圾回收的时间和对应的无效率阈值,便于后续查看全闪磁盘阵列的垃圾回收的进程状态,进一步提升用户的使用体验。
在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例在获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率之后,进一步包括:
当目标容量使用率超过预设阈值时,发出对应的提示信息。
具体的,在本实施例中,是进一步设置目标存储池的容量使用率的预设阈值,并将目标容量使用率与该预设阈值进行比较,当目标容量使用率超过预设阈值时,进一步触发提示装置发出对应的提示信息。
在本实施例中,容量使用率的预设阈值可以根据目标存储池的OP预留空间比例对应设置,OP预留空间比例是根据实际需求设置的目标存储池的预留空间的比例,一般可以设置为20%,因此对应的,容量使用率的预设阈值可以设置为80%。
需要说明的是,提示装置可以具体是蜂鸣器和/或指示灯和/或显示器,通过触发蜂鸣器/指示灯/显示器等提示装置发出对应的提示信息,如蜂鸣音/闪烁灯/显示文字或图像等,以直观地提示用户当前目标容量使用率超过预设阈值,从而能够进一步提升用户的使用体验。
上文对于本发明提供的一种全闪磁盘阵列的垃圾回收方法的实施例进行了详细的描述,本发明还提供了一种与该方法对应的全闪磁盘阵列的垃圾回收装置、设备及计算机可读存储介质,由于装置、设备及计算机可读存储介质部分的实施例与方法部分的实施例相互照应,因此装置、设备及计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图2为本发明实施例提供的一种全闪磁盘阵列的垃圾回收装置的结构图,如图2所示,一种全闪磁盘阵列的垃圾回收装置包括:
获取模块21,用于获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率;
确定模块22,用于根据目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
回收模块23,用于将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收。
本发明实施例提供的全闪磁盘阵列的垃圾回收装置,具有上述全闪磁盘阵列的垃圾回收方法的有益效果。
作为优选的实施方式,进一步包括:
IO获取模块,用于获取目标主机在预设时间段内对全闪磁盘阵列的目标读写IO数量;
强度确定模块,用于根据目标读写IO数量确定出对应的目标回收强度;
对应的,回收模块23具体包括:
第一回收模块,用于按照目标回收强度将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收。
作为优选的实施方式,确定模块22具体包括:
划分单元,用于将目标存储池的容量使用率划分为预设数量的容量使用范围,并为各容量使用范围设置对应的无效率;
确定单元,用于确定出目标容量使用率所属的目标容量使用范围,并确定出与目标容量使用范围对应的无效率阈值。
作为优选的实施方式,获取模块21具体包括:
第一获取单元,用于按照第一时间周期获取全闪磁盘阵列的各目标存储池的目标容量使用率;
第二获取单元,用于按照第二时间周期获取目标存储池中的各block的目标无效率。
作为优选的实施方式,进一步包括:
判断模块,用于在获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率之前,判断目标存储池上是否设置有标识信息;
若是,则调用获取模块21。
作为优选的实施方式,进一步包括:
记录单元,用于在将目标存储池中目标无效率超过无效率阈值的各block进行垃圾回收之后,记录进行垃圾回收的时间和对应的无效率阈值。
作为优选的实施方式,进一步包括:
提示单元,用于在获取全闪磁盘阵列的各目标存储池的目标容量使用率和目标存储池中各block的目标无效率之后,当目标容量使用率超过预设阈值时,发出对应的提示信息。
图3为本发明实施例提供的一种全闪磁盘阵列的垃圾回收设备的结构图,如图3所示,一种全闪磁盘阵列的垃圾回收设备包括:
存储器31,用于存储计算机程序;
处理器32,用于执行计算机程序时实现如上述全闪磁盘阵列的垃圾回收方法的步骤。
本发明实施例提供的全闪磁盘阵列的垃圾回收设备,具有上述全闪磁盘阵列的垃圾回收方法的有益效果。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述全闪磁盘阵列的垃圾回收方法的步骤。
本发明实施例提供的计算机可读存储介质,具有上述全闪磁盘阵列的垃圾回收方法的有益效果。
以上对本发明所提供的全闪磁盘阵列的垃圾回收方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

Claims (9)

1.一种全闪磁盘阵列的垃圾回收方法,其特征在于,包括:
获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率;
根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收;
所述根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值的过程,具体包括:
将所述目标存储池的容量使用率划分为预设数量的容量使用范围,并为各所述容量使用范围设置对应的无效率;
确定出所述目标容量使用率所属的目标容量使用范围,并确定出与所述目标容量使用范围对应的无效率阈值;
获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率,包括:当存在IO读写操作时,会将目标存储池中对应的block设置为used的状态,通过统计目标存储池中状态为used的block的数量,并利用该目标存储池中的block总数计算出该目标存储池的目标容量使用率;无效率指的是垃圾数据大小占整个block大小的比例,通过统计各block的垃圾数据的大小,计算出各block的目标无效率。
2.根据权利要求1所述的方法,其特征在于,进一步包括:
获取目标主机在预设时间段内对所述全闪磁盘阵列的目标读写IO数量;
根据所述目标读写IO数量确定出对应的目标回收强度;
对应的,所述将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收的过程,具体包括:
按照所述目标回收强度将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收。
3.根据权利要求1所述的方法,其特征在于,所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率的过程,具体为:
按照第一时间周期获取所述全闪磁盘阵列的各所述目标存储池的所述目标容量使用率;
按照第二时间周期获取所述目标存储池中的各所述block的所述目标无效率。
4.根据权利要求1所述的方法,其特征在于,在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之前,进一步包括:
判断所述目标存储池上是否设置有标识信息;
若是,则进入所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率的步骤。
5.根据权利要求1所述的方法,其特征在于,在所述将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收之后,进一步包括:
记录进行垃圾回收的时间和对应的无效率阈值。
6.根据权利要求1至5任一项所述的方法,其特征在于,在所述获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率之后,进一步包括:
当所述目标容量使用率超过预设阈值时,发出对应的提示信息。
7.一种全闪磁盘阵列的垃圾回收装置,其特征在于,包括:
获取模块,用于获取全闪磁盘阵列的各目标存储池的目标容量使用率和所述目标存储池中各block的目标无效率;
确定模块,用于根据所述目标容量使用率以及预先设置的容量使用率和无效率的对应关系,确定出无效率阈值;
回收模块,用于将所述目标存储池中目标无效率超过所述无效率阈值的各block进行垃圾回收;
所述确定模块具体包括:
划分单元,用于将所述目标存储池的容量使用率划分为预设数量的容量使用范围,并为各所述容量使用范围设置对应的无效率;
确定单元,用于确定出所述目标容量使用率所属的目标容量使用范围,并确定出与所述目标容量使用范围对应的无效率阈值;
所述获取模块,具体用于当存在IO读写操作时,会将目标存储池中对应的block设置为used的状态,通过统计目标存储池中状态为used的block的数量,并利用该目标存储池中的block总数计算出该目标存储池的目标容量使用率;无效率指的是垃圾数据大小占整个block大小的比例,通过统计各block的垃圾数据的大小,计算出各block的目标无效率。
8.一种全闪磁盘阵列的垃圾回收设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的全闪磁盘阵列的垃圾回收方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的全闪磁盘阵列的垃圾回收方法的步骤。
CN201911386516.3A 2019-12-29 2019-12-29 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质 Active CN111158598B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911386516.3A CN111158598B (zh) 2019-12-29 2019-12-29 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911386516.3A CN111158598B (zh) 2019-12-29 2019-12-29 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111158598A CN111158598A (zh) 2020-05-15
CN111158598B true CN111158598B (zh) 2022-03-22

Family

ID=70558907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911386516.3A Active CN111158598B (zh) 2019-12-29 2019-12-29 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN111158598B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111813343B (zh) * 2020-07-16 2022-07-08 济南浪潮数据技术有限公司 一种固态硬盘垃圾回收方法、系统及相关组件
CN111880730B (zh) * 2020-07-17 2022-07-05 北京浪潮数据技术有限公司 一种全闪存阵列写io的调整方法、装置、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9158670B1 (en) * 2011-06-30 2015-10-13 Western Digital Technologies, Inc. System and method for dynamically adjusting garbage collection policies in solid-state memory
CN106649132A (zh) * 2016-12-29 2017-05-10 记忆科技(深圳)有限公司 一种固态硬盘垃圾回收的方法
CN108595112A (zh) * 2018-03-14 2018-09-28 深圳忆联信息系统有限公司 一种优化触发机制的ssd垃圾回收方法及固态硬盘
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘
CN109284233A (zh) * 2018-09-18 2019-01-29 郑州云海信息技术有限公司 一种存储系统的垃圾回收方法及相关装置
CN110018794A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种垃圾回收方法、装置、存储系统及可读存储介质
CN110347612A (zh) * 2019-06-04 2019-10-18 华南理工大学 一种适用于固态盘的动态调整垃圾回收方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474572B2 (en) * 2017-08-16 2019-11-12 HGST, Inc. Intelligent redundant array of independent disks with high performance recompaction

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9158670B1 (en) * 2011-06-30 2015-10-13 Western Digital Technologies, Inc. System and method for dynamically adjusting garbage collection policies in solid-state memory
CN106649132A (zh) * 2016-12-29 2017-05-10 记忆科技(深圳)有限公司 一种固态硬盘垃圾回收的方法
CN108595112A (zh) * 2018-03-14 2018-09-28 深圳忆联信息系统有限公司 一种优化触发机制的ssd垃圾回收方法及固态硬盘
CN108628758A (zh) * 2018-03-14 2018-10-09 深圳忆联信息系统有限公司 一种选择垃圾回收目标块的方法及固态硬盘
CN109284233A (zh) * 2018-09-18 2019-01-29 郑州云海信息技术有限公司 一种存储系统的垃圾回收方法及相关装置
CN110018794A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种垃圾回收方法、装置、存储系统及可读存储介质
CN110347612A (zh) * 2019-06-04 2019-10-18 华南理工大学 一种适用于固态盘的动态调整垃圾回收方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
全程优化的固态硬盘垃圾回收方法;方才华等;《计算机应用》;20170510(第05期);第47-52、71页 *

Also Published As

Publication number Publication date
CN111158598A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
CN111158598B (zh) 一种全闪磁盘阵列的垃圾回收方法、装置、设备及介质
CN108345524B (zh) 应用程序监控方法及应用程序监控装置
US8990792B2 (en) Method for constructing dynamic call graph of application
CN108089814B (zh) 一种数据存储方法及装置
US20210041937A1 (en) Method, Apparatus, and System for Allocating Power to Graphics Processing Unit
CN104092835A (zh) 一种移动终端功耗异常检测方法和装置
CN105468247A (zh) 一种工作模式切换方法及移动终端
CN110865883B (zh) 一种大批量数据导入方法、装置、计算机设备及存储介质
CN103517304A (zh) 一种获取移动终端安全状态的方法及装置
CN103198027A (zh) 一种存储文件和提供文件的方法和装置
CN107402870B (zh) 一种元数据服务器中日志段的处理方法及装置
CN111045956A (zh) 一种基于多核cpu的固态硬盘垃圾回收方法以及装置
CN112015347A (zh) 一种数据迁移方法、装置及相关设备
CN103473343A (zh) 一种文件管理方法、装置以及终端
CN103516912A (zh) 一种移动终端定位省电方法
CN107832202A (zh) 一种检测硬盘的方法、装置及计算机可读存储介质
CN104064212A (zh) 录音方法及装置
CN109375146B (zh) 一种用电数据的补采方法、系统及终端设备
CN110110502B (zh) 音频文件的防拷贝方法、装置以及移动式存储设备
CN105260140A (zh) 磁盘容量监控方法及装置
CN102436535B (zh) 计算机辅助设计过程中创意拐点的识别方法及系统
CN105320246B (zh) 一种信息处理方法及电子设备
CN114356218B (zh) Flash存储器的数据纠错方法、设备以及介质
CN103294602B (zh) 逻辑分析仪的数据读取及写入其存储器的方法
CN103677566A (zh) 图片编辑方法和装置

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