CN108762685A - Io挂死识别方法、装置、计算机装置及存储介质 - Google Patents

Io挂死识别方法、装置、计算机装置及存储介质 Download PDF

Info

Publication number
CN108762685A
CN108762685A CN201810566093.2A CN201810566093A CN108762685A CN 108762685 A CN108762685 A CN 108762685A CN 201810566093 A CN201810566093 A CN 201810566093A CN 108762685 A CN108762685 A CN 108762685A
Authority
CN
China
Prior art keywords
target
time
disk
processing
distributed
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
Application number
CN201810566093.2A
Other languages
English (en)
Other versions
CN108762685B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201810566093.2A priority Critical patent/CN108762685B/zh
Priority to PCT/CN2018/099906 priority patent/WO2019232923A1/zh
Publication of CN108762685A publication Critical patent/CN108762685A/zh
Application granted granted Critical
Publication of CN108762685B publication Critical patent/CN108762685B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0653Monitoring storage devices or 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

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)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种IO挂死识别方法,包括:获取目标IO;识别目标IO与目标IO的前一个IO是否为连续的IO;根据识别结果、目标IO的大小值以及处理目标IO的磁盘的类型计算所述目标IO的目标处理时间;根据目标IO的目标处理时间确定目标IO的超时时间;若目标IO的实际处理时间达到所述目标IO的超时时间,识别目标IO为挂死状态。本发明还公开了一种IO挂死识别装置、计算机装置和计算机可读存储介质。本发明可以识别是否出现IO挂死状况,从而减少IO挂死时的等待时间。

Description

