CN110287158B - 监测分布式文件系统io时延的方法、装置及存储介质 - Google Patents
监测分布式文件系统io时延的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110287158B CN110287158B CN201910367648.5A CN201910367648A CN110287158B CN 110287158 B CN110287158 B CN 110287158B CN 201910367648 A CN201910367648 A CN 201910367648A CN 110287158 B CN110287158 B CN 110287158B
- Authority
- CN
- China
- Prior art keywords
- delay
- time
- delay value
- value
- time delay
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种监测分布式文件系统IO时延的方法、装置及存储介质,涉及云存储技术领域中的分布式文件系统,其中的方法包括以下步骤:S110、采集io的时延实时数据;S120、根据采集的io的时延实时数据,得到io时延和io大小之间的关系;S130、根据所确定的io时延和io大小之间的关系,获取io理论时延值;S140、计算io=4kB的平均时延值;将平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大。利用上述发明能够在保证时延统计精度的前提下减少数据量,为分析和监控当前系统的io提供有效的依据。
Description
技术领域
本发明涉及云存储技术领域中的分布式文件系统,更为具体地,涉及一种监测分布式文件系统IO(Input/Output)时延的方法、电子装置及存储介质。
背景技术
在这个信息爆炸的时代中,单纯通过硬盘来扩展计算机文件系统的存储容量的方式已无法满足,云存储的分布式文件系统的出现为解决存储问题提供了可能;为通过并行的访问提高数据io的性能(I/O输入/输出Input/Output),分布式文件系统将数据条带化的存放在各个数据服务器的不同磁盘中。但是,如果磁盘的业务压力过大,将导致分布式文件系统io性能的明显降低,通过io时延来判断磁盘的业务压力是常用的做法。在分布式文件系统中,io时延的大小是一个很重要的数据,它可以很直观的告诉运维人员和开发人员当前系统运行的情况,为系统分析性能提供数据依据。
但是,在实际应用中,存在以下问题:
首先,要想监控io的时延,就必须记录每个io所消耗的时间,但是实际的业务中,io大小总是不确定的,系统中每时每刻都在产生不同大小的io,要想把每个不同大小的io的时延都记录下来是不大现实的,因为这样记录的数据量会过于大,在实际生产中并不适用。
其次,现有的分布式文件系统(ceph)的io时延统计是通过笼统的累加io总时间除以io个数获得平均io时延,并不区分io的大小;比如一个大小为4kB的io时延和一个大小为4mB的io时延,用笼统的累加求平均的方法并不能很直观的体现当前系统的io时延情况,一个4 kB的io消耗了2ms, 4mB的io消耗量100ms,若使用现有技术的方法进行计算,平均时延为2+100/2=51ms,若以51ms来判断4kB及4MB的io时延,51ms对于4kB的io而言是极不合理的,而51ms对于4mB的io而言可能又是合理的。
综上所述,现有技术的获得平均io时延的方法不能为分析和监控当前系统的io时延提供有效的依据。所以,亟需一种方便的、精准的监测io时延的方法。
发明内容
鉴于上述问题,本发明的目的是提供一种监测分布式文件系统IO时延的方法、装置及存储介质。
本发明提供的监测分布式文件系统IO时延的方法,包括以下步骤:
S110、采集io的时延实时数据;
S120、根据采集的io的时延实时数据,确定io时延和io大小之间的关系;
S130、根据所确定的io时延和io大小之间的关系,获取io理论时延值;
S140、计算io=4kB的平均时延值;将平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大。
进一步,优选的方法为,所述步骤S120中的确定io时延和io大小之间的关系所采用的的公式为:T = kx + b ,其中T是io时延,x是io大小,k是线性系数,b是常量;且,根据系数k的不同,将io大小划分为(0, 64kB), [64kB, 256kB), [256kB,∞)三个范围段。
进一步,优选的方法为,所述步骤S140中获取io=4kB的平均时延所采用的的公式为:
T平均=T4k*[(T实际1/T理论1+ T实际2/T理论2+…T实际n/T理论n)/n],获得io=4kB的平均时延值;其中,n表示io的个数, Tn代表第n个时延,T4k 代表io=4kB的理论时延值,T平均代表io=4kB的平均时延值。
进一步,优选的方法为,在采集io的时延实时数据时,将范围段以s为单位划分区间,将同一个区间内的所有的io大小近似对应相同的io时延值;其中,区间单位S的取值,根据实际要求的精度对应设置;且将区间单位S,针对不同的范围段设置不同的取值。
进一步,优选的方法为,io的时延实时数据包括从io进入处理队列,并将io数据写入到磁盘的总时间。
根据本发明的另一方面,提供一种电子装置,存储器、处理器以及存储在所述存储器中并可在所述处理器上运行监测分布式文件系统IO时延的方法的计算机程序,所述监测分布式文件系统IO时延的方法的计算机程序被所述处理器执行时实现如下步骤:采集io的时延实时数据;根据采集的io的时延实时数据,得到io时延和io大小之间的关系;根据所确定的io时延和io大小之间的关系,获取io理论时延值;计算io=4kB的平均时延值;将所述平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大。
进一步,优选的结构为,在采集io的时延实时数据时,将所述范围段以s为单位划分区间,将同一个区间内的所有的io大小近似对应相同的io时延值。
进一步,优选的结构为,区间单位S的取值,根据实际要求的精度对应设置;且将所述区间单位S,针对不同的范围段设置不同的取值。
进一步,优选的结构为, io的时延实时数据包括从io进入处理队列,并将io数据写入到磁盘的总时间。
根据本发明的另一方面,提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序包括用于io时延数据采集的程序、用于数据分析的程序、用于结果显示的程序,上述计算机程序被处理器执行时实现上述监测分布式文件系统io时延的方法中的步骤。
利用上述监测分布式文件系统IO时延的方法、装置及存储介质,可以实现的效果如下:
1、在保证时延统计精度的前提下减少数据量存储;
2、保证监测io时延数据的精度,从而为分析和监控当前系统的io提供有效的依据;
3、通过统计平均时延,从而实现更加快速的判断当前系统的压力。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
通过参考以下结合附图的说明,并且随着对本发明的更全面理解,本发明的其它目的及结果将更加明白及易于理解。在附图中:
图1为根据本发明实施例的监测分布式文件系统IO时延的方法的流程图;
图2根据本发明实施例的监测分布式文件系统IO时延的电子装置逻辑结构的示意图。
图3根据本发明实施例的大于256KB区段的不同大小的io与io时延数据线性关系图;
图4根据本发明实施例的(0, 64kB)区段的不同大小的io与io时延数据的线性关系图;
在所有附图中相同的标号指示相似或相应的特征或功能。
实施方式
在下面的描述中,出于说明的目的,为了提供对一个或多个实施例的全面理解,阐述了许多具体细节。然而,很明显,也可以在没有这些具体细节的情况下实现这些实施例。在其它例子中,为了便于描述一个或多个实施例,公知的结构和设备以方框图的形式示出。
本发明提供一种监测分布式文件系统IO时延的方法、电子装置及存储介质。本发明首先根据现有的经验值得到推算io时延理论值的线性方程,从而根据线性方程推算任意io的理论时延值;其次,将io分区段、区段内分区间统计时延;以S为区间单位,每个区间单位内的io近似为同一时延数值,以在保证精度的前提下减少数据量;最后,将不同大小的io时延折算成io=4kB的平均时延,将io=4kB的平均时延与io=4kB的理论时延相比较,确定系统的业务压力情况。本发明的一种监测分布式文件系统IO时延的方法、系统、电子装置及存储介质保证了监测io时延数据的精度,从而为分析和监控当前系统的io提供有效的依据。
以下将结合附图对本发明的具体实施例进行详细描述。
图1示出了本发明实施例的监测分布式文件系统IO时延的方法的流程。
如图1所示,监测分布式文件系统IO时延的方法,包括如下步骤:
S110、采集io的时延实时数据;
S120、根据采集的io的时延实时数据,得到io时延和io大小之间关系的公式一;
S130、根据公式一计算io的理论时延值;
S140、根据采集的io的时延实时数据通过公式二计算io=4kB的平均时延值;将平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大。
其中,在步骤S110采集io的时延实时数据中,需要说明的是,此处要采集的时延实时数据是多个,也就是说与多个io对应的io时延。但是在实际的业务中,io大小总是不确定的,系统中每时每刻都在产生不同大小的io,要想把每个不同大小的io的时延都记录下来是不大现实的,因为这样记录的数据量会过于大,在实际生产中并不适用。这里在精确度和实用性方面做了取舍。采集的io时延值越多,精确度越高,但是数据存储量会越大。因此,在采集io时延值的数量上适当减少,保证一定精确度的情况下,数据存储量不会过大。
其中,io时延是从io进入处理队列,并将io数据写入到磁盘的总时间;包括在处理队列的时间、逻辑处理的时间、在Linux操作系统块层的时间以及磁盘写盘的时间。示例性的,假设A发送io到B,A到B之间的路径上有多个处理模块,比如,应用同步调用POSIX接口比如read()后进入阻塞态,后续执行路径进入内核态,首先进入VFS模块来查出io的符号底层承载实体,比如是某个文件,如果是默认的buffer io则进入page cache管理模块搜索cache,未命中或者用了dio模式,则会继续进入FS查询出块地址,继而进入块层,这一层有软raid、多路径、远程复制、lvm等模块,如果对应的目标并没有纳入这些模块,则继续往下进入io scheduler,最后到scsi协议栈,在经历scsi设备驱动、scsi协议栈核心层、host驱动之后,io请求被发送到host控制器,走出主机到外部网络,最后还要经历一系列的外部网络协议、部件,最终到达磁盘,返回数据要经历相反的过程,从而被应用受到,这一去一回所耗费的时间,是很可观的,这段时间就是io的时延。
在步骤S120根据采集的io的时延实时数据,得到io时延和io大小之间关系的公式一;公式一在这里是通过线性方程的方式体现io大小和io时延间的对应关系,在实际的操作中,还可以通过多项式拟合或者对数方程等方式进行体现。在步骤S130根据公式一计算io的理论时延值。
判断io业务的压力大小需要有一个比较的基准值,而这个基准就是设定的io时延的理论值。因为实际的业务io大小是不定的(比如0 ~ 4MB),不可能针对每个大小的io类型设定时延的理论值;在实际操作中,通过抽样某几个特定的io大小,设定它们的时延参数,然后利用算法,模拟推导出其它io的时延。
示例性的:算法(即公式一)的推导过程如下:
下图表一是某一环境下测出来的不同大小的io(写io)的时延数据:
图3示出了根据本发明实施例的大于256KB区段的不同大小的io与io时延数据线性关系图;如图3所示,用线性关系来展示数据的特性;
通过图3可以看出,当io比较大时(大于256kB时),io的时延近似线性关系,可以直接使用线性来模拟,模拟公式是:
T = kx + b (其中T是io时延,x是io大小,k是线性系数,b是常量)
而当io小于64kB的时候,不完全符合线性的表现,但是由于小io的时延整体相对比较小,如果初略的将其视为线性,实际的时延与趋势线的偏差数值不会很大。
所以可以使用分段细化来模拟计算时延,每一段内均使用线性方程来模拟:
T = kx + b (其中T是io时延,x是io大小,k是线性系数,b是常量)
每一个不同大小范围的线程方程的k和b的参数是不一样的,这样可以更好的计算出推算的时延值;
图4示出了根据本发明实施例的(0, 64kB)区段的不同大小的io与io时延数据线性关系图;如图4所示(0, 64kB)区段的不同大小的io与io时延数据的线性关系;
分段的范围为:(0, 64kB), [64kB, 256kB), [256kB, ∞)
在实际的配置中,只需要设定关键点的理论时延值即可,即设定io大小为4kB、64kB、256kB以及4MB时的理论时延值。
在其中一个实施例中,在记录io的时延实时数据时,将范围段以S为单位划分区间,将同一个区间内的所有的io大小近似对应相同的io时延值;其中,区间单位S的取值,根据实际要求的精度对应设置;且将区间单位S,针对不同的范围段设置不同的取值。
由于实际io大小有各种可能,所以不可能对每个大小的io都单独记录时延,也不可能不区别io的大小,笼统的求所有io的时延平均值,因为不同大小的io的时延不相同,这种方法误差会很大。所以这里采取折中的方法:也就是说,在某一范围内的io,记录到一起,比如(0, 4kB] 区间的所有io的时延,都统计到4kB上,然后求平均值当做实际的时延,最终与时延理论值去比较。
其中,以S为区间单位,io大小值所在的范围段不同,其对应的区间单位s值也不同:当io大小比较大时,所选取的区间单位相对比较大;当io大小比较小时,所选取的区间单位相对比较小;而且,区间单位S的值越大,区间单位内包含的io大小的数值个数也就越多;同理,区间单位S的值越小,区间单位内包含的io大小的数值个数也就越小;也就是说,区间单位S越小,区间个数越多,即需要采集的io大小的数值总量越多(数据量),其监测io时延的精度也就越大;另外,针对(0, 64kB), [64kB, 256kB), [256kB, ∞)三个范围段,每个范围段的区间单位S取值也不相同。这里在精确度和实用性方面做了取舍,提出设置区间单位S的方式,将某一小区间范围内的所有大小的io的时延都视为同一组统计记录;例如将区间单位S=4kB;那么,将4kB至8kB范围内的io的时延都视为io=4kB时io的时延,将8kB至12kB范围内的io的时延都视为io=8kB时io的时延;又比如针对[256kB, ∞)这一范围段,若精度要求较高,S的取值可以为S=256kB;若精度要求不高,S的取值可以为s=4096kB;一般情况下,对于超出io最大值的(一般设置io=4mB),不做统计。这样将每个区间单位S内所有的io大小值对应等于同一个io时延值;而区间单位S的大小可以根据实际需要的精度来设定,从而可以在保证所需精度的前提下,减少了io时延数据的统计量,减轻了存储压力。
在步骤S140根据采集的io的时延实时数据通过公式二计算io=4kB的平均时延值;将平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大。也就是说,通过上述的记录的实际io时延以及理论时延值的关系,将统计的所有io时延值折算到成4KB大小的io的时延,即平均时延。通过平均时延就可以得知当前系统的业务压力,由此来分析和判断系统压力是否过大。
假设某一大小的io的时延为T,那么对应的平均每4kB对应的时延为T/1024;
如果实际的4KB的时延值为 T4k , 那么两者关系为:
q=(T/1024)/T4K;
从而
T = 1024 * q * T4K;
即T4K= T / (1024 * q) = Q * T (其中Q = 1 / (1024 * q) )
而 T 与io大小x的关系为: T = k * x + b;
平均时延的计算公式如下:T均= (Q1 * T1+ Q2* T2… Qn * Tn) / n ;
Q= T4k/(k*x+b);
其中假设某一大小的io的实际时延为T实际,理论时延为T理论;
则T理论=(k*x+b);
其中,n表示io的个数,Qn代表第n个io对应的权重值,Tn代表第n个时延;T4k为io=4KB时的理论时延值;
那么,Q= T4k/T理论
即Q *T= (T4k/T理论1)*T实际=【T4k / (k*x+b)】* T实际
因此Q1* T1=( T4k* T实际1 )/(k*x1+b)
T平均=(Q1* T1+ Q2* T2+…Qn* Tn)/n
T平均=[(T4k/ T理论1)* T实际1+(T4k/ T理论2)* T实际2+…(T4k/ T理论n)* T实际n]/n
T平均=T4K*[(T实际1/T理论1+ T实际2/T理论2+…T实际n/T理论n)/n]。
将io=4kB的平均时延值与io=4kB的理论时延值相比较,进而确定系统的压力是否过大。
当发现当前系统的io=4kB的平均时延值大于io=4kB的理论时延值,则判定当前系统的压力过大,从而通过告警来提示系统的运维人员。
本发明提供一种监测分布式文件系统IO时延的系统,包括:数据采集单元、数据分析单元、结果显示单元。
数据采集单元,用于采集io的时延实时数据;数据分析单元,用于将数据采集单元采集的io的时延实时数据与相应的时延理论数据相对比分析,并根据分析结果判定分布式文件系统是否压力过大;结果显示单元,用于将数据分析单元的判定结果进行显示。
数据分析单元包括理论值获取模块,平均值获取模块和比对分析模块。 理论值获取模块用于根据数据采集单元采集的io的时延实时数据得到io时延理论值获取公式,并根据io时延理论值获取公式获取io的时延理论数据。
平均值获取模块,用于根据数据采集单元采集的io的时延实时数据计算io=4kB的平均时延值;比对分析模块,将平均值获取模块获取的平均时延值与理论值获取模块获取的io=4kB的理论时延值进行比对分析,并判定分布式文件系统是否压力过大。
其中,数据采集单元、数据分析单元、结果显示单元的具体实现功能与实施例中监测分布式文件系统IO时延的方法的对应的步骤一一对应,本实施例不一一详述。
图2是本发明一实施例提供的电子装置逻辑结构的示意图。
如图2所示,该实施例的电子装置20包括处理器21、存储器22以及存储在存储器22中并可在处理器21上运行的计算机程序23。处理器21执行计算机程序23时实现实施例中监测分布式文件系统IO时延的方法的各个步骤,例如图1所示的步骤S110至S140。或者,处理器21执行监测分布式文件系统IO时延方法时实现上述各装置实施例中各模块/单元的功能。
示例性的,计算机程序23可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器22中,并由处理器21执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序23在电子装置20中的执行过程。例如,计算机程序23可以被分割成2数据采集单元2,数据分析单元2,结果显示单元2,其功能作用在实施例中有详细描述,在此不一一赘述。
电子装置20可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。电子装置20可包括,但不仅限于,处理器21、存储器22。本领域技术人员可以理解,图2仅仅是电子装置20的示例,并不构成对电子装置20的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如电子装置还可以包括输入输出设备、网络接入设备、总线等。
所称处理器21可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器22可以是电子装置20的内部存储单元,例如电子装置20的硬盘或内存。存储器22也可以是电子装置20的外部存储设备,例如电子装置20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital ,SD)卡,闪存卡(FlashCard)等。进一步地,存储器22还可以既包括电子装置20的内部存储单元也包括外部存储设备。存储器22用于存储计算机程序以及电子设备所需的其他程序和数据。存储器22还可以用于暂时地存储已经输出或者将要输出的数据。
本实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现实施例中监测分布式文件系统IO时延方法,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述监测分布式文件系统IO时延系统中各模块/单元的功能,为避免重复,这里不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
如上参照图1-图2以示例的方式描述根据本发明的监测分布式文件系统IO时延的方法、电子装置及存储介质。但是,本领域技术人员应当理解,对于上述本发明所提出的监测分布式文件系统IO时延的方法、装置及存储介质,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。
Claims (6)
1.一种监测分布式文件系统IO时延的方法,应用于电子装置,其特征在于,包括以下步骤:
S110:采集io的时延实时数据;
S120:根据采集的io的时延实时数据,确定io时延和io大小之间的关系;
S130:根据所确定的io时延和io大小之间的关系,获取io理论时延值;
S140:计算io=4kB的平均时延值,将所述平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大;
其中,所述步骤S120中的确定io时延和io大小之间的关系所采用的公式为:T = kx +b ,其中T是io时延,x是io大小,k是线性系数,b是常量;且,根据所述系数k的不同,将io大小划分为(0, 64kB), [64kB, 256kB), [256kB,∞)三个范围段;
以及,在采集io的时延实时数据时,将所述范围段以S为单位划分区间,将同一个区间内的所有的io大小近似对应相同的io时延值;其中,区间单位S的取值,根据实际要求的精度对应设置;且将所述区间单位S,针对不同的范围段设置不同的取值。
2.根据权利要求1所述的监测分布式文件系统IO时延的方法,其特征在于,所述步骤S140中获取io=4kB的平均时延所采用的公式为:
T平均=T4k *[(T实际1/T理论1+ T实际2/T理论2+…T实际n/T理论n)/n];
其中,n是io的个数, Tn代表第n个时延,T4k 代表io=4kB的理论时延值,T平均代表平均时延值。
3.根据权利要求2所述的监测分布式文件系统IO时延的方法,其特征在于,所述io的时延实时数据包括从io进入处理队列,并将io数据写入到磁盘的总时间。
4.一种电子装置,其特征在于包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行监测分布式文件系统IO时延的方法的计算机程序,所述监测分布式文件系统IO时延的方法的计算机程序被所述处理器执行时实现如下步骤:
采集io的时延实时数据;
根据采集的io的时延实时数据,确定io时延和io大小之间的关系;
根据所确定的io时延和io大小之间的关系,获取io理论时延值;
计算io=4kB的平均时延值,将所述平均时延值与io=4kB的理论时延值相比较,若平均时延值大于理论时延值,则判定分布式文件系统的压力过大;
其中,所述步骤S120中的确定io时延和io大小之间的关系所采用的公式为:T = kx +b ,其中T是io时延,x是io大小,k是线性系数,b是常量;且,根据所述系数k的不同,将io大小划分为(0, 64kB), [64kB, 256kB), [256kB,∞)三个范围段;
以及,在采集io的时延实时数据时,将所述范围段以S为单位划分区间,将同一个区间内的所有的io大小近似对应相同的io时延值;其中,区间单位S的取值,根据实际要求的精度对应设置;且将所述区间单位S,针对不同的范围段设置不同的取值。
5.根据权利要求4所述的一种电子装置,其特征在于,所述io的时延实时数据包括从io进入处理队列,并将io数据写入到磁盘的总时间。
6.一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,所述计算机程序包括用于io时延数据采集的程序、用于数据分析的程序、用于结果显示的程序,上述计算机程序被处理器执行时实现权利要求1~3中任一项所述的监测分布式文件系统IO时延的方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910367648.5A CN110287158B (zh) | 2019-05-05 | 2019-05-05 | 监测分布式文件系统io时延的方法、装置及存储介质 |
PCT/CN2019/103590 WO2020224125A1 (zh) | 2019-05-05 | 2019-08-30 | 监测分布式文件系统io时延的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910367648.5A CN110287158B (zh) | 2019-05-05 | 2019-05-05 | 监测分布式文件系统io时延的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287158A CN110287158A (zh) | 2019-09-27 |
CN110287158B true CN110287158B (zh) | 2023-05-26 |
Family
ID=68001699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910367648.5A Active CN110287158B (zh) | 2019-05-05 | 2019-05-05 | 监测分布式文件系统io时延的方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110287158B (zh) |
WO (1) | WO2020224125A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110750432B (zh) * | 2019-10-25 | 2022-04-22 | 北京浪潮数据技术有限公司 | 分布式存储系统的io性能分析方法、系统及相关组件 |
CN111913667B (zh) * | 2020-08-06 | 2023-03-14 | 平安科技(深圳)有限公司 | 一种基于Ceph的OSD阻塞检测方法、系统、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6829583B1 (en) * | 1999-12-20 | 2004-12-07 | International Business Machines Corporation | Method and apparatus to determine mean time to service |
CN103345432A (zh) * | 2013-06-07 | 2013-10-09 | 深圳中兴网信科技有限公司 | 多核cpu过载检测装置和多核cpu过载检测方法 |
CN105573888A (zh) * | 2015-12-14 | 2016-05-11 | 曙光信息产业股份有限公司 | 一种分布式文件系统中的磁盘性能检测方法及装置 |
CN106304290A (zh) * | 2016-08-12 | 2017-01-04 | 辛建芳 | 基于n策略的物联网协作节点功率控制方法 |
WO2018032897A1 (zh) * | 2016-08-16 | 2018-02-22 | 深圳市中兴微电子技术有限公司 | 报文转发性能评估方法、装置和计算机存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6920504B2 (en) * | 2002-05-13 | 2005-07-19 | Qualcomm, Incorporated | Method and apparatus for controlling flow of data in a communication system |
US7958343B2 (en) * | 2006-09-08 | 2011-06-07 | Hewlett-Packard Development Company, L.P. | BIOS bootable RAID support |
US8954394B2 (en) * | 2013-03-21 | 2015-02-10 | Nextbit Systems Inc. | Using mobile devices of a user as an edge cache to stream video files |
CN105528315B (zh) * | 2014-09-28 | 2018-08-14 | 华为数字技术(成都)有限公司 | 一种硬盘io超时控制方法及装置 |
CN106933495B (zh) * | 2015-12-30 | 2019-07-23 | 华为技术有限公司 | 一种数据读取方法、raid控制器及存储设备 |
-
2019
- 2019-05-05 CN CN201910367648.5A patent/CN110287158B/zh active Active
- 2019-08-30 WO PCT/CN2019/103590 patent/WO2020224125A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6829583B1 (en) * | 1999-12-20 | 2004-12-07 | International Business Machines Corporation | Method and apparatus to determine mean time to service |
CN103345432A (zh) * | 2013-06-07 | 2013-10-09 | 深圳中兴网信科技有限公司 | 多核cpu过载检测装置和多核cpu过载检测方法 |
CN105573888A (zh) * | 2015-12-14 | 2016-05-11 | 曙光信息产业股份有限公司 | 一种分布式文件系统中的磁盘性能检测方法及装置 |
CN106304290A (zh) * | 2016-08-12 | 2017-01-04 | 辛建芳 | 基于n策略的物联网协作节点功率控制方法 |
WO2018032897A1 (zh) * | 2016-08-16 | 2018-02-22 | 深圳市中兴微电子技术有限公司 | 报文转发性能评估方法、装置和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020224125A1 (zh) | 2020-11-12 |
CN110287158A (zh) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021120789A1 (zh) | 数据写入方法、装置及存储服务器和计算机可读存储介质 | |
WO2017012392A1 (zh) | 一种磁盘检测的方法和装置 | |
WO2017020747A1 (zh) | 一种检测慢盘的方法及装置 | |
US20110107053A1 (en) | Allocating Storage Memory Based on Future Use Estimates | |
US8527238B2 (en) | Storage input/output utilization associated with a software application | |
CN110287158B (zh) | 监测分布式文件系统io时延的方法、装置及存储介质 | |
CN111045881A (zh) | 一种慢盘检测方法及系统 | |
WO2017215557A1 (zh) | 一种采集性能监视单元pmu事件的方法及装置 | |
CN108874535A (zh) | 一种任务调节方法、计算机可读存储介质及终端设备 | |
CN109388550B (zh) | 一种缓存命中率确定方法、装置、设备及可读存储介质 | |
US20180025096A1 (en) | Data referring method, information processing apparatus, and storage medium | |
US8924642B2 (en) | Monitoring record management method and device | |
CN107656851A (zh) | 一种基于部件能耗模型的云服务器能耗测算方法及系统 | |
US10356015B2 (en) | Execution traces | |
CN108762684B (zh) | 热点数据迁移流控方法、装置、电子设备及存储介质 | |
WO2022110196A1 (zh) | 一种数据处理方法、装置及系统 | |
CN110362470B (zh) | 测试数据收集方法、装置、电子设备及存储介质 | |
CN112783711A (zh) | NodeJS上程序内存分析的方法、存储介质 | |
CN115509853A (zh) | 一种集群数据异常检测方法及电子设备 | |
CN112269723B (zh) | 存储设备的性能分析方法、装置及可读存储介质 | |
CN112446490A (zh) | 一种网络训练的数据集缓存方法、装置、设备及存储介质 | |
KR101515891B1 (ko) | 메모리 사용량 분석 방법 및 이를 수행하는 사용자 단말 | |
CN109560965B (zh) | 一种分布式系统的流量获取方法、装置及设备 | |
CN110750432B (zh) | 分布式存储系统的io性能分析方法、系统及相关组件 | |
CN111913650B (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 |