CN111459402A - 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 - Google Patents
磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 Download PDFInfo
- Publication number
- CN111459402A CN111459402A CN202010105888.0A CN202010105888A CN111459402A CN 111459402 A CN111459402 A CN 111459402A CN 202010105888 A CN202010105888 A CN 202010105888A CN 111459402 A CN111459402 A CN 111459402A
- Authority
- CN
- China
- Prior art keywords
- disk
- write
- request
- delay
- writing
- 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
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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
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
本发明公开了一种磁盘可控缓冲写方法、控制器、混合IO调度方法及调度器,属于计算机存储技术领域,包括:根据磁盘的写延迟特性预测下一个写请求的写延迟状态,若磁盘请求队列为空,且预测结果为高,则将磁盘状态设置为不可用,写入填充数据直至下一次预测结果不为高,此时将ADW重置为0,将状态重置为可用;若磁盘请求队列为空,且预测结果为中,则维持磁盘可用并写入填充数据;在异构存储节点接收到写IO请求时,若l(t)>L,且磁盘中下一个写请求的写延迟状态为低或中,或者,l(t)≤L,且磁盘中下一个写请求的写延迟状态为低,则将该请求重定向至磁盘。本发明能够提高磁盘的整体性能,能够提高异构存储节点中高速硬盘的使用寿命和磁盘的利用率。
Description
技术领域
本发明属于计算机存储技术领域,更具体地,涉及一种磁盘可控缓冲写方法、控制器、混合IO调度方法及调度器。
背景技术
为了提高磁盘的写性能,往往会使用到写缓冲,磁盘内部写缓冲具体是磁盘中用于临时存放向磁盘发送的写请求所包含的待写数据的缓冲区。相对于主机而言,一旦请求的数据被写到磁盘控制器的内部缓冲区中,请求已经完成,此时的写延迟较低。但是,当磁盘内部缓冲区写满时,磁盘控制器必须阻塞外部请求,直到内部缓冲区的数据被刷新到磁盘,此时的写延迟较高。也即是说,由于写缓冲区的存在,在磁盘的使用过程中,某一些阶段下,写延迟较高,会影响磁盘的整体性能。
随着计算机存储技术的不断发展,出现了固态硬盘等新型存储设备,这些新型存储设备与磁盘相比,具有更快的写入速度,但是容量相对较小,且使用寿命受限,并且在使用过程中需要执行垃圾回收操作。为了为应用程序提供高成本效益和微秒级响应能力,出现了将高速硬盘与高容量磁盘相结合的混合存储服务器(也被称为异构存储节点)。但是,异构存储节点也存在着一些缺点。以磁盘和固态硬盘所组成的异构存储节点为例,传统写方案为先将请求数据写入固态硬盘,再从固态硬盘将数据迁移至磁盘,导致固态硬盘磨损过快而磁盘利用率不高。磁盘和固态硬盘之间的这种不平衡的利用不仅造成后者的快速磨损,而且由于对后者密集的写操作导致频繁的垃圾回收,导致极高的尾部延迟。
总体而言,磁盘整体写入性能仍有待提高;对于包含磁盘的异构存储节点而言,其整体性能以及其所包含的高速硬盘的使用寿命均有待提高。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种磁盘可控缓冲写方法、控制器、混合IO调度方法及调度器,其目的在于,提高磁盘的整体写性能,并且提高异构存储节点的整体性能及其中所包含的高速硬盘的使用寿命。
为实现上述目的,按照本发明的第一方面,提供了一种磁盘的可控缓冲写方法,包括:
在清空磁盘内部缓冲区后,持续监测磁盘请求队列并预测下一个写请求的写延迟状态(在本实施例中,以state表示此预测结果);
若磁盘请求队列中包含请求,则将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
若磁盘请求队列中不包含请求,且下一个写请求的写延迟状态为高,则将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;可选地,在实际应用中,可用true表示磁盘状态为可用,用false表示磁盘状态为不可用;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为中,则维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为低,则维持磁盘状态为可用,并且不向磁盘写入填充数据;
每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0。
本发明中,充分利用了磁盘的写延迟特性,即根据写延迟的不同可以划分为低延迟状态、中延迟状态和高延迟状态,这三个延迟状态所对应的写延迟依次增大,每一次磁盘写都对应一种延迟状态,每一种延迟状态所对应的写延迟由磁盘内部缓冲区的空间决定,在连续且顺序写模式下,对磁盘的一系列写操作表现出周期性、阶梯式的写延迟规律,具体来说,磁盘缓冲写延迟首先是低延迟阶段,然后是一个或多个中、高延迟阶段交替。基于磁盘的写延迟特性,本发明对下一个写请求的写延迟状态进行预测,在磁盘请求队列为空且预测下一个写请求的写延迟状态为高或中时,主动向磁盘中写入填充数据,一方面,能够在下一个写请求的写延迟状态为高时,主动触发磁盘的高延迟阶段,从而避免了处理正常写请求时出现高延迟,提高了磁盘的整体性能;另一方面,维持了磁盘的连续和顺序写模式,能够确保磁盘符合上述写延迟特性。
进一步地,预测下一个写请求的写延迟状态,包括:
若磁盘当前的写延迟状态为低,且当前磁盘内部缓冲区的累积写入量ADW与当前写请求的大小之和SUM<Wf,则预测下一个写请求的写延迟状态为低;若磁盘当前的写延迟状态为低,且SUM≥Wf,则预测下一个写请求的写延迟状态为高;
若磁盘当前的写延迟状态为中,且SUM<Wm,则预测下一个写请求的写延迟状态为中;若磁盘当前的写延迟状态为中,且SUM≥Wm,则预测下一个写请求的写延迟状态为高;
若磁盘当前的写延迟状态为高,则预测下一个写请求的写延迟状态为中;
其中,Wf为磁盘内部缓冲区在整个低延迟阶段的累积写入量,Wm为磁盘内部缓冲区在整个中延迟阶段的累积写入量。
在连续且顺序写模式下,磁盘的具体写延迟状态与磁盘内部缓冲区在当前阶段的累积写入量相关,其中,高延迟阶段的累计写入量很少;本发明通过上述预测方法对下一个写请求的写延迟状态进行预测,能够充分利用磁盘的写延迟特性,准确预测下一个写请求的写延迟状态。
进一步地,磁盘内部缓冲区在整个低延迟阶段的累积写入量Wf,以及磁盘内部缓冲区在整个中延迟阶段的累积写入量Wm的获取方式为:
在清空磁盘内部缓冲区后,持续向磁盘发送大小为s的顺序写请求,直至获取到三种稳定的写延迟,并记录每一种写延迟所对应的持续时间;
所获取到的三种写延迟从小到大所对应的写延迟状态依次为低、中和高;
根据低延迟Lf和低延迟阶段的持续时间Tf,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wf=Tf*s/Lf;根据中延迟Lm和中延迟阶段的持续时间Tm,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wm=Tm*s/Lm;
其中,s>0。
本发明通过上述预训练过程,能够准确获取到用于表征磁盘写延迟特性的参数,即磁盘内部缓冲区在整个低延迟阶段的累积写入量Wf和磁盘内部缓冲区在整个低延迟阶段的累积写入量Wm,根据这两个参数,可以确定磁盘写延迟状态的变迁条件,为准确预测下一个写请求的写延迟状态提供了保证。
进一步地,本发明第一方面提供的磁盘的可控缓冲写方法,还包括:
在向磁盘写入填充数据时,若有读请求达到,则立即停止写入填充数据,响应读请求。
本发明在向磁盘写入填充数据的阶段,如果有读请求到达,会优先响应读请求,能够避免影响正常的读请求。
进一步地,用户数据和填充数据以日志模式写入磁盘的设备文件中,并且在访问日志文件时绕过文件系统,以减少底层文件系统的开销。
进一步地,本发明第一方面提供的磁盘的可控缓冲写方法,还包括:
当磁盘空闲时,或者日志文件的大小超过预设的阈值时,从日志文件中顺序并连续读取用户数据块后合并,并将合并后的用户数据重新写入磁盘的设备文件中,之后回收日志文件。
本发明在磁盘空闲或日志文件较大时,对日志文件中的用户数据进行合并后重新写入磁盘的设备文件,之后回收日志文件,从而能够剔除无用的填充数据,提高磁盘的利用率。
按照本发明的第二方面,提供了一种磁盘控制器,包括:写预测器、监测模块、写入模块、第一填充模块、第二填充模块以及更新模块;
写预测器,用于预测下一个写请求的写延迟状态;
监测模块,用于持续监测磁盘请求队列;
写入模块,用于在监测模块监测到磁盘请求队列中包含请求时,将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
第一填充模块,用于在监测模块监测到磁盘请求队列中不包含请求,且写预测模块预测下一个写请求的写延迟状态为高时,将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;
第二填充模块,用于在监测模块监测到磁盘请求队列中不包含请求,且写预测模块预测下一个写请求的写延迟状态为中时,维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
更新模块,用于在每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0。
按照本发明的第三方面,提供了一种基于本发明第一方面提供的磁盘的可控缓冲写方法的混合IO调度方法,该混合IO调度方法适用于异构存储节点,异构存储节点包括一组磁盘和一组高速硬盘,每个磁盘对应一个请求队列和一个写缓冲区,每个高速硬盘对应一个请求队列和一个写缓冲区;本发明第三方面提供的混合IO调度方法包括:
(S1)在异构存储节点接收到IO请求后,识别其类型,若为读IO请求,则将所接收到的读IO请求放入到目的设备的请求队列后,转入步骤(S4);若为写IO请求,则转入步骤(S2);
(S2)若当前没有磁盘处于可用状态,则将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);若当前有磁盘处于可用状态,则获取当前高速硬盘的请求队列长度l(t),并预测磁盘中下一个写请求的写延迟状态,之后转入步骤(S3);
(S3)若l(t)>L,且磁盘中下一个写请求的写延迟状态为低或中,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);若l(t)≤L,且磁盘中下一个写请求的写延迟状态为低,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);在其他情况下,将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);
(S4)针对当前IO请求的调度结束;
其中,高速硬盘与磁盘相比,容量较小且速度较快;目的设备为异构存储节点中存储有所读取数据的磁盘或高速硬盘;L为预设的队列长度阈值,当高速硬盘的请求队列长度大于L时,同一个写IO请求在高速硬盘中的写延迟高于其在磁盘中的写延迟。
本发明在异构存储节点中存在可用磁盘时,根据当前高速硬盘的请求队列长度l(t)以及磁盘中下一个写请求的写延迟状态,将写IO请求重定向至磁盘,相比于传统的先将数据写入高速硬盘,再从高速硬盘迁移至磁盘中的写入方法,能够提高异构存储节点的整体性能,并减少对高速硬盘的写入量,从而提高高速硬盘的使用寿命和磁盘的利用率。具体地,在当前高速硬盘的请求队列长较长(l(t)>L),且下一个写请求的写延迟状态为中或低时,优先将写IO请求重定向至磁盘,由此能够有效降低写延迟,同时减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率;在当前高速硬盘的请求队列长较短(l(t)≤L),且下一个写请求的写延迟状态为中或低时,将写IO请求重定向至磁盘,能够在不提高写延迟的情况下,减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率。
进一步地,本发明第三方面提供的混合IO调度方法,还包括:
在进行IO调度的同时,分别轮询磁盘和高速硬盘的请求队列,并从队列中获取请求;
对于从高速硬盘中获取到的请求,若为写请求,则按照写入数据长度从高速硬盘的写缓冲区中取出数据写入高速硬盘,并在写入完成后,更新高速硬盘的元数据;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据;
对于从磁盘中获取到的请求,若为写请求,则采用本发明第一方面提供的磁盘的可控缓冲写方法将写请求所对应的数据写入磁盘;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据。
本发明在处理磁盘写请求队列中的写请求时,使用本发明第一方面提供的磁盘的可控缓冲写方法,能够维持磁盘的连续和顺序写模式,并避免处理正常写请求时出现高延迟,提高了异构存储节点中磁盘的整体性能,进一步提高了异构存储节点的整体性能。
按照本发明的第四方面,提供了一种适用于异构存储节点的混合IO调度器,该混合IO调度器适用于异构存储节点,异构存储节点包括一组磁盘和一组高速硬盘,每个磁盘对应一个请求队列和一个写缓冲区,每个高速硬盘对应一个请求队列和一个写缓冲区;本发明第四方面提供的混合IO调度器包括:处理器和计算机可读存储介质;
计算机可读存储介质用于存储可执行程序;
处理器用于读取计算机可读存储介质中存储的可执行程序,执行权利本发明第三方面提供的混合IO调度方法。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明所提供的磁盘的可控缓冲写方法及磁盘调度器,基于磁盘的写延迟特性,对下一个写请求的写延迟状态进行预测,在磁盘请求队列为空且预测下一个写请求的写延迟状态为高或中时,主动向磁盘中写入填充数据,一方面,能够在下一个写请求的写延迟状态为高时,主动触发磁盘的高延迟阶段,从而避免了处理正常写请求时出现高延迟,提高了磁盘的整体性能;另一方面,维持了磁盘的连续和顺序写模式,能够确保磁盘符合上述写延迟特性。总的来说,本发明能够有效提高磁盘的整体性能。
(2)本发明所提供的混合IO调度方法及调度器,在异构存储节点中存在可用磁盘时,根据当前高速硬盘的请求队列长度l(t)以及磁盘中下一个写请求的写延迟状态,优先将写IO请求重定向至磁盘,能够提高异构存储节点的整体性能,并减少对高速硬盘的写入量,从而提高高速硬盘的使用寿命和磁盘的利用率。具体地,在当前高速硬盘的请求队列长较长(l(t)>L),且下一个写请求的写延迟状态为中或低时,将写IO请求重定向至磁盘,由此能够有效降低写延迟,同时减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率;在当前高速硬盘的请求队列长较短(l(t)≤L),且下一个写请求的写延迟状态为中或低时,将写IO请求重定向至磁盘,能够在不提高写延迟的情况下,减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率。
(3)本发明所提供的混合IO调度方法及调度器,在处理磁盘写请求队列中的写请求时,使用本发明第一方面提供的磁盘的可控缓冲写方法,能够维持磁盘的连续和顺序写模式,并避免处理正常写请求时出现高延迟,提高了异构存储节点中磁盘的整体性能,进一步提高了异构存储节点的整体性能。
附图说明
图1为本发明实施例提供的磁盘的可控缓冲写方法流程图;
图2为本发明实施例提供的磁盘写延迟特性示意图;
图3为本发明实施例提供的预测磁盘中下一个写请求的写延迟状态的方法流程示意图;
图4为本发明实施例提供的混合IO调度方法示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明中,本发明及附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
为了提高磁盘的整体写性能,本发明提供了一种磁盘的可控缓冲写方法,如图1所示,包括:
在清空磁盘内部缓冲区后,持续监测磁盘请求队列并预测下一个写请求的写延迟状态;可选地,在实际应用中,可通过调用sync()操作来强制同步,达到清空磁盘内部缓冲区的目的;
若磁盘请求队列中包含请求,则将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
若磁盘请求队列中不包含请求,且下一个写请求的写延迟状态为高,则将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为中,则维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为低,则维持磁盘状态为可用,并且不向磁盘写入填充数据;
每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0;中延迟填充数据块的大小PF应尽量小,以避免阻塞用户的正常请求,例如,在本实施例中,设置PF=4KB;高延迟填充数据块的大小PS可相对较大,以尽快触发磁盘的高延迟状态,并使磁盘尽快度过整个高延迟阶段,例如,在本实施例中,这是PS=64KB;应当说明的是,此处对PF和PS的具体取值,仅为示例性说明,不应理解为对本发明的唯一限定。
本实施例中,充分利用了磁盘的写延迟特性,该写延迟特性具体如图2所示,即根据写延迟的不同可以划分为低延迟状态、中延迟状态和高延迟状态,这三个延迟状态所对应的写延迟依次增大,例如,对于4KB大小的写入,其低延迟状态的写延迟为35μs、中延迟状态的写延迟为55μs,高延迟状态的写延迟为12ms;每一次磁盘写都对应一种延迟状态,每一种延迟状态所对应的写延迟由磁盘内部缓冲区的空间决定,在连续且顺序写模式下,对磁盘的一系列写操作表现出周期性、阶梯式的写延迟规律,具体来说,磁盘缓冲写延迟首先是低延迟阶段,然后是一个或多个中、高延迟阶段交替。基于磁盘的写延迟特性,本实施例对下一个写请求的写延迟状态进行预测,在磁盘请求队列为空且预测下一个写请求的写延迟状态为高或中时,主动向磁盘中写入填充数据,一方面,能够在下一个写请求的写延迟状态为高时,主动触发磁盘的高延迟阶段,从而避免了处理正常写请求时出现高延迟,提高了磁盘的整体性能;另一方面,维持了磁盘的连续和顺序写模式,能够确保磁盘符合上述写延迟特性;应当说明的是,由于低延迟阶段为起始阶段,被中断后,并不影响会后续的高延迟阶段和中延迟阶段的分布规律,当磁盘的请求队列为空时,且预测下一个写请求的写延迟状态为低时,本实施例并不向磁盘写入填充数据,从而能够在维持磁盘的写延迟特性的情况下,尽量是正常的写请求为低延迟。
在一个可选的实施方式中,上述磁盘的可控缓冲写方法中,预测下一个写请求的写延迟状态,如图3所示,包括:
若磁盘当前的写延迟状态为低,且当前磁盘内部缓冲区的累积写入量ADW与当前写请求的大小(记为size)之和SUM<Wf,则预测下一个写请求的写延迟状态为低;若磁盘当前的写延迟状态为低,且SUM≥Wf,则预测下一个写请求的写延迟状态为高;其中,SUM=ADW+size;
若磁盘当前的写延迟状态为中,且SUM<Wm,则预测下一个写请求的写延迟状态为中;若磁盘当前的写延迟状态为中,且SUM≥Wm,则预测下一个写请求的写延迟状态为高;
若磁盘当前的写延迟状态为高,则预测下一个写请求的写延迟状态为中;
其中,Wf为磁盘内部缓冲区在整个低延迟阶段的累积写入量,Wm为磁盘内部缓冲区在整个中延迟阶段的累积写入量。
如图2所示,在连续且顺序写模式下,磁盘的具体写延迟状态与磁盘内部缓冲区在当前阶段的累积写入量相关,其中,高延迟阶段的累计写入量很少;本实施例通过上述预测方法对下一个写请求的写延迟状态进行预测,能够充分利用磁盘的写延迟特性,准确预测下一个写请求的写延迟状态。
Wm和Wf由磁盘本身固有特性决定,一旦磁盘型号、大小确定,Wm和Wf就不会改变;为了准确预测磁盘中下一个写请求的写延迟状态,可通过预训练的方式获取Wm和Wf这两个参数;在一个可选的实施方式中,磁盘内部缓冲区在整个低延迟阶段的累积写入量Wf,以及磁盘内部缓冲区在整个中延迟阶段的累积写入量Wm的获取方式为:
在清空磁盘内部缓冲区后,持续向磁盘发送大小为s的顺序写请求,直至获取到三种稳定的写延迟,并记录每一种写延迟所对应的持续时间;
所获取到的三种写延迟从小到大所对应的写延迟状态依次为低、中和高;
根据低延迟Lf和低延迟阶段的持续时间Tf,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wf=Tf*s/Lf;根据中延迟Lm和中延迟阶段的持续时间Tm,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wm=Tm*s/Lm;
其中,s>0,s的具体大小可根据磁盘内部缓冲区的容量、磁盘的读写性能等确定,例如,可以设置为4KB;
通过上述预训练过程,能够准确获取到用于表征磁盘写延迟特性的参数,即低延迟Lf、磁盘内部缓冲区在整个低延迟阶段的累积写入量Wf和磁盘内部缓冲区在整个低延迟阶段的累积写入量Wm,根据这两个参数,可以确定磁盘写延迟状态的变迁条件,为准确预测下一个写请求的写延迟状态提供了保证。
为了避免影响正常的读请求,在一个可选的实施方式中,上述磁盘的空缓冲写方法,还可包括:
在向磁盘写入填充数据时,若有读请求达到,则立即停止写入填充数据,响应读请求。
为了减少底层文件系统的开销,在一个可选的实施方式中,上述磁盘的可控缓冲写方法中,用户数据和填充数据以日志模式写入磁盘的设备文件中,并且在访问日志文件时绕过文件系统;在不同的系统中,可采用相应的机制完成,例如,在linux系统中,可通过调用内核函数read()、write()等完成对磁盘的日志文件的访问操作,在调用这些内核函数时,设置DIRECT_IO访问日志文件,即可绕过文件系统。
为了提高磁盘的利用率,在一个可选的实施方式中,上述磁盘的可控缓冲写方法,还可包括:
当磁盘空闲时,或者日志文件的大小超过预设的阈值(例如,磁盘容量的70%)时,从日志文件中顺序并连续读取用户数据块后合并,并将合并后的用户数据重新写入磁盘的设备文件中,之后回收日志文件;
在磁盘空闲或日志文件较大时,对日志文件中的用户数据进行合并后重新写入磁盘的设备文件,之后回收日志文件,从而能够剔除无用的填充数据,提高磁盘的利用率。
本发明还提供了一种磁盘控制器,包括:写预测器、监测模块、写入模块、第一填充模块、第二填充模块以及更新模块;
写预测器,用于预测下一个写请求的写延迟状态;
监测模块,用于持续监测磁盘请求队列;
写入模块,用于在监测模块监测到磁盘请求队列中包含请求时,将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
第一填充模块,用于在监测模块监测到磁盘请求队列中不包含请求,且写预测模块预测下一个写请求的写延迟状态为高时,将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;
第二填充模块,用于在监测模块监测到磁盘请求队列中不包含请求,且写预测模块预测下一个写请求的写延迟状态为中时,维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
更新模块,用于在每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0;
本发明实施例中,各模块的具体实施方式可参考上述磁盘的可控缓冲写方法实施例中的描述,在此将不做复述。
异构存储节点中具体包括一组磁盘和一组高速硬盘,每个磁盘对应一个请求队列和一个写缓冲区,每个高速硬盘对应一个请求队列和一个写缓冲区;高速硬盘的写缓冲区,是内存中用于临时存放向固态硬盘发送的写请求所包含的待写数据的缓冲区,磁盘的写缓冲区,是内存中用于临时存放向磁盘发送的写请求所包含的待写数据的缓冲区;异构存储节点在其内存中还会维护一个元数据表,用来记录写请求到达时间戳,请求数据所属文件的文件名、请求数据长度、请求数据在所属文件的偏移量以及写入设备的物理地址记录,需要定期持久化到非易失性存储设备上。为便于描述,不失一般性地,以下实施例均以磁盘和固态硬盘组成的异构存储节点为例,对本发明所提供的混合IO调度方法进行进一步的解释。
为了提高异构存储节点的整体性能,同时提高异构存储节点中高速硬盘的使用寿命和磁盘的利用率,本发明提供了一种基于上述磁盘的可控缓冲写方法的混合IO调度方法,该混合IO调度方法适用于异构存储节点;本发明所提供的混合IO调度方法如图4所示,包括:
(S1)在异构存储节点接收到IO请求后,识别其类型,若为读IO请求,则将所接收到的读IO请求放入到目的设备的请求队列后,转入步骤(S4);若为写IO请求,则转入步骤(S2);
(S2)若当前没有磁盘处于可用状态,则将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);若当前有磁盘处于可用状态,则获取当前高速硬盘的请求队列长度l(t),并预测磁盘中下一个写请求的写延迟状态,之后转入步骤(S3);
(S3)若l(t)>L,且磁盘中下一个写请求的写延迟状态为低或中,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);若l(t)≤L,且磁盘中下一个写请求的写延迟状态为低,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);在其他情况下,将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);
(S4)针对当前IO请求的调度结束;
其中,高速硬盘与磁盘相比,容量较小且速度较快;目的设备为异构存储节点中存储有所读取数据的磁盘或高速硬盘;L为预设的队列长度阈值,若高速硬盘的请求队列长度大于L,则同一个写IO请求在高速硬盘中的写延迟高于其在磁盘中的写延迟;
队列长度阈值L可根据实际的固态硬盘性能测量预先确定的,具体地,测量固态硬盘在不同队列长度下的写延迟,如果请求在固态硬盘队列长度为l的延迟大于其在磁盘的延迟,则把阈值L设为l。
本实施例在异构存储节点中存在可用磁盘时,根据当前高速硬盘的请求队列长度l(t)以及磁盘中下一个写请求的写延迟状态,将写IO请求重定向至磁盘,相比于传统的先将数据写入高速硬盘,再从高速硬盘迁移至磁盘中的写入方法,能够提高异构存储节点的整体性能,并减少对高速硬盘的写入量,从而提高高速硬盘的使用寿命和磁盘的利用率。具体地,在当前高速硬盘的请求队列长较长(l(t)>L,t表示当前时刻),且下一个写请求的写延迟状态为中或低时,优先将写IO请求重定向至磁盘,由此能够有效降低写延迟,同时减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率;在当前高速硬盘的请求队列长较短(l(t)≤L),且下一个写请求的写延迟状态为中或低时,将写IO请求重定向至磁盘,能够在不提高写延迟的情况下,减少对高速硬盘的写入量,提高高速硬盘的使用寿命以及磁盘的利用率。
为了进一步提高异构存储节点的整体性能,在一个可选的实施方式中,上述混合IO调度方法,还可包括:
在进行IO调度的同时,分别轮询磁盘和高速硬盘的请求队列,并从队列中获取请求;
对于从高速硬盘中获取到的请求,若为写请求,则按照写入数据长度从高速硬盘的写缓冲区中取出数据写入高速硬盘,并在写入完成后,更新高速硬盘的元数据;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据;
对于从磁盘中获取到的请求,若为写请求,则采用上述磁盘的可控缓冲写方法将写请求所对应的数据写入磁盘;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据;
在实际应用中,可针对每一个请求队列设置一个后台的处理线程,对请求队列的轮询可由相应的处理线程在后台完成。
本实施例在处理磁盘写请求队列中的写请求时,使用上述磁盘的可控缓冲写方法,能够维持磁盘的连续和顺序写模式,并避免处理正常写请求时出现高延迟,提高了异构存储节点中磁盘的整体性能,进一步提高了异构存储节点的整体性能。
为了提高异构存储节点的整体性能,同时提高异构存储节点中高速硬盘的使用寿命和磁盘的利用率,本发明还提供了一种适用于异构存储节点的混合IO调度器,该混合IO调度器适用于异构存储节点;本发明提供的混合IO调度器包括:处理器和计算机可读存储介质;
计算机可读存储介质用于存储可执行程序;
处理器用于读取计算机可读存储介质中存储的可执行程序,执行上述混合IO调度方法。
由其他高速设备,如相变存储器(PCM)、傲腾存储器(Intel Optane)等非易失存储器(NVM),与磁盘所组成地异构存储节点中,混合IO调度方法的具体实施方式与上述方法类似,依此类推即可,在此将不再一一列举。
总的来说,本发明提供的可控缓冲写方法可以主动激活磁盘的连续和顺序写模式,还可以使用填充数据主动避免磁盘的慢写,提升用户数据写性能;相比于传统方案为先将请求数据写入高速硬盘,再从高速硬盘将数据迁移至磁盘,导致高速硬盘磨损过快而磁盘利用率不高,本发明提供的混合IO调度方法,优先将请求发往磁盘,既减少了高速硬盘的磨损,又提高了磁盘的利用率。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种磁盘的可控缓冲写方法,其特征在于,包括:
在清空磁盘内部缓冲区后,持续监测磁盘请求队列并预测下一个写请求的写延迟状态;
若磁盘请求队列中包含请求,则将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
若磁盘请求队列中不包含请求,且下一个写请求的写延迟状态为高,则将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为中,则维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
若磁盘请求队列中不包含请求,且预测下一个写请求的写延迟状态为低,则维持磁盘状态为可用,并且不向磁盘写入填充数据;
每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0。
2.如权利要求1所述的磁盘的可控缓冲写方法,其特征在于,预测下一个写请求的写延迟状态,包括:
若磁盘当前的写延迟状态为低,且当前磁盘内部缓冲区的累积写入量ADW与当前写请求的大小之和SUM<Wf,则预测下一个写请求的写延迟状态为低;若磁盘当前的写延迟状态为低,且SUM≥Wf,则预测下一个写请求的写延迟状态为高;
若磁盘当前的写延迟状态为中,且SUM<Wm,则预测下一个写请求的写延迟状态为中;若磁盘当前的写延迟状态为中,且SUM≥Wm,则预测下一个写请求的写延迟状态为高;
若磁盘当前的写延迟状态为高,则预测下一个写请求的写延迟状态为中;
其中,Wf为磁盘内部缓冲区在整个低延迟阶段的累积写入量,Wm为磁盘内部缓冲区在整个中延迟阶段的累积写入量。
3.如权利要求2所述的磁盘的可控缓冲写方法,其特征在于,磁盘内部缓冲区在整个低延迟阶段的累积写入量Wf,以及磁盘内部缓冲区在整个中延迟阶段的累积写入量Wm的获取方式为:
在清空磁盘内部缓冲区后,持续向磁盘发送大小为s的写请求,直至获取到三种稳定的写延迟,并记录每一种写延迟所对应的持续时间;
所获取到的三种写延迟从小到大所对应的写延迟状态依次为低、中和高;
根据低延迟Lf和低延迟阶段的持续时间Tf,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wf=Tf*s/Lf;根据中延迟Lm和中延迟阶段的持续时间Tm,计算磁盘内部缓冲区在整个低延迟阶段的累积写入量为Wm=Tm*s/Lm;
其中,s>0。
4.如权利要求1-3任一项所述的磁盘的可控缓冲写方法,其特征在于,还包括:
在向磁盘写入填充数据时,若有读请求达到,则立即停止写入填充数据,响应读请求。
5.如权利要求1-3任一项所述的磁盘的可控缓冲写方法,其特征在于,用户数据和填充数据以日志模式写入磁盘的设备文件中,并且在访问日志文件时绕过文件系统。
6.如权利要求5所述的磁盘的可控缓冲写方法,其特征在于,还包括:
当磁盘空闲时,或者日志文件的大小超过预设的阈值时,从日志文件中顺序并连续读取用户数据块后合并,并将合并后的用户数据重新写入磁盘的设备文件中,之后回收日志文件。
7.一种磁盘控制器,其特征在于,包括:写预测器、监测模块、写入模块、第一填充模块、第二填充模块以及更新模块;
所述写预测器,用于预测下一个写请求的写延迟状态;
所述监测模块,用于持续监测磁盘请求队列;
所述写入模块,用于在所述监测模块监测到磁盘请求队列中包含请求时,将磁盘请求队列中的写请求所包含的数据串行写入磁盘;
所述第一填充模块,用于在所述监测模块监测到磁盘请求队列中不包含请求,且所述写预测模块预测下一个写请求的写延迟状态为高时,将磁盘状态设置为不可用,同时向磁盘写入大小为PS的高延迟填充数据块,直至下一个写请求的写延迟状态不为高,并在此时将磁盘内部缓冲区的累积写入量ADW重置为0,将磁盘状态重置为可用;
所述第二填充模块,用于在所述监测模块监测到磁盘请求队列中不包含请求,且所述写预测模块预测下一个写请求的写延迟状态为中时,维持磁盘状态为可用,同时向磁盘写入大小为PF的中延迟填充数据;
所述更新模块,用于在每次向磁盘写入数据之后,根据实际写入的数据量和写延迟,更新磁盘内部缓冲区的累积写入量ADW和当前的写延迟;
其中,低延迟状态、中延迟状态以及高延迟状态所对应的写延迟依次增大;PS>0,PF>0。
8.一种基于权利要求1-6任一项所述的磁盘的可控缓冲写方法的混合IO调度方法,所述混合IO调度方法适用于异构存储节点,所述异构存储节点包括一组磁盘和一组高速硬盘,每个磁盘对应一个请求队列和一个写缓冲区,每个高速硬盘对应一个请求队列和一个写缓冲区;其特征在于,包括:
(S1)在所述异构存储节点接收到IO请求后,识别其类型,若为读IO请求,则将所接收到的读IO请求放入到目的设备的请求队列后,转入步骤(S4);若为写IO请求,则转入步骤(S2);
(S2)若当前没有磁盘处于可用状态,则将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);若当前有磁盘处于可用状态,则获取当前高速硬盘的请求队列长度l(t),并预测磁盘中下一个写请求的写延迟状态,之后转入步骤(S3);
(S3)若l(t)>L,且磁盘中下一个写请求的写延迟状态为低或中,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);若l(t)≤L,且磁盘中下一个写请求的写延迟状态为低,则将所接收到的写IO请求放入磁盘的请求队列中,并将写请求所对应的数据放入磁盘的写缓冲区,之后转入步骤(S4);在其他情况下,将所接收到的写IO请求放入到高速硬盘的请求队列中,并将写请求所对应的数据放入高速硬盘的写缓冲区,之后转入步骤(S4);
(S4)针对当前IO请求的调度结束;
其中,高速硬盘与磁盘相比,容量较小且速度较快;所述目的设备为所述异构存储节点中存储有所读取数据的磁盘或高速硬盘;L为预设的队列长度阈值,当高速硬盘的请求队列长度大于L时,同一个写IO请求在高速硬盘中的写延迟高于其在磁盘中的写延迟。
9.如权利要求8所述的混合IO调度方法,其特征在于,还包括:
在进行IO调度的同时,分别轮询磁盘和高速硬盘的请求队列,并从队列中获取请求;
对于从高速硬盘中获取到的请求,若为写请求,则按照写入数据长度从高速硬盘的写缓冲区中取出数据写入高速硬盘,并在写入完成后,更新高速硬盘的元数据;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据;
对于从磁盘中获取到的请求,若为写请求,则采用权利要求1-6任一项所述的磁盘的可控缓冲写方法将写请求所对应的数据写入磁盘;若为读请求,则按照请求中包含的文件名和偏移量从目的设备中读取相应的数据。
10.一种适用于异构存储节点的混合IO调度器,所述混合IO调度器适用于异构存储节点,所述异构存储节点包括一组磁盘和一组高速硬盘,每个磁盘对应一个请求队列和一个写缓冲区,每个高速硬盘对应一个请求队列和一个写缓冲区;其特征在于,包括:处理器和计算机可读存储介质;
所述计算机可读存储介质用于存储可执行程序;
所述处理器用于读取所述计算机可读存储介质中存储的可执行程序,执行权利要求8-9任一项所述的混合IO调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105888.0A CN111459402B (zh) | 2020-02-20 | 2020-02-20 | 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105888.0A CN111459402B (zh) | 2020-02-20 | 2020-02-20 | 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111459402A true CN111459402A (zh) | 2020-07-28 |
CN111459402B CN111459402B (zh) | 2021-07-27 |
Family
ID=71685750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010105888.0A Active CN111459402B (zh) | 2020-02-20 | 2020-02-20 | 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111459402B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051196A (zh) * | 2021-03-26 | 2021-06-29 | 武汉理工大学 | 一种基于固态硬盘层差异特征的请求调度算法 |
CN114327280A (zh) * | 2021-12-29 | 2022-04-12 | 以萨技术股份有限公司 | 一种基于冷热分离存储的消息存储方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1739154A (zh) * | 2003-01-17 | 2006-02-22 | 皇家飞利浦电子股份有限公司 | 用于磁盘存取的节能调度 |
CN105264609A (zh) * | 2013-12-03 | 2016-01-20 | 华为技术有限公司 | 一种数据存储控制方法,及装置 |
CN109388333A (zh) * | 2017-08-08 | 2019-02-26 | 北京忆恒创源科技有限公司 | 降低读命令处理延迟的方法与装置 |
CN110347339A (zh) * | 2019-06-28 | 2019-10-18 | 华中科技大学 | 一种针对机械硬盘的可控连续写方法、调度器及存储系统 |
-
2020
- 2020-02-20 CN CN202010105888.0A patent/CN111459402B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1739154A (zh) * | 2003-01-17 | 2006-02-22 | 皇家飞利浦电子股份有限公司 | 用于磁盘存取的节能调度 |
CN105264609A (zh) * | 2013-12-03 | 2016-01-20 | 华为技术有限公司 | 一种数据存储控制方法,及装置 |
CN109388333A (zh) * | 2017-08-08 | 2019-02-26 | 北京忆恒创源科技有限公司 | 降低读命令处理延迟的方法与装置 |
CN110347339A (zh) * | 2019-06-28 | 2019-10-18 | 华中科技大学 | 一种针对机械硬盘的可控连续写方法、调度器及存储系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051196A (zh) * | 2021-03-26 | 2021-06-29 | 武汉理工大学 | 一种基于固态硬盘层差异特征的请求调度算法 |
CN113051196B (zh) * | 2021-03-26 | 2021-11-02 | 武汉理工大学 | 一种基于固态硬盘层差异特征的请求调度算法 |
CN114327280A (zh) * | 2021-12-29 | 2022-04-12 | 以萨技术股份有限公司 | 一种基于冷热分离存储的消息存储方法及系统 |
CN114327280B (zh) * | 2021-12-29 | 2024-02-09 | 以萨技术股份有限公司 | 一种基于冷热分离存储的消息存储方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111459402B (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10599637B2 (en) | Granular buffering of metadata changes for journaling file systems | |
US10922287B2 (en) | Intelligent layout of composite data structures in tiered storage | |
US9513817B2 (en) | Free space collection in log structured storage systems | |
US9244617B2 (en) | Scheduling requests in a solid state memory device | |
US8762995B2 (en) | Computing system, method of controlling the same, and system management unit which plan a data migration according to a computation job execution schedule | |
US20110066830A1 (en) | Cache prefill on thread migration | |
CN109614377A (zh) | 分布式文件系统的文件删除方法、装置、设备及存储介质 | |
US10503608B2 (en) | Efficient management of reference blocks used in data deduplication | |
CN111459402B (zh) | 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 | |
CN105630413B (zh) | 一种磁盘数据的同步回写方法 | |
US20170123975A1 (en) | Centralized distributed systems and methods for managing operations | |
CN113672166A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US9465745B2 (en) | Managing access commands by multiple level caching | |
CN117573043B (zh) | 分布式存储数据的传输方法、装置、系统、设备和介质 | |
US20180307432A1 (en) | Managing Data in a Storage System | |
WO2012023953A1 (en) | Improving the i/o efficiency of persisent caches in a storage system | |
US20210263668A1 (en) | Information processing device and computer-readable recording medium recording storage control program | |
KR101105127B1 (ko) | 에스에스디 확장버퍼를 사용한 버퍼 캐쉬 관리 방법 및 에스에스디를 확장버퍼로서 사용하는 장치 | |
CN110413689B (zh) | 一种内存数据库的多节点数据同步方法与装置 | |
KR20190112020A (ko) | 데이터 처리 | |
CN115268763A (zh) | 一种缓存管理方法、装置及设备 | |
US9116814B1 (en) | Use of cache to reduce memory bandwidth pressure with processing pipeline | |
CN113093994A (zh) | 一种数据处理方法及装置 | |
CN110347339A (zh) | 一种针对机械硬盘的可控连续写方法、调度器及存储系统 | |
US11386007B1 (en) | Methods and systems for fast allocation of fragmented caches |
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 |