CN113590050A - 随机写性能调节的方法、装置、电子设备及存储介质 - Google Patents
随机写性能调节的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113590050A CN113590050A CN202111147105.6A CN202111147105A CN113590050A CN 113590050 A CN113590050 A CN 113590050A CN 202111147105 A CN202111147105 A CN 202111147105A CN 113590050 A CN113590050 A CN 113590050A
- Authority
- CN
- China
- Prior art keywords
- hard disk
- iops
- data set
- adjusting
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000015654 memory Effects 0.000 claims description 48
- 239000007787 solid Substances 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004064 recycling Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000006403 short-term memory Effects 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明揭示了一种随机写性能调节的方法、装置、电子设备及存储介质,所述方法包括获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;对所述第一数据集进行收敛处理,得到第二数据集;基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。本发明通过写仲裁控制模块对IOPS进行稳态调整,防止IOPS的波动不平衡,提高硬盘随机写的IOPS的一致性。
Description
技术领域
本发明涉及硬盘控制技术领域,具体涉及一种随机写性能调节的方法、装置、电子设备及存储介质。
背景技术
在数据量指数级增长的信息化时代,快速有效的存储和处理数据成为了研究的重要方向。机械硬盘的速度已经无法满足目前CPU的计算速度,固态硬盘以读写速度快、体积小的优势逐渐成为了主流存储器件,广泛应用到生活中的各个领域,固态硬盘的性能也随之受到了重视,由于固态硬盘中NAND的原理决定了,存在如下的特性和限制:典型的,一个Block擦除需要十几毫秒;写一个Block数据大约需要几毫秒;而读一个Block的数据仅仅只需要几十微秒;进一步地,同一时间内,单个DIE只能执行一种类型的操作。随着消费类领域的固态硬盘的广泛使用,由于固态硬盘的随机访问性能高,功耗低,环境稳定性强等特点,在企业级也逐步引入了固态硬盘。与消费类固态硬盘更关注峰值性能不同的是,企业级更关心性能的一致性,典型如都延迟最大在500us内,写延迟最大在10ms内。在此期间,当有读写请求时,会因为其他耗时更长的操作引发阻塞,增加了命令响应延迟。当主机发起读写请求时,固态硬盘内部正执行耗时较长的擦除操作,这时读写请求需要延迟到Block擦除才能响应读写请求,因此存在较大的延迟;当主机发起读请求时,固态硬盘内部正在执行耗时较长的写操作,这时读操作必须要延迟到写操作完成才能响应读请求,因此存在较大的延迟。
发明内容
有鉴于此,本发明实施例提供了一种提高硬盘随机写性能的方法、装置、电子设备及存储介质,旨在解决硬盘的随机写性能低,导致硬盘的IOPS性能不稳定的问题。
根据第一方面,本发明实施例提供了一种随机写性能调节的方法,包括如下步骤:
获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;
基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;
对所述第一数据集进行收敛处理,得到第二数据集;
基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
本发明提供的随机写性能调节的方法,通过对硬盘的剩余空间的存储单元进行平衡处理,计算所述存储单元中各个存储块的数据帧数量,通过各个存储块的数据帧数量可计算出硬盘的IOPS,进而可对硬盘的IOPS进行判断分析,根据判断分析结果通过写仲裁控制模块对IOPS进行稳态调整,防止IOPS的波动不平衡,提高硬盘随机写的IOPS的一致性。
结合第一方面,在第一方面第一实施方式中,获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理步骤中,包括:
判断所述存储单元的所述存储块数量是否超过预设阈值;
若是,则执行第一操作,即对第一状态的存储单元进行数据写入;
若否,则执行第二操作,即对第二状态的存储单元进行数据写入。
本发明提供的随机写性能调节的方法,判断所述存储单元的所述存储块数量是否超过预设阈值,针对判断结果执行不同的操作,选取存储单元中存储块空闲的存储单元先进行数据写入,使得对存储块写入的速度与擦除的速度平衡。
结合第一方面,在第一方面第二实施方式中,对所述第一数据集进行收敛处理,得到第二数据集步骤中,包括:
基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集;
对所述第二子数据集中的数据进行插值处理,得到所述第二数据集。
本发明提供的随机写性能调节的方法,基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集,去除存储块中的坏块,计算出剩余存储块的数据帧数量,减少因为回收出新的存储块而带来的波动,提高了一致性,再对所述第二子数据集中的数据进行插值处理,得到所述第二数据集,使得存储块中的数据帧数量波动范围减小,趋于稳态。
结合第一方面,在第一方面第三实施方式中,基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整步骤中,包括:
获取所述剩余空间的阶段状态,以及所述阶段状态下所述第二数据集中的所述数据帧数量;
基于所述数据帧数量获取所述硬盘的IOPS,对所述硬盘的IOPS进行调整。
本发明提供的随机写性能调节的方法,根据剩余空间的阶段状态可以获取到对应的数据帧数量,根据数据帧数量可计算出硬盘的IOPS,针对每个阶段状态下的IOPS对其进行调整,调整时比较平滑,一致性也相对提高。
结合第一方面第三实施方式,在第一方面第四实施方式中,获取所述剩余空间的阶段状态步骤中,包括:
基于写仲裁调整开始状态对应的数据帧数量到禁止状态对应的数据帧数量,获取第一阶段;
基于所述写仲裁调整禁止状态对应的数据帧数量到停止状态对应的数据帧数量,获取第二阶段;
基于所述写仲裁调整停止状态对应的数据帧数量,获取第三阶段;
基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS。
本发明提供的随机写性能调节的方法,根据基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS,基于不同的阶段可获取到相应的数据帧数量,根据数据帧数量可计算出硬盘的IOPS,针对不同阶段的IOPS进行调整,相应的一致性也提高了。
结合第一方面第四实施方式,在第一方面第五实施方式中,对所述硬盘的IOPS进行调整步骤中,包括:
基于所述写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线;
判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况;
基于所述波动情况对所述硬盘的IOPS进行调整。
本发明提供的随机写性能调节的方法,由于存储块中的数据帧的数量是随着硬盘的写入和擦除操作而在不断变化的,所以第二数据集形成的第一波动曲线也是波动的,但是写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线,将不断变化的第一波动曲线与基准波动曲线进行比较分析,可判断硬盘的IOPS的高低,因此以基准波动曲线为标准对IOPS进行调整,使得第一波动曲线趋于基准波动曲线,进而提高了硬盘随机写的一致性。
结合第一方面第五实施方式,在第一方面第六实施方式中,判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况步骤中,包括:
若所述第一波动曲线大于所述基准波动曲线,则调整所述硬盘的IOPS为第一预设阈值;
若所述第一波动曲线小于所述基准波动曲线,则调整所述硬盘的IOPS为第二预设阈值。
本发明提供的随机写性能调节的方法,根据第一波动曲线与基准波动曲线的波动情况进行对比分析,可判断出硬盘的IOPS的高低,进而对IOPS做相应的调整,提高了硬盘随机写的一致性,硬盘的性能也相对提高。
根据第二方面,本发明实施例还提供了一种随机写性能调节的装置,包括:
平衡处理模块,用于获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;
数据列获取模块,用于基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;
收敛模块,用于对所述第一数据集进行收敛处理,得到第二数据集;
调整模块,基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
本发明提供的随机写性能调节的装置,通过对硬盘的剩余空间的存储单元进行平衡处理,计算所述存储单元中各个存储块的数据帧数量,通过各个存储块的数据帧数量可计算出硬盘的IOPS,进而可对硬盘的IOPS进行判断分析,根据判断分析结果通过写仲裁控制模块对IOPS进行稳态调整,防止IOPS的波动不平衡,提高硬盘随机写的IOPS的一致性。
结合第二方面,在第二方面第一实施方式中,上述平衡处理模块,具体用于:
阈值判断模块,用于判断所述存储单元的所述存储块数量是否超过预设阈值;
第一操作模块,用于若是,则执行第一操作,即对第一状态的存储单元进行数据写入;
第二操作模块,用于若否,则执行第二操作,即对第二状态的存储单元进行数据写入。
结合第二方面,在第二方面第二实施方式中,上述收敛模块,具体用于:
第二子数据集获取模块,用于基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集;
第二数据集获取模块,用于对所述第二子数据集中的数据进行插值处理,得到所述第二数据集。
结合第二方面,在第二方面第三实施方式中,上述调整模块,具体用于:
状态获取模块,用于获取所述剩余空间的阶段状态,以及所述阶段状态下所述第二数据集中的所述数据帧数量;
调整模块,用于基于所述数据帧数量获取所述硬盘的IOPS,对所述硬盘的IOPS进行调整。
结合第二方面第三实施方式,在第二方面第四实施方式中,上述状态获取模块,具体用于:
第一状态获取模块,用于基于写仲裁调整开始状态对应的数据帧数量到禁止状态对应的数据帧数量,获取第一阶段;
第二阶段获取模块,用于基于所述写仲裁调整禁止状态对应的数据帧数量到停止状态对应的数据帧数量,获取第二阶段;
第三阶段获取模块,用于基于所述写仲裁调整停止状态对应的数据帧数量,获取第三阶段;
计算模块,用于基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS。
结合第二方面第四实施方式,在第二方面第五实施方式中,上述状态获取模块,具体用于:
基准波动曲线获取模块,用于基于所述写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线;
判断分析模块,用于判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况;
调整模块,用于基于所述波动情况对所述硬盘的IOPS进行调整。
结合第二方面第五实施方式,在第二方面第六实施方式中,上述判断分析模块,具体用于:
第一调整模块,用于若所述第一波动曲线大于所述基准波动曲线,则调整所述硬盘的IOPS为第一预设阈值;
第二调整模块,用于若所述第一波动曲线小于所述基准波动曲线,则调整所述硬盘的IOPS为第二预设阈值。
根据第三方面,本发明实施例提供了一种电子设备,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面或者第一方面的任意一种实施方式中所述的随机写性能调节的方法。
根据第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行第一方面或者第一方面的任意一种实施方式中所述的随机写性能调节的方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1 是应用本发明实施例提供的随机写性能调节的方法的流程示意图;
图2 是应用本发明实施例提供的随机写性能调节的装置的功能模块图;
图3 是应用本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本申请实施例提供的随机写性能调节的方法,其执行主体可以是随机写性能调节的装置,该随机写性能调节的装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部,其中,该计算机设备可以是服务器或者终端,其中,本申请实施例中的服务器可以为一台服务器,也可以为由多台服务器组成的服务器集群,本申请实施例中的终端可以是智能手机、个人电脑、平板电脑、可穿戴设备以及智能机器人等其他智能硬件设备。下述方法实施例中,均以执行主体是电子设备为例来进行说明。
在本申请一个实施例中,如图1所示,提供了一种随机写性能调节的方法,以该方法应用与电子设备为例进行说明,包括以下步骤:
S100,获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理。
在数据量指数级增长的信息化时代,快速有效的存储和处理数据成为了研究的重要方向。机械硬盘的速度已经无法满足目前CPU的计算速度,固态硬盘以读写速度快、体积小的优势逐渐成为了主流存储器件,广泛应用到生活中的各个领域,因而硬盘的性能也随之受到了重视,但是由于硬盘的写入与擦除的速率不一致,若写入的速度较快,而擦除的速度较慢,那么硬盘中的存储块较少,当硬盘的IOPS(英文:Input/Output Operations PerSecond 每秒的读写次数)过大时,则会影响硬盘的性能,同样的当写入的速度较慢,而擦除的速度较快,当硬盘的IOPS过小时,也会影响硬盘的数据传输速率,因此需要根据存储块的中的数据帧的状态进行平衡调整,进而确定从那一个存储块中先进行写入操作。
S200,基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集。
在本实施例中,基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,统计出空闲的数据帧数量,获取到第一数据集,根据第一数据集可计算出硬盘的IOPS,便于后续对硬盘的IOPS进行分析调整。
S300,对所述第一数据集进行收敛处理,得到第二数据集。
在本实施例中,根据第一数据集可观测出数据帧之间的波动情况,若数据帧波动的幅度太大,说明根据硬盘的IOPS不稳定,因此对第一数据集进行收敛处理,使得第一数据集的波动减小,获取到第二数据集可以使得数据帧的波动趋于稳定状态。
S400,基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
在本实施例中,获取到收敛后的第二数据集后,根据第二数据集可计算出硬盘的IOPS,可直观的看到硬盘的IOPS的情况,当IOPS过高时,需要调小以降低存储块的消耗速度,反之当IOPS过高时,需要调大以提高存储块的消耗速度,
本发明提供的随机写性能调节的方法,通过对硬盘的剩余空间的存储单元进行平衡处理,计算所述存储单元中各个存储块的数据帧数量,通过各个存储块的数据帧数量可计算出硬盘的IOPS,进而可对硬盘的IOPS进行判断分析,根据判断分析结果通过写仲裁控制模块对IOPS进行稳态调整,防止IOPS的波动不平衡,提高硬盘随机写的IOPS的一致性。
在本申请一个可选的实施例中,上述S100中的“获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理”步骤中,包括:
(1)判断所述存储单元的所述存储块数量是否超过预设阈值;
(2)若是,则执行第一操作,即对第一状态的存储单元进行数据写入;
(3)若否,则执行第二操作,即对第二状态的存储单元进行数据写入。
在本实施例中,首先判断空闲存储块的数目最少的存储单元和存储块的数目最多的存储单元是否超过预设阈值,该预设阈值可以设定,当前设定为3个。
如果没有超过该预设阈值,则继续判断存储单元是否处于空闲状态,空闲状态即为暂时没有从该存储单元上选取空闲存储块用来填写数据,哪个存储单元处于空闲状态,则选择该存储单元,如果有多个存储单元处于空闲状态,则选择空闲存储块数少的存储单元进行数据写入。
如果超过该预设阈值,则跳过对存储单元的状态判断,直接选择空闲存储块数目少的存储单元,即从该存储单元中选取空闲存储块进行数据写入。
如此可以平衡硬盘写入数据和擦除数据的速率,提高了效率。
本发明提供的随机写性能调节的方法,判断所述存储单元的所述存储块数量是否超过预设阈值,针对判断结果执行不同的操作,选取存储单元中存储块空闲的存储单元先进行数据写入,使得对存储块写入的速度与擦除的速度平衡。
在本申请一个可选的实施例中,上述S300中的“对所述第一数据集进行收敛处理,得到第二数据集”步骤中,包括:
(1)基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集;
(2)对所述第二子数据集中的数据进行插值处理,得到所述第二数据集。
当获取到第一数据集后,借鉴LSTM(英文:Long Short-Term Memory 中文:长短期记忆网络)的思想计算出新的数据帧数,即得到第二子数据集,减少目标模块因为回收出新的存储块而带来的波动,提高了一致性。
在计算稳态时的剩余空间中,在整个写入数据过程中,存储块数目是随时变化的,令B1, B2, B3…Bn代表存储块数目变化的情况,根据该存储块的实际坏块情况,计算剩余的数据帧数量所在的剩余空间为FB1,FB2,FB3…FBn,使用avgFB1, avgFB2, avgFB3…avgFBn来对应Bn时的历史平均数据帧计数空间,令avgFB1=FB1, 则:
avgFBn+1=(βavgFBn + FBn+1)/(β+1) 公式1
其中β值的含义是指只保留最近多次的FBn来进行平均, 借鉴了LSTM的思想,将每次计算完的结果传给下一步插值处理。
具体如何确定β,我们在实际获取了在随机写从调整到稳态过程的空闲数据帧空间数据,通过计算获得β值使得空闲数据帧数据在稳态过程中经过上述公式计算后波动较小,与实际的测试情况基本相符,经过对比β值在0.9的时候avgFBn+1波动曲线接近原图并且波动范围小,经过公式1计算后的稳态中avgFBn+1的变化很小。
下一步利用线性插值原理对第二子数据集中的数据进行插值处理,建立坐标轴,横轴为时间t,纵轴为剩余空间的数据帧数目y,其中(xi,yi)是上一点缓存数据帧数目,(xi+1,yi+1)是最新数据帧数目,对于(xi,yi)和(xi+1,yi+1)进行线性插值,(x,y)点是线性插值结果,本发明中x值使用了在计算周期的中心点,则y为两点纵轴值的平均值,也可以根据一致性结果对横轴的比例进行调节,
则根据插值原理,可以得出如下公式计算新的数据帧数目。
每次缓存新数据后,利用上述公式计算,因为计算周期为5ms是固定的,又因为x为周期中心点,所以y为前后两点的平均值。
形成的第二数据集的曲线比第二子数据集的曲线更为收敛,但是变化趋势保持一致,所以利用第二数据集形成的曲线对硬盘的IOPS进行写仲裁控制,可以将IOPS控制的更为稳定。
本发明提供的随机写性能调节的方法,基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集,去除存储块中的坏块,计算出剩余存储块的数据帧数量,减少因为回收出新的存储块而带来的波动,提高了一致性,再对所述第二子数据集中的数据进行插值处理,得到所述第二数据集,使得存储块中的数据帧数量波动范围减小,趋于稳态。
在本申请一个可选的实施例中,上述S400中“基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整”步骤中,包括:
(1)获取所述剩余空间的阶段状态,以及所述阶段状态下所述第二数据集中的所述数据帧数量;
(2)基于所述数据帧数量获取所述硬盘的IOPS,对所述硬盘的IOPS进行调整。
本发明提供的随机写性能调节的方法,根据剩余空间的阶段状态可以获取到对应的数据帧数量,根据数据帧数量可计算出硬盘的IOPS,针对每个阶段状态下的IOPS对其进行调整,调整时比较平滑,一致性也相对提高。
在本申请一个可选的实施例中,上述获取所述剩余空间的阶段状态步骤中,包括:
(1)基于写仲裁调整开始状态对应的数据帧数量到禁止状态对应的数据帧数量,获取第一阶段;
(2)基于所述写仲裁调整禁止状态对应的数据帧数量到停止状态对应的数据帧数量,获取第二阶段;
(3)基于所述写仲裁调整停止状态对应的数据帧数量,获取第三阶段;
(4)基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS。
start_credit_num(开始状态)的含义是写仲裁调整开始介入的空闲存储块对应数据帧数目,steady_num(稳定状态)是写仲裁调整下稳态时的空闲存储块对应数据帧数目,forbid_credit_num(禁止状态)是开始禁止IOPS的空闲存储块对应数据帧数目,stop_credit_num(停止状态)是将IOPS降为0的空闲存储块对应数据帧数目。
举例说明,调整的过程分为三个阶段,第一个阶段是当第二步中计算的数据帧数目avgFBn+1在start_credit_num=144对应数据帧数目到forbid_credit_num=24对应数据帧数目之间,第二个阶段为 forbid_credit_num=24对应数据帧数目到stop_credit_num=18对应数据帧数目之间,第三阶段为 stop_credit_num=18对应数据帧数目以下。
本发明提供的随机写性能调节的方法,根据基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS,基于不同的阶段可获取到相应的数据帧数量,根据数据帧数量可计算出硬盘的IOPS,针对不同阶段的IOPS进行调整,相应的一致性也提高了。
在本申请一个可选的实施例中,上述对所述硬盘的IOPS进行调整步骤中,包括:
(1)基于所述写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线;
(2)判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况;
(3)基于所述波动情况对所述硬盘的IOPS进行调整。
上述对所述硬盘的IOPS进行调整步骤中计算得到的IOPS后,需要根据公式1计算后的稳态中avgFBn+1与steady_num(稳定状态)数量的数据帧数目比较进行动态调整。
本发明提供的随机写性能调节的方法,由于存储块中的数据帧的数量是随着硬盘的写入和擦除操作而在不断变化的,所以第二数据集形成的第一波动曲线也是波动的,但是写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线,将不断变化的第一波动曲线与基准波动曲线进行比较分析,可判断硬盘的IOPS的高低,因此以基准波动曲线为标准对IOPS进行调整,使得第一波动曲线趋于基准波动曲线,进而提高了硬盘随机写的一致性。
在本申请一个可选的实施例中,上述判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况步骤中,包括:
若所述第一波动曲线大于所述基准波动曲线,则调整所述硬盘的IOPS为第一预设阈值;
若所述第一波动曲线小于所述基准波动曲线,则调整所述硬盘的IOPS为第二预设阈值。
avgFBn+1接近steady_num数量的数据帧数目时,判定为稳态。avgFBn+1大于设定的steady_num,说明稳态情况离我们的预设情况有偏差, 则提升预设的IOPS为(1+δ)*IOPS, 这里暂定δ为5%。当Bn小于了forbid_credit_num的数据帧数目空间时, 说明预设的IOPS过高了, 需要较小以降低存储块的消耗速度, 将IOPS降低为(1-ζ)*IOPS, 这里暂定ζ为10%。
经实际测验,该方法实现后的一致性从83%提高为93%,性能也提高了10%左右。具体可根据实际测算结果进行分析调整。
本发明提供的随机写性能调节的方法,根据第一波动曲线与基准波动曲线的波动情况进行对比分析,可判断出硬盘的IOPS的高低,进而对IOPS做相应的调整,提高了硬盘随机写的一致性,硬盘的性能也相对提高。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
如图2所述,本实施例提供一种随机写性能调节的装置,包括平衡处理模块1、数据列获取模块2、收敛模块3和调整模块4:
平衡处理模块1,用于获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;
数据列获取模块2,用于基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;
收敛模块3,用于对所述第一数据集进行收敛处理,得到第二数据集;
调整模块4,基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
本发明提供的随机写性能调节的装置,通过对硬盘的剩余空间的存储单元进行平衡处理,计算所述存储单元中各个存储块的数据帧数量,通过各个存储块的数据帧数量可计算出硬盘的IOPS,进而可对硬盘的IOPS进行判断分析,根据判断分析结果通过写仲裁控制模块对IOPS进行稳态调整,防止IOPS的波动不平衡,提高硬盘随机写的IOPS的一致性。
在本申请一个实施例中,上述平衡处理模块,具体用于:
阈值判断模块,用于判断所述存储单元的所述存储块数量是否超过预设阈值;
第一操作模块,用于若是,则执行第一操作,即对第一状态的存储单元进行数据写入;
第二操作模块,用于若否,则执行第二操作,即对第二状态的存储单元进行数据写入。
在本申请一个实施例中,上述收敛模块,具体用于:
第二子数据集获取模块,用于基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集;
第二数据集获取模块,用于对所述第二子数据集中的数据进行插值处理,得到所述第二数据集。
在本申请一个实施例中,上述调整模块,具体用于:
状态获取模块,用于获取所述剩余空间的阶段状态,以及所述阶段状态下所述第二数据集中的所述数据帧数量;
调整模块,用于基于所述数据帧数量获取所述硬盘的IOPS,对所述硬盘的IOPS进行调整。
在本申请一个实施例中,上述状态获取模块,具体用于:
第一状态获取模块,用于基于写仲裁调整开始状态对应的数据帧数量到禁止状态对应的数据帧数量,获取第一阶段;
第二阶段获取模块,用于基于所述写仲裁调整禁止状态对应的数据帧数量到停止状态对应的数据帧数量,获取第二阶段;
第三阶段获取模块,用于基于所述写仲裁调整停止状态对应的数据帧数量,获取第三阶段;
计算模块,用于基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS。
在本申请一个实施例中,上述状态获取模块,具体用于:
基准波动曲线获取模块,用于基于所述写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线;
判断分析模块,用于判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况;
调整模块,用于基于所述波动情况对所述硬盘的IOPS进行调整。
在本申请一个实施例中,上述判断分析模块,具体用于:
第一调整模块,用于若所述第一波动曲线大于所述基准波动曲线,则调整所述硬盘的IOPS为第一预设阈值;
第二调整模块,用于若所述第一波动曲线小于所述基准波动曲线,则调整所述硬盘的IOPS为第二预设阈值。
关于随机写性能调节的装置的具体限定以及有益效果可以参见上文中对于随机写性能调节的方法的限定,在此不再赘述。上述随机写性能调节的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本发明实施例还提供一种电子设备,具有上述图2所示的随机写性能调节的装置。
如图3所示,图3是本发明可选实施例提供的一种电子设备的结构示意图,如图3所示,该电子设备可以包括:至少一个处理器71,例如CPU(Central Processing Unit,中央处理器),至少一个通信接口73,存储器74,至少一个通信总线72。其中,通信总线72用于实现这些组件之间的连接通信。其中,通信接口73可以包括显示屏(Display)、键盘(Keyboard),可选通信接口73还可以包括标准的有线接口、无线接口。存储器74可以是高速RAM存储器(Random Access Memory,易挥发性随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器74可选的还可以是至少一个位于远离前述处理器71的存储装置。其中处理器71可以结合图2所描述的装置,存储器74中存储应用程序,且处理器71调用存储器74中存储的程序代码,以用于执行上述任一方法步骤。
其中,通信总线72可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。通信总线72可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器74可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器74还可以包括上述种类的存储器的组合。
其中,处理器71可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
其中,处理器71还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic, 缩写:GAL)或其任意组合。
可选地,存储器74还用于存储程序指令。处理器71可以调用程序指令,实现如本申请图1实施例中所示的随机写性能调节的方法。
本发明实施例还提供了一种非暂态计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的随机写性能调节的方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(HardDisk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种随机写性能调节的方法,其特征在于,包括如下步骤:
获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;
基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;
对所述第一数据集进行收敛处理,得到第二数据集;
基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
2.根据权利要求1所述的随机写性能调节的方法,其特征在于,获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理步骤中,包括:
判断所述存储单元的所述存储块数量是否超过预设阈值;
若是,则执行第一操作,即对第一状态的存储单元进行数据写入;
若否,则执行第二操作,即对第二状态的存储单元进行数据写入。
3.根据权利要求1所述的随机写性能调节的方法,其特征在于,所述对所述第一数据集进行收敛处理,得到第二数据集步骤中,包括:
基于所述存储块的状态计算所述剩余空间稳定状态下的数据帧数量,得到第二子数据集;
对所述第二子数据集中的数据进行插值处理,得到所述第二数据集。
4.根据权利要求1所述的随机写性能调节的方法,其特征在于,所述基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整步骤中,包括:
获取所述剩余空间的阶段状态,以及所述阶段状态下所述第二数据集中的所述数据帧数量;
基于所述数据帧数量获取所述硬盘的IOPS,对所述硬盘的IOPS进行调整。
5.根据权利要求4所述的随机写性能调节的方法,其特征在于,所述获取所述剩余空间的阶段状态步骤中,包括:
基于写仲裁调整开始状态对应的数据帧数量到禁止状态对应的数据帧数量,获取第一阶段;
基于所述写仲裁调整禁止状态对应的数据帧数量到停止状态对应的数据帧数量,获取第二阶段;
基于所述写仲裁调整停止状态对应的数据帧数量,获取第三阶段;
基于所述第一阶段、所述第二阶段和所述第三阶段计算出所述硬盘的IOPS。
6.根据权利要求5所述的随机写性能调节的方法,其特征在于,所述对所述硬盘的IOPS进行调整步骤中,包括:
基于所述写仲裁调整下稳态时对应的数据帧数量,形成基准波动曲线;
判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况;
基于所述波动情况对所述硬盘的IOPS进行调整。
7.根据权利要求6所述的随机写性能调节的方法,其特征在于,所述判断所述第二数据集形成的第一波动曲线与所述基准波动曲线的波动情况步骤中,包括:
若所述第一波动曲线大于所述基准波动曲线,则调整所述硬盘的IOPS为第一预设阈值;
若所述第一波动曲线小于所述基准波动曲线,则调整所述硬盘的IOPS为第二预设阈值。
8.一种随机写性能调节的装置,其特征在于,包括:
平衡处理模块,用于获取硬盘目标模块的剩余空间,对所述剩余空间的存储单元进行平衡处理;
数据列获取模块,用于基于平衡处理结果计算所述存储单元中各个存储块的数据帧数量,得到第一数据集;
收敛模块,用于对所述第一数据集进行收敛处理,得到第二数据集;
调整模块,基于所述第二数据集计算出所述硬盘的IOPS,对所述硬盘的IOPS进行写仲裁调整。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-7中任一项所述的随机写性能调节的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行权利要求1-7中任一项所述的随机写性能调节的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111147105.6A CN113590050B (zh) | 2021-09-29 | 2021-09-29 | 随机写性能调节的方法、装置、电子设备及存储介质 |
PCT/CN2022/074598 WO2023050672A1 (zh) | 2021-09-29 | 2022-01-28 | 随机写性能调节的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111147105.6A CN113590050B (zh) | 2021-09-29 | 2021-09-29 | 随机写性能调节的方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113590050A true CN113590050A (zh) | 2021-11-02 |
CN113590050B CN113590050B (zh) | 2021-12-31 |
Family
ID=78242605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111147105.6A Active CN113590050B (zh) | 2021-09-29 | 2021-09-29 | 随机写性能调节的方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113590050B (zh) |
WO (1) | WO2023050672A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023050672A1 (zh) * | 2021-09-29 | 2023-04-06 | 苏州浪潮智能科技有限公司 | 随机写性能调节的方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475115A (zh) * | 2020-04-03 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种ssd闪存寿命预测的方法、装置、设备及可读介质 |
CN111708491A (zh) * | 2020-05-29 | 2020-09-25 | 苏州浪潮智能科技有限公司 | 一种随机写方法和装置 |
CN112416255A (zh) * | 2020-11-30 | 2021-02-26 | 苏州浪潮智能科技有限公司 | 一种用户写入速度控制方法、装置、设备和介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110400573B (zh) * | 2018-04-25 | 2022-02-01 | 华为技术有限公司 | 一种数据处理的方法及装置 |
JP7467064B2 (ja) * | 2019-10-17 | 2024-04-15 | キオクシア株式会社 | メモリシステムおよびガベッジコレクション制御方法 |
CN111090398B (zh) * | 2019-12-13 | 2022-06-17 | 北京浪潮数据技术有限公司 | 固态硬盘的垃圾回收方法、装置、设备及可读存储介质 |
CN113590050B (zh) * | 2021-09-29 | 2021-12-31 | 苏州浪潮智能科技有限公司 | 随机写性能调节的方法、装置、电子设备及存储介质 |
-
2021
- 2021-09-29 CN CN202111147105.6A patent/CN113590050B/zh active Active
-
2022
- 2022-01-28 WO PCT/CN2022/074598 patent/WO2023050672A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475115A (zh) * | 2020-04-03 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种ssd闪存寿命预测的方法、装置、设备及可读介质 |
CN111708491A (zh) * | 2020-05-29 | 2020-09-25 | 苏州浪潮智能科技有限公司 | 一种随机写方法和装置 |
CN112416255A (zh) * | 2020-11-30 | 2021-02-26 | 苏州浪潮智能科技有限公司 | 一种用户写入速度控制方法、装置、设备和介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023050672A1 (zh) * | 2021-09-29 | 2023-04-06 | 苏州浪潮智能科技有限公司 | 随机写性能调节的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023050672A1 (zh) | 2023-04-06 |
CN113590050B (zh) | 2021-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9588906B2 (en) | Removing cached data | |
US20180321730A1 (en) | Methods for adaptive battery charging and electronic device thereof | |
CN108874324B (zh) | 一种访问请求处理方法、装置、设备及可读存储介质 | |
US20210157511A1 (en) | Storage device throttling amount of communicated data depending on suspension frequency of operation | |
CN113590050B (zh) | 随机写性能调节的方法、装置、电子设备及存储介质 | |
US11669139B2 (en) | Apparatuses and methods for indicating an entrance of a power management event | |
CN111245732B (zh) | 一种流量控制方法、装置及设备 | |
US11436188B2 (en) | Resource optimization and update method, server, and device | |
US20220075540A1 (en) | Adjusting trim settings to improve memory performance or reliability | |
CN111708491B (zh) | 一种随机写方法和装置 | |
CN114168318A (zh) | 存储释放模型的训练方法、存储释放方法及设备 | |
CN105979142A (zh) | 一种温升控制方法及终端 | |
CN112558872A (zh) | 数据处理方法和装置、存储介质和电子设备 | |
CN112540933A (zh) | 缓存读写方法、装置及电子设备 | |
CN103530240B (zh) | 数据块缓存方法和装置 | |
CN110874333B (zh) | 存储设备及存储方法 | |
CN106202374A (zh) | 一种数据处理方法及装置 | |
CN111143351B (zh) | Imsi数据管理方法及设备 | |
CN114328153A (zh) | 一种rdma性能测试系统、方法、装置及介质 | |
CN109062513B (zh) | 一种控制处理写操作的方法及装置 | |
CN110738476A (zh) | 一种样本迁移方法、装置及设备 | |
CN110535785A (zh) | 一种发送频率的控制方法、装置和分布式系统 | |
CN115543226B (zh) | 一种闪存数据存储处理方法及系统 | |
CN116701153B (zh) | 结算服务性能的评估方法、装置、电子设备及存储介质 | |
KR102466551B1 (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 |