IO挂死识别方法、装置、计算机装置及存储介质
技术领域
本发明涉及存储技术领域,尤其涉及一种IO挂死识别方法、装置、计算机装置及存储介质。
背景技术
计算机的读写操作也称为IO操作,IO即input/output。具体的,一个IO操作可以是读IO操作(例如,将数据从磁盘读取到内存)也可以是写IO操作(例如,将数据写入磁盘中)。
通常,在计算机中会进行连续的读IO操作或者是连续的写IO操作,或者是将读IO操作读取的数据返回给目标参数。此时,会在一个IO操作执行再完之后会执行下一个IO操作,但若其中任意一个IO操作的处理过程中发生了IO挂死,而又无法识别,则可能会出现持续等待该挂死的IO操作,无法进行后续的IO操作,从而降低整体IO操作的效率。然而,若能识别IO操作是否出现了挂死,则可以有利于针对IO挂死操作进行处理,减少盲目等待时间。
发明内容
鉴于以上内容,有必要提供一种IO挂死识别方法、装置、计算机装置及存储介质,识别是否出现IO挂死状况,从而减少IO挂死时的等待时间。
本发明提供一种IO挂死识别方法,所述方法包括:
获取目标IO;
识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;
根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;
根据所述目标IO的目标处理时间确定所述目标IO的超时时间;
若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
在本发明优选实施中,所述根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间,包括:
若所述目标IO与所述目标IO的前一个IO不为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的寻道时间、所述磁盘的转速以及所述磁盘的传输速率;
根据所述磁盘的转速计算所述磁盘的旋转延迟时间,以及根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
计算所述寻道时间、所述旋转延迟时间以及所述数据传输时间的和,得到所述目标IO的目标处理时间。
在本发明优选实施例中,所述根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间,包括:
若所述目标IO与所述目标IO的前一个IO为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的传输速率;
根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
确定所述目标IO的目标处理时间等于传输所述目标IO的数据传输时间。
在本发明优选实施中,所述根据所述目标IO的目标处理时间确定所述目标IO的超时时间包括:
确定所述目标IO的超时时间为所述目标IO的目标处理时间的预设倍数。
在本发明优选实施中,所述方法还包括:
若所述目标IO为挂死状态并且处理所述目标IO的磁盘处于分布式存储系统中,将所述分布式存储系统中处理所述目标IO的分布式节点的状态更新为停止处理所述目标IO的状态,以及将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理。
在本发明优选实施例中,所述将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理包括:
获取所述分布式存储系统中其他分布式节点的状态信息;
根据所述分布式存储系统中其他分布式节点的状态信息确定处理节点;
将所述目标IO迁移至所述处理节点进行处理。
在本发明优选实施例中,所述方法还包括:
若所述目标IO为挂死状态,发送IO挂死提醒消息。
本发明还提供一种IO挂死识别装置,所述装置包括:
获取模块,用于获取目标IO;
识别模块,用于识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;
计算模块,用于根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;
确定模块,用于根据所述目标IO的目标处理时间确定所述目标IO的超时时间;
所述识别模块,还用于若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
在本发明优选实施例中,所述计算模块具体用于:
若所述目标IO与所述目标IO的前一个IO不为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的寻道时间、所述磁盘的转速以及所述磁盘的传输速率;
根据所述磁盘的转速计算所述磁盘的旋转延迟时间,以及根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
计算所述寻道时间、所述旋转延迟时间以及所述数据传输时间的和,得到所述目标IO的目标处理时间。
在本发明优选实施例中,所述计算模块具体用于:
若所述目标IO与所述目标IO的前一个IO为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的传输速率;
根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
确定所述目标IO的目标处理时间等于传输所述目标IO的数据传输时间。
在本发明优选实施例中,所述确定模块具体用于:
确定所述目标IO的超时时间为所述目标IO的目标处理时间的预设倍数。
在本发明优选实施例中,所述装置还包括:
迁移模块,用于若所述目标IO为挂死状态并且处理所述目标IO的磁盘处于分布式存储系统中,将所述分布式存储系统中处理所述目标IO的分布式节点的状态更新为停止处理所述目标IO的状态,以及将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理。
在本发明优选实施例中,所述迁移模块将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理包括:
获取所述分布式存储系统中其他分布式节点的状态信息;
根据所述分布式存储系统中其他分布式节点的状态信息确定处理节点;
将所述目标IO迁移至所述处理节点进行处理。
在本发明优选实施例中,所述装置还包括:
提醒模块,用于若所述目标IO为挂死状态,发送IO挂死提醒消息。
本发明还提供一种计算机装置,所述计算机装置包括存储器及处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令以实现任意实施例中所述的IO挂死识别方法。
本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现任意实施例中所述的IO挂死识别方法。
由以上技术方案看出,本发明通过获取目标IO;识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;根据所述目标IO的目标处理时间确定所述目标IO的超时时间;若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。针对目标IO计算超时时间,当目标IO的实际处理时间过长,达到超时时间时,表明IO的实际处理时间已经过长,此时识别IO为挂死状态,减少IO挂死时的盲目等待的时间。
同时,由于目标IO的目标处理时间是基于目标IO的大小值来计算的,且目标IO的超时时间是目标IO的目标处理时间得到的,所以目标IO的超时时间实质是基于目标IO的大小值来确定的,针对不同的IO可以通过不同的超时时间进行判断,并非根据同一个超时时间进行判断,从而能够更加精确的针对每个IO是否挂死进行识别。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实施例提供的一种IO挂死识别方法的流程图;
图2是本发明实施例提供的IO挂死识别装置的功能模块图;
图3是本发明实现IO挂死识别方法的较佳实施例的计算机装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,图1为本发明实施例提供的一种IO挂死识别方法的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S10,获取目标IO。
本发明所述的方法可用于识别IO是否挂死,通常,IO挂死也可以称为IO hang。并且,本发明所述的IO是指IO操作,具体的,一个IO操作可以是写IO操作或读IO操作。
上述目标IO是要识别是否会产生挂死的IO操作。
上述获取目标IO可以是获取目标IO操作指令所指示的目标IO操作。通常,在IO操作指令中,可以包括该指令所指示的操作数据及操作地址。因此,获取目标IO时,可以获取到目标IO的操作数据及操作地址。
同时,本发明所述的IO操作可以是从磁盘上读取数据,或者是将数据写入至磁盘中。在本实施例中,处理目标IO的磁盘是指目标IO要读取数据的磁盘,或者是目标IO要写入数据的磁盘。
S20:识别所述目标IO与所述目标IO的前一个IO是否为连续的IO。
由于在接收到IO操作指令时,该指令中会包括该指令所指示的操作数据以及操作地址。因此,可以通过目标IO的起始操作地址与其前一个IO的结束操作地址是否为连续的地址,来判断目标IO与目标IO的前一个IO是否为连续的IO。
其中,目标IO的起始操作地址,是该目标IO操作所要读或写数据的起始地址;目标IO的前一个IO的结束操作地址,是该目标IO操作的前一个IO操作所读或写数据的结束地址。
例如,当目标IO的前一个IO的起始操作地址为2,数据长度为5,则目标IO的前一个IO的结束操作地址为6,若目标IO的起始操作地址为7,则表明该目标IO的起始操作地址与目标IO的前一个IO的结束操作地址为连续的地址。
S30:根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间。
上述目标IO的大小值是指该目标IO操作所操作的数据大小。例如,目标IO操作所操作的数据大小为8k,则该目标IO的大小值为8k。
由于在接收到IO操作指令时,该指令中会包括该指令所指示的操作数据以及操作地址。因此,可以从IO操作指令中获取操作数据,并根据该操作数据获取该IO操作的大小值。
则目标IO的大小值可以从发送目标IO操作的指令中获取目标IO所操作的数据,进而获取该数据的大小,即得到目标IO的大小值。
通常,磁盘的类型包括SATA、IDE、SAS等,不同类型的磁盘有不同的处理性能,即不同磁盘其性能参数的值可能不同。因此,不同类型的磁盘处理目标IO的时间可能不同。
可选的,上述根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间可包括:
(1)若所述目标IO与所述目标IO的前一个IO不为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的寻道时间、所述磁盘的转速以及所述磁盘的传输速率。
其中,磁盘的寻道时间、磁盘的转速以及磁盘的传输速率属于磁盘的性能参数的一部分,其具体值因磁盘而异。
不同类型的磁盘可能有不同的寻道时间、不同的转速以及不同的传输速率。例如,A磁盘的寻道时间为5ms,A磁盘的转速(rotational speed)为15K RPM,A磁盘的传输速率(transfer rate)为40MB/s;B磁盘的寻道时间为8ms,B磁盘的转速(rotational speed)为5400RPM,B磁盘的传输速率(transfer rate)为40MB/s。
具体的,上述磁盘的寻道时间也可以称为寻址时间,寻道时间是指磁头从当前位置移动到要读/写的数据所在磁道所需要的时间。由于对于不同的数据大小,磁盘的寻道时间相差不大,因此本发明中所述的磁盘的寻道时间为磁盘的平均寻道时间。
上述磁盘的转速是磁盘内电机主轴的旋转速度,也就是磁盘盘片在一分钟内所能完成的最大转数。
上述磁盘的传输速率是磁盘内部的数据传输率。
(2)根据所述磁盘的转速计算所述磁盘的旋转延迟时间,以及根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间。
其中,磁盘的旋转延迟时间是指:通过磁盘盘片旋转将目标IO所要读/写的数据从所在扇区移至读写磁头下方所需要的时间,旋转延迟取决于磁盘转速。具体的,磁盘的旋转延时时间为60s/rotational speed/2,即磁盘的旋转延时时间为:60s/磁盘的转速/2。
由于对于不同的数据大小,磁盘的旋转延时时间相差不大,因此本发明中所述的磁盘的旋转延时时间为磁盘的平均旋转延时时间。
上述磁盘传输目标IO的数据传输时间是指:在磁盘中,完成传输目标IO所要读/写的数据所需要的时间,并且,磁盘传输目标IO的数据传输时间与磁盘的传输速率和目标IO的大小值(IO chunk size)有关。具体的,磁盘传输目标IO的数据传输时间为:目标IO的大小值/磁盘的传输速率。
(3)计算所述寻道时间、所述旋转延迟时间以及所述数据传输时间的和,得到所述目标IO的目标处理时间。
由于一个完整的IO操作需要先将磁头移动到要操作的数据块所在的磁道正上方,再等待磁盘盘片旋转到数据块所在的扇区落在读写磁头正上方之后才开始读写数据,然后随着盘片的旋转,磁头不断的读/写相应的数据,直至将数据读/写完毕。
因此,在本实施例中,目标IO的目标处理时间为寻道时间、旋转延迟时间及磁盘传输目标IO的数据传输时间之和,即,目标IO的目标处理时间T=寻道时间T1+旋转延迟时间T2+磁盘传输目标IO的数据传输时间T3。
可选的,根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间还可包括:
(1)若所述目标IO与所述目标IO的前一个IO为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的传输速率;
(2)根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
(3)确定所述目标IO的目标处理时间等于传输所述目标IO的数据传输时间。
在本实施例中,当目标IO与前一IO为连续的写入地址时,并不需要再次寻址,以及不存在旋转延迟,因此,可以在计算目标IO的目标处理时间时忽略寻址时间以及旋转延迟时间,令目标IO的目标处理时间等于传输所述目标IO的数据传输时间。此时,得到的目标IO的目标处理时间更精确。
S40,根据所述目标IO的目标处理时间确定所述目标IO的超时时间。
由于目标IO的目标处理时间为理论上的理想值,而在实际应用过程中,处理目标IO操作的时间可能低于或高于该目标处理时间,因此,可以根据目标IO的目标处理时间确定目标IO的超时时间。
例如,确定目标IO的超时时间为T+z,其中,z为自然数,z的大小可以根据需要确定。则若目标IO的超时时间为50ms,z的值为20ms,所确定的目标IO的超时时间为70ms。
可选的,在本发明另一实施例中,所述根据所述目标IO的目标处理时间确定所述目标IO的超时时间包括:
确定所述目标IO的超时时间为所述目标IO的目标处理时间的预设倍数。
例如,确定目标IO的超时时间为k*T,其中,k为自然数,k的大小可以根据历史经验值确定。则若目标IO的目标处理时间为20ms,k的值为2,所确定的目标IO的超时时间为40ms。
可选的,在本发明另一实施例中,所述预设倍数的大小值根据所述目标IO的大小值确定。
由于目标IO的大小不同,目标处理时间与超时时间的倍数关系可能是不同的。例如,当目标IO较大时,实际其所需要的响应时间可能越大,因此其超时时间需要设置的更大。
因此,在本实施例中,根据目标IO的大小值确定预设倍数的大小值更符合实际情况,通过本实施例得到的超时时间也更准确。
并且,在其他实施例中,当目标IO的大小小于预设值时,或者目标IO的大小大于预设值时,k的值可以为不相同的数值。
例如,若目标IO的大小为8k,k的值为1.5,当目标I的大小为1M时,k的值为3。
S50,若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
在具体实施时,可以通过定时器记录目标IO的实际处理时间,当定时器记录的实际处理时间达到超时时间时,可以识别目标IO处于挂死状态。
可以理解的,若处理目标IO的时间没有达到目标IO的超时时间,可以识别目标IO不为挂死状态,继续等待目标IO的执行。
在本发明中,通过根据目标IO的大小计算得到目标IO的超时时间,使得在判断IO是否超时时更具有针对性和高准确性,避免对IO是否超时产生误判断。
同时,通过本发明所述的IO挂死识别方法计算得到的小IO的超时时间更短,大IO的超时时间更长。所以,针对小IO的场景,本发明可以更加快速的识别到IO的挂死,进而进行处理;针对大IO的场景,本发明可以给予更长的等待时间,降低挂死的错误识别率,提高磁盘应用时的可靠性。
可选的,在本发明另一实施例中,本发明所述的IO挂死识别方法还包括:
若所述目标IO为挂死状态,发送IO挂死提醒消息。
其中,可以在图形用户界面显示目标IO为挂死状态的提醒消息,该提醒消息可以包括目标IO的大小以及已处理时间。
在本实施例中,通过发送IO挂死提醒消息可以使相关人员及时的了解到IO挂死这一事件的发生,进而针对性的进行处理,减少IO挂死时的等待时间。
可选的,在本发明另一实施例中,本发明所述的IO挂死识别方法还包括:
若所述目标IO为挂死状态并且处理所述目标IO的磁盘处于分布式存储系统中,将所述分布式存储系统中处理所述目标IO的分布式节点的状态更新为停止处理所述目标IO的状态,以及将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理。
上述分布式存储系统是一种将数据分散的存储在多台设备(例如,多台存储服务器)上的计算机系统。上述分布式节点是指分布式存储系统中处理存储操作的单元。
通常,分布式存储系统中分布式节点的状态包含down状态和up状态。因此,在本实施例中,将分布式存储系统中处理目标IO的分布式节点的状态更新为停止处理目标IO的状态具体可以是:将处理目标IO的分布式节点的状态更新为down,则该分布式节点不再处理该目标IO。
同时,将目标IO迁移至分布式存储系统的其他分布式节点处理,可以使得该目标IO及时的在其他分布式节点上被执行。
在本实施例中,在遇到IO挂死状况时,通过及时的将IO迁移至分布式存储系统的其他分布式节点进行处理,可以保证IO的处理效率,进而提高分布式存储系统的稳定性和可靠性。
其中,所述将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理可包括:
获取所述分布式存储系统中其他分布式节点的状态信息;
根据所述分布式存储系统中其他分布式节点的状态信息确定处理节点;
将所述目标IO迁移至所述处理节点进行处理。
其中,上述其他分布式节点是分布式存储系统之中除了当前处理目标IO以外的分布式节点。
上述分布式存储系统中其他分布式节点的状态信息可以是分布式存储系统中其他分布式节点的运行状态信息。具体的,分布式节点的运行状态信息可以为up或者是down。
上述根据分布式存储系统中其他分布式节点的状态信息确定处理节点可以包括:确定分布式存储系统中状态为up的分布式节点为处理节点。
例如,若分布式存储系统中M分布式节点的状态为up,N分布式节点的状态为up,P分布式节点的状态为down,则确定M分布式节点和N分布式节点之中的任意一个分布式节点为处理节点,然后将目标IO迁移至该处理节点进行处理。
本发明提供的IO挂死识别方法获取目标IO以及处理所述目标IO的磁盘的类型;识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;根据识别结果、所述目标IO的大小值以及所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;根据所述目标IO的目标处理时间确定所述目标IO的超时时间;若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。针对目标IO计算超时时间,当目标IO的实际处理时间过长,达到超时时间时,表明IO的实际处理时间已经过长,此时识别IO为挂死状态,减少IO挂死时的盲目等待的时间。
同时,由于目标IO的目标处理时间是基于目标IO的大小值来计算的,且目标IO的超时时间是目标IO的目标处理时间得到的,所以目标IO的超时时间实质是基于目标IO的大小值来确定的,针对不同的IO可以通过不同的超时时间进行判断,并非根据同一个超时时间进行判断,从而能够更加精确的针对每个IO是否挂死进行识别。
如图2所示,图2为本发明实施例提供的IO挂死识别装置的功能模块图。所述IO挂死识别装置包括获取模块210、识别模块220、计算模块230和确定模块240。本发明所称的模块是指一种能够被计算机装置的处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在计算机装置的存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
获取模块210,用于获取目标IO。
本发明所述的装置可用于识别IO是否挂死,通常,IO挂死也可以称为IO hang。并且,本发明所述的IO是指IO操作,具体的,一个IO操作可以是写IO操作或读IO操作。
上述目标IO是要识别是否会产生挂死的IO操作。
上述获取目标IO可以是获取目标IO操作指令所指示的目标IO操作。通常,在IO操作指令中,可以包括该指令所指示的操作数据及操作地址。因此,获取目标IO时,可以获取到目标IO的操作数据及操作地址。
同时,本发明所述的IO操作可以是从磁盘上读取数据,或者是将数据写入至磁盘中。在本实施例中,处理目标IO的磁盘是指目标IO要读取数据的磁盘,或者是目标IO要写入数据的磁盘。
识别模块220,用于识别所述目标IO与所述目标IO的前一个IO是否为连续的IO。
由于在接收到IO操作指令时,该指令中会包括该指令所指示的操作数据以及操作地址。因此,可以通过目标IO的起始操作地址与其前一个IO的结束操作地址是否为连续的地址,来判断目标IO与目标IO的前一个IO是否为连续的IO。
其中,目标IO的起始操作地址,是该目标IO操作所要读或写数据的起始地址;目标IO的前一个IO的结束操作地址,是该目标IO操作的前一个IO操作所读或写数据的结束地址。
例如,当目标IO的前一个IO的起始操作地址为2,数据长度为5,则目标IO的前一个IO的结束操作地址为6,若目标IO的起始操作地址为7,则表明该目标IO的起始操作地址与目标IO的前一个IO的结束操作地址为连续的地址。
计算模块230,用于根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间。
上述目标IO的大小值是指该目标IO操作所操作的数据大小。例如,目标IO操作所操作的数据大小为8k,则该目标IO的大小值为8k。
由于在接收到IO操作指令时,该指令中会包括该指令所指示的操作数据以及操作地址。因此,可以从IO操作指令中获取操作数据,并根据该操作数据获取该IO操作的大小值。
则目标IO的大小值可以从发送目标IO操作的指令中获取目标IO所操作的数据,进而获取该数据的大小,即得到目标IO的大小值。
通常,磁盘的类型包括SATA、IDE、SAS等,不同类型的磁盘有不同的处理性能,即不同磁盘其性能参数的值可能不同。因此,不同类型的磁盘处理目标IO的时间可能不同。
可选的,计算模块230可具体用于:
(1)若所述目标IO与所述目标IO的前一个IO不为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的寻道时间、所述磁盘的转速以及所述磁盘的传输速率。
其中,磁盘的寻道时间、磁盘的转速以及磁盘的传输速率属于磁盘的性能参数的一部分,其具体值因磁盘而异。
不同类型的磁盘可能有不同的寻道时间、不同的转速以及不同的传输速率。例如,A磁盘的寻道时间为5ms,A磁盘的转速(rotational speed)为15K RPM,A磁盘的传输速率(transfer rate)为40MB/s;B磁盘的寻道时间为8ms,B磁盘的转速(rotational speed)为5400RPM,B磁盘的传输速率(transfer rate)为40MB/s。
具体的,上述磁盘的寻道时间也可以称为寻址时间,寻道时间是指磁头从当前位置移动到要读/写的数据所在磁道所需要的时间。由于对于不同的数据大小,磁盘的寻道时间相差不大,因此本发明中所述的磁盘的寻道时间为磁盘的平均寻道时间。
上述磁盘的转速是磁盘内电机主轴的旋转速度,也就是磁盘盘片在一分钟内所能完成的最大转数。
上述磁盘的传输速率是磁盘内部的数据传输率。
(2)根据所述磁盘的转速计算所述磁盘的旋转延迟时间,以及根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间。
其中,磁盘的旋转延迟时间是指:通过磁盘盘片旋转将目标IO所要读/写的数据从所在扇区移至读写磁头下方所需要的时间,旋转延迟取决于磁盘转速。具体的,磁盘的旋转延时时间为60s/rotational speed/2,即磁盘的旋转延时时间为:60s/磁盘的转速/2。
由于对于不同的数据大小,磁盘的旋转延时时间相差不大,因此本发明中所述的磁盘的旋转延时时间为磁盘的平均旋转延时时间。
上述磁盘传输目标IO的数据传输时间是指:在磁盘中,完成传输目标IO所要读/写的数据所需要的时间,并且,磁盘传输目标IO的数据传输时间与磁盘的传输速率和目标IO的大小值(IO chunk size)有关。具体的,磁盘传输目标IO的数据传输时间为:目标IO的大小值/磁盘的传输速率。
(3)计算所述寻道时间、所述旋转延迟时间以及所述数据传输时间的和,得到所述目标IO的目标处理时间。
由于一个完整的IO操作需要先将磁头移动到要操作的数据块所在的磁道正上方,再等待磁盘盘片旋转到数据块所在的扇区落在读写磁头正上方之后才开始读写数据,然后随着盘片的旋转,磁头不断的读/写相应的数据,直至将数据读/写完毕。
因此,在本实施例中,目标IO的目标处理时间为寻道时间、旋转延迟时间及磁盘传输目标IO的数据传输时间之和,即,目标IO的目标处理时间T=寻道时间T1+旋转延迟时间T2+磁盘传输目标IO的数据传输时间T3。
可选的,计算模块230还可具体用于:
(1)若所述目标IO与所述目标IO的前一个IO为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的传输速率;
(2)根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
(3)确定所述目标IO的目标处理时间等于传输所述目标IO的数据传输时间。
在本实施例中,当目标IO与前一IO为连续的写入地址时,并不需要再次寻址,以及不存在旋转延迟,因此,可以在计算目标IO的目标处理时间时忽略寻址时间以及旋转延迟时间,令目标IO的目标处理时间等于传输所述目标IO的数据传输时间。此时,得到的目标IO的目标处理时间更精确。
确定模块240,用于根据所述目标IO的目标处理时间确定所述目标IO的超时时间。
由于目标IO的目标处理时间为理论上的理想值,而在实际应用过程中,处理目标IO操作的时间可能高于该目标处理时间,因此,可以根据目标IO的目标处理时间确定目标IO的超时时间。
例如,确定目标IO的超时时间为T+z,其中,z为自然数,z的大小可以根据需要确定。则若目标IO的目标处理时间为50ms,z的值为20ms,所确定的目标IO的超时时间为70ms。
可选的,在本发明另一实施例中,所述确定模块具体用于:确定所述目标IO的超时时间为所述目标IO的目标处理时间的预设倍数。
例如,确定目标IO的超时时间为k*T,其中,k为自然数,k的大小可以根据历史经验值确定。则若目标IO的超时时间为20ms,k的值为2,所确定的目标IO的超时时间为40ms。
可选的,在本发明另一实施例中,所述预设倍数的大小值根据所述目标IO的大小值确定。
由于目标IO的大小不同,目标处理时间与超时时间的倍数关系可能是不同的。例如,当目标IO较大时,实际其所需要的响应时间可能越大,因此其超时时间需要设置的更大。
因此,在本实施例中,根据目标IO的大小值确定预设倍数的大小值更符合实际情况,通过本实施例得到的超时时间也更准确。
并且,在其他实施例中,当目标IO的大小小于预设值时,或者目标IO的大小大于预设值时,k的值可以为不相同的数值。
例如,若目标IO的大小为8k,k的值为1.5,当目标I的大小为1M时,k的值为3。
识别模块220,还用于若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
在具体实施时,可以通过定时器记录目标IO的实际处理时间,当定时器记录的实际处理时间达到超时时间时,可以识别目标IO处于挂死状态。
可以理解的,若处理目标IO的时间没有达到目标IO的超时时间,可以识别目标IO不为挂死状态,继续等待目标IO的执行。
在本发明中,通过根据目标IO的大小计算得到目标IO的超时时间,使得在判断IO是否超时时更具有针对性和高准确性,避免对IO是否超时产生误判断。
同时,通过本发明所述的IO挂死识别装置计算得到的小IO的超时时间更短,大IO的超时时间更长。所以,针对小IO的场景,本发明可以更加快速的识别到IO的挂死,进而进行处理;针对大IO的场景,本发明可以给予更长的等待时间,降低挂死的错误识别率,提高磁盘应用时的可靠性。
可选的,在本发明另一实施例中,本发明所述的IO挂死识别装置还包括:
提醒模块,用于若所述目标IO为挂死状态,发送IO挂死提醒消息。
其中,可以在图形用户界面显示目标IO为挂死状态的提醒消息,该提醒消息可以包括目标IO的大小以及已处理时间。
在本实施例中,通过发送IO挂死提醒消息可以使相关人员及时的了解到IO挂死这一事件的发生,进而针对性的进行处理,减少IO挂死时的等待时间。
可选的,在本发明另一实施例中,本发明所述的IO挂死识别装置还包括:
迁移模块,用于若所述目标IO为挂死状态并且处理所述目标IO的磁盘处于分布式存储系统中,将所述分布式存储系统中处理所述目标IO的分布式节点的状态更新为停止处理所述目标IO的状态,以及将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理。
上述分布式存储系统是一种将数据分散的存储在多台设备(例如,多台存储服务器)上的计算机系统。上述分布式节点是指分布式存储系统中处理存储操作的单元。
通常,分布式存储系统中分布式节点的状态包含down状态和up状态。因此,在本实施例中,将分布式存储系统中处理目标IO的分布式节点的状态更新为停止处理目标IO的状态具体可以是:将处理目标IO的分布式节点的状态更新为down,则该分布式节点不再处理该目标IO。
同时,将目标IO迁移至分布式存储系统的其他分布式节点处理,可以使得该目标IO及时的在其他分布式节点上被执行。
在本实施例中,在遇到IO挂死状况时,通过及时的将IO迁移至分布式存储系统的其他分布式节点进行处理,可以保证IO的处理效率,进而提高分布式存储系统的稳定性和可靠性。
其中,所述迁移模块将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理包括:
获取所述分布式存储系统中其他分布式节点的状态信息;
根据所述分布式存储系统中其他分布式节点的状态信息确定处理节点;
将所述目标IO迁移至所述处理节点进行处理。
其中,上述其他分布式节点是分布式存储系统之中除了当前处理目标IO以外的分布式节点。
上述分布式存储系统中其他分布式节点的状态信息可以是分布式存储系统中其他分布式节点的运行状态信息。具体的,分布式节点的运行状态信息可以为up或者是down。
上述根据分布式存储系统中其他分布式节点的状态信息确定处理节点可以包括:确定分布式存储系统中状态为up的分布式节点为处理节点。
例如,若分布式存储系统中M分布式节点的状态为up,N分布式节点的状态为up,P分布式节点的状态为down,则确定M分布式节点和N分布式节点之中的任意一个分布式节点为处理节点,然后将目标IO迁移至该处理节点进行处理。
本发明提供的IO挂死识别装置通过获取模块获取目标IO;识别模块识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;计算模块根据识别结果、所述目标IO的大小值以及所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;确定模块根据所述目标IO的目标处理时间确定所述目标IO的超时时间;若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别模块识别所述目标IO为挂死状态。针对目标IO计算超时时间,当目标IO的实际处理时间过长,达到超时时间时,表明IO的实际处理时间已经过长,此时识别IO为挂死状态,减少IO挂死时的盲目等待的时间。
同时,由于目标IO的目标处理时间是基于目标IO的大小值来计算的,且目标IO的超时时间是目标IO的目标处理时间得到的,所以目标IO的超时时间实质是基于目标IO的大小值来确定的,针对不同的IO可以通过不同的超时时间进行判断,并非根据同一个超时时间进行判断,从而能够更加精确的针对每个IO是否挂死进行识别。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。
如图3所示,图3是本发明实现IO挂死识别方法的较佳实施例的计算机装置的结构示意图。所述计算机装置包括至少一个发送装置31、至少一个存储器32、至少一个处理器33、至少一个接收装置34以及至少一个通信总线。其中,所述通信总线用于实现这些组件之间的连接通信。
所述计算机装置是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。所述计算机装置还可包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
所述计算机装置可以是,但不限于任何一种可与用户通过键盘、触摸板或声控设备等方式进行人机交互的电子产品,例如,平板电脑、智能手机、监控设备等终端。
所述计算机装置所处的网络包括,但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
其中,所述接收装置34和所述发送装置31可以是有线发送端口,也可以为无线设备,例如包括天线装置,用于与其他设备进行数据通信。
所述存储器32用于存储程序代码。所述存储器32可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-Access Memory,随机存取存储器)、FIFO(First InFirst Out,先进先出存储器)等。或者,所述存储器32也可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)、智能媒体卡(smart media card)、安全数字卡(securedigital card)、快闪存储器卡(flash card)等储存设备等等。
所述处理器33可以包括一个或者多个微处理器、数字处理器。所述处理器33可调用存储器32中存储的程序代码以执行相关的功能。例如,图3中所述的各个单元是存储在所述存储器32中的程序代码,并由所述处理器33所执行,以实现一种IO挂死识别方法。所述处理器33又称中央处理器(CPU,Central Processing Unit),是一块超大规模的集成电路,是运算核心(Core)和控制核心(Control Unit)。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种IO挂死识别方法,其特征在于,所述方法包括:
获取目标IO;
识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;
根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;
根据所述目标IO的目标处理时间确定所述目标IO的超时时间;
若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
2.如权利要求1所述的方法,其特征在于,所述根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间,包括:
若所述目标IO与所述目标IO的前一个IO不为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的寻道时间、所述磁盘的转速以及所述磁盘的传输速率;
根据所述磁盘的转速计算所述磁盘的旋转延迟时间,以及根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
计算所述寻道时间、所述旋转延迟时间以及所述数据传输时间的和,得到所述目标IO的目标处理时间。
3.如权利要求1所述的方法,其特征在于,所述根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间,包括:
若所述目标IO与所述目标IO的前一个IO为连续的IO,根据处理所述目标IO的磁盘的类型获取所述磁盘的传输速率;
根据所述目标IO的大小值和所述磁盘的传输速率计算所述磁盘传输所述目标IO的数据传输时间;
确定所述目标IO的目标处理时间等于传输所述目标IO的数据传输时间。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述根据所述目标IO的目标处理时间确定所述目标IO的超时时间包括:
确定所述目标IO的超时时间为所述目标IO的目标处理时间的预设倍数。
5.如权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
若所述目标IO为挂死状态并且处理所述目标IO的磁盘处于分布式存储系统中,将所述分布式存储系统中处理所述目标IO的分布式节点的状态更新为停止处理所述目标IO的状态,以及将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理。
6.如权利要求5所述的方法,其特征在于,所述将所述目标IO迁移至所述分布式存储系统的其他分布式节点进行处理包括:
获取所述分布式存储系统中其他分布式节点的状态信息;
根据所述分布式存储系统中其他分布式节点的状态信息确定处理节点;
将所述目标IO迁移至所述处理节点进行处理。
7.如权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
若所述目标IO为挂死状态,发送IO挂死提醒消息。
8.一种IO挂死识别装置,其特征在于,所述装置包括:
获取模块,用于获取目标IO;
识别模块,用于识别所述目标IO与所述目标IO的前一个IO是否为连续的IO;
计算模块,用于根据识别结果、所述目标IO的大小值以及处理所述目标IO的磁盘的类型计算所述目标IO的目标处理时间;
确定模块,用于根据所述目标IO的目标处理时间确定所述目标IO的超时时间;
所述识别模块,还用于若所述目标IO的实际处理时间达到所述目标IO的超时时间,识别所述目标IO为挂死状态。
9.一种计算机装置,其特征在于,所述计算机装置包括存储器及处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令以实现如权利要求1至7中任一项所述的IO挂死识别方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于:所述计算机指令被处理器执行时实现如权利要求1至7中任一项所述的IO挂死识别方法。
CN201810566093.2A 2018-06-04 2018-06-04 Io挂死识别方法、装置、计算机装置及存储介质 Active CN108762685B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810566093.2A CN108762685B (zh) 2018-06-04 2018-06-04 Io挂死识别方法、装置、计算机装置及存储介质
PCT/CN2018/099906 WO2019232923A1 (zh) 2018-06-04 2018-08-10 Io挂死识别方法、装置、计算机装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810566093.2A CN108762685B (zh) 2018-06-04 2018-06-04 Io挂死识别方法、装置、计算机装置及存储介质

Publications (2)

Publication Number Publication Date
CN108762685A true CN108762685A (zh) 2018-11-06
CN108762685B CN108762685B (zh) 2021-06-22

Family

ID=64002570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810566093.2A Active CN108762685B (zh) 2018-06-04 2018-06-04 Io挂死识别方法、装置、计算机装置及存储介质

Country Status (2)

Country Link
CN (1) CN108762685B (zh)
WO (1) WO2019232923A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727299A (zh) * 2010-02-08 2010-06-09 北京同有飞骥科技有限公司 连续数据存储中面向raid5的写操作优化设计方法
CN102169462A (zh) * 2011-04-27 2011-08-31 中国科学院光电技术研究所 基于NAND Flash的数据记录方法与记录控制器
CN103530253A (zh) * 2013-09-30 2014-01-22 华为技术有限公司 集群多全局缓冲池系统、中心节点、计算节点及管理方法
CN103577114A (zh) * 2012-07-31 2014-02-12 华为技术有限公司 磁盘重映射方法和装置
CN106406754A (zh) * 2016-08-31 2017-02-15 北京小米移动软件有限公司 数据迁移方法及装置
CN106933495A (zh) * 2015-12-30 2017-07-07 华为技术有限公司 一种数据读取方法、raid控制器及存储设备
CN107305473A (zh) * 2016-04-21 2017-10-31 华为技术有限公司 一种io请求的调度方法及装置
CN107589911A (zh) * 2017-09-05 2018-01-16 郑州云海信息技术有限公司 一种ssd缓存的io处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758149A (en) * 1995-03-17 1998-05-26 Unisys Corporation System for optimally processing a transaction and a query to the same database concurrently
CN105487987B (zh) * 2015-11-20 2018-09-11 深圳市迪菲特科技股份有限公司 一种处理并发顺序读io的方法及装置
CN108073446B (zh) * 2016-11-10 2020-11-17 华为技术有限公司 超时预判方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727299A (zh) * 2010-02-08 2010-06-09 北京同有飞骥科技有限公司 连续数据存储中面向raid5的写操作优化设计方法
CN102169462A (zh) * 2011-04-27 2011-08-31 中国科学院光电技术研究所 基于NAND Flash的数据记录方法与记录控制器
CN103577114A (zh) * 2012-07-31 2014-02-12 华为技术有限公司 磁盘重映射方法和装置
CN103530253A (zh) * 2013-09-30 2014-01-22 华为技术有限公司 集群多全局缓冲池系统、中心节点、计算节点及管理方法
CN106933495A (zh) * 2015-12-30 2017-07-07 华为技术有限公司 一种数据读取方法、raid控制器及存储设备
CN107305473A (zh) * 2016-04-21 2017-10-31 华为技术有限公司 一种io请求的调度方法及装置
CN106406754A (zh) * 2016-08-31 2017-02-15 北京小米移动软件有限公司 数据迁移方法及装置
CN107589911A (zh) * 2017-09-05 2018-01-16 郑州云海信息技术有限公司 一种ssd缓存的io处理方法及装置

Also Published As

Publication number Publication date
CN108762685B (zh) 2021-06-22
WO2019232923A1 (zh) 2019-12-12

Similar Documents

Publication Publication Date Title
CN104113585B (zh) 用于产生指示负载平衡状态的硬件级中断的方法和设备
US20180267728A1 (en) Provisioning volumes
JP6640242B2 (ja) ハイブリッドストレージシステム内のサービス品質を改善するためのシステム及び方法
EP2780799A1 (en) Throttle disk i/o using disk drive simulation model
CN107111452A (zh) 应用于计算机系统的数据迁移方法和装置、计算机系统
CN112130768A (zh) 磁盘阵列在线扩容方法、装置及计算机可读存储介质
US9331911B2 (en) Resizing resource allocation in a computing environment
US11914894B2 (en) Using scheduling tags in host compute commands to manage host compute task execution by a storage device in a storage system
CN108733308A (zh) 用于管理盘池的方法和设备
CN103631537B (zh) 一种虚拟磁盘的管理方法及装置
CN106716335A (zh) 映射信息的异步处理
CN103914398A (zh) 用以管理具有实体地址空间的存储器使用率的方法及装置
US10101917B1 (en) Evaluating and selecting data caching techniques
CN113687779B (zh) 数据迁移方法、装置、电子设备及可读存储介质
CN112181662B (zh) 任务调度方法、装置、电子设备及存储介质
CN107528871A (zh) 存储系统中的数据分析
JP2023505783A (ja) Gpuパケット集約システム
CN108762685A (zh) Io挂死识别方法、装置、计算机装置及存储介质
CN105264608A (zh) 存储数据的方法、内存控制器和中央处理器
CN103714023B (zh) 防止多主机环境中较慢主机i/o饥饿的方法与系统
CN109086002A (zh) 存储对象的空间管理方法、装置、计算机装置及存储介质
CN111966301B (zh) 分布式对象存储系统的迁移速度控制方法、装置及介质
CN112269723B (zh) 存储设备的性能分析方法、装置及可读存储介质
WO2015191023A1 (en) Method and apparatus of subsidiary volume management
JP7229888B2 (ja) リソースの利用効率の最適化を支援するシステム及び方法

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