掌桥专利:专业的专利平台
掌桥专利
首页

一种基于操作类型的锁耗时统计方法及装置

文献发布时间:2023-06-19 11:44:10


一种基于操作类型的锁耗时统计方法及装置

技术领域

本发明涉及锁耗时统计领域,尤其是涉及一种基于操作类型的锁耗时统计方法及装置。

背景技术

分布式文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与计算机节点相连。

文件系统锁是指文件系统操作交互会出现抢锁过程,抢到锁的操作会进行对应操作;锁是公共类的大锁,很多操作执行时都会进行调用,用于操作类型之间的协同与互斥,一个操作类型执行过程中可能用到很多锁;加锁之后只能进行一种类型的操作,上锁与解锁期间系统操做的耗时就是对应的锁耗时。

现有技术中文件系统的锁耗时在统计时,并不统计系统的操作类型,并没有按照文件的操作类型进行耗时类型的区分;在一个流程中可能涉及到读操作、写操纵、元数据刷新操作、数据刷新操作等。

现有锁耗时方法进行全部统计分析时并不区分操作类型,掩盖了不同操作类型之间的耗时差异,其平均值只能反映整体的耗时情况,无法正确反映不同操作类型之间的锁耗时整体状况与差异,容易掩盖耗时较大或者耗时较低的操作类型,无法给分析人员呈现较为清晰准确的数据,降低分析人员的工作效率,甚至容易误导分析人员。

发明内容

本发明为了解决现有技术中存在的问题,创新提出了一种基于操作类型的锁耗时统计方法及装置,有效解决由于现有技术中锁耗时统计并不区分操作类型造成统计可靠性以及全面性较低的问题,有效的提高了锁耗时统计的可靠性以及全面性,便于提高了分析人员的工作效率。

本发明第一方面提供了一种基于操作类型的锁耗时统计方法,应用于分布式文件系统中,包括:

建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

为每一种操作函数设置唯一身份标识;

在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计。

可选地,操作函数的唯一身份标识支持自定义设置。

可选地,操作类型包括但不限于读操作、写操作、删除、截取、移动且重命名、创建、查看扩展属性、设置扩展属性、打开、关闭、释放;操作函数包括但不限于read、write、delete、truancate、mv、create、getfattr、setfattr、open、close、realse。

可选地,根据识别的操作类型进行对应的锁耗时统计具体是:

在锁类工具中设置操作类型识别器,用于根据操作函数的唯一身份标识识别操作类型,并根据识别的操作类型进行对应的锁耗时统计。

可选地,还包括:

对统计的不同操作类型的锁耗时进行数据分析。

进一步地,对统计的不同操作类型的锁耗时进行数据分析具体包括:数据均值分析、数据最大值分析、数据最小值分析。

可选地,还包括:对数据分析结果进行阶梯分布展示。

本发明第二方面提供了一种基于操作类型的锁耗时统计装置,应用于分布式文件系统中,包括:

建立模块,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

设置模块,为每一种操作函数设置唯一身份标识;

识别统计模块,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计。

可选地,还包括:

分析模块,对统计的不同操作类型的锁耗时进行数据分析。

可选地,还包括:

展示模块,对数据分析结果进行阶梯分布展示。

本发明采用的技术方案包括以下技术效果:

1、本发明根据操作类型不同对应进行锁耗时的统计,能够正确反映不同操作类型之间的锁耗时整体状况与差异,容易掩盖耗时较大或者耗时较低的操作类型,无法给分析人员呈现较为清晰准确的数据,使得不同操作类型的锁耗时统计相互独立,互不影响,消除其他操作类型锁耗时统计对本操作类型的影响;有效解决由于现有技术中锁耗时统计并不区分操作类型造成统计可靠性以及全面性较低的问题,有效的提高了锁耗时统计的可靠性以及全面性,便于提高了分析人员的工作效率。

2、本发明技术方案中为每一种操作类型设置唯一身份标识,便于操作类型识别器能够识别不同操作类型,而且,身份标识可以支持自定义设置,提高了应用的灵活性。

3、本发明技术方案中对统计的不同操作类型的锁耗时进行数据分析,降低分析人员的工作效率。

4、本发明技术方案中对数据分析结果进行阶梯分布展示,统计分析每种操作类型对应的锁耗时的阶梯分布状况,将锁耗时的变化波动以及各阶段的阶梯分布状况直观化展示,有利于快速分析该类型锁耗时整体分布状况与局部差异等。

应当理解的是以上的一般描述以及后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

为了更清楚说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见的,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明方案中实施例一方法的流程示意图;

图2为本发明方案中实施例二方法的流程示意图;

图3为本发明方案中实施例三方法的流程示意图;

图4为本发明方案中实施例三方法中耗时阶梯型分布示意图;

图5为本发明方案中实施例四装置的结构示意图

图6为本发明方案中实施例五装置的结构示意图;

图7为本发明方案中实施例七装置的结构示意图。

具体实施方式

为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

实施例一

如图1所示,本发明提供了一种基于操作类型的锁耗时统计方法,应用于分布式文件系统中,包括:

S1,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

S2,为每一种操作函数设置唯一身份标识;

S3,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计。

其中,在步骤S1中,操作类型包括但不限于读操作、写操作、删除、截取、移动且重命名、创建、查看扩展属性、设置扩展属性、打开、关闭、释放;操作函数包括但不限于read、write、delete、truancate、mv、create、getfattr、setfattr、open、close、realse。通过枚举数组的形式,枚举所有操作类型以及操作函数,建立操作类型与操作函数的对应关系,通过操作函数即可确定对应的操作类型。枚举数组可以支持自定义设置,具体地,例如,增加、修改、删减均可,可以根据实际情况进行调整,本发明在此不做限制。

在步骤S2中,操作函数的唯一身份标识支持自定义设置。具体地,操作函数的唯一身份标识可以设置为数字编码或字符串均可,也可以设置为其他形式,本发明在此不做限制。

在步骤S3中,在执行文件系统的操作调用锁函数时,可以在锁函数中设置不同操作函数的身份标识(步骤S2中唯一身份标识,例如可以在锁函数中末尾或中间位置添加操作函数的身份标识),共同构成输入参数,便于能够根据锁函数中的操作函数身份标识识别对应的操作类型。其中,根据识别的操作类型进行对应的锁耗时统计具体是:

在锁类工具中设置操作类型识别器,用于根据操作函数的唯一身份标识识别操作类型,并根据识别的操作类型进行对应的锁耗时统计。操作类型识别器具体实现方式可以是一段程序脚本,也可以是其他组件工具,只要能够实现根据操作函数的身份标识识别操作类型即可。当有操作调用锁函数进行上锁时,操作类型识别器会识别操作类型,然后将耗时统计记录在对应的操作类型的耗时数据中。

需要说明的是,本发明技术方案步骤S1-S3中,可以通过程序语言编程实现,程序语言可以实现C++语言,也可以是其他语言类型,也可以通过其他方式实现,本发明在此均不做限制。

本发明根据操作类型不同对应进行锁耗时的统计,能够正确反映不同操作类型之间的锁耗时整体状况与差异,容易掩盖耗时较大或者耗时较低的操作类型,无法给分析人员呈现较为清晰准确的数据,使得不同操作类型的锁耗时统计相互独立,互不影响,消除其他操作类型锁耗时统计对本操作类型的影响;有效解决由于现有技术中锁耗时统计并不区分操作类型造成统计可靠性以及全面性较低的问题,有效的提高了锁耗时统计的可靠性以及全面性,便于提高了分析人员的工作效率。

本发明技术方案中为每一种操作类型设置唯一身份标识,便于操作类型识别器能够识别不同操作类型,而且,身份标识可以支持自定义设置,提高了应用的灵活性。

实施例二

如图2所示,本发明提供了一种基于操作类型的锁耗时统计方法,应用于分布式文件系统中,包括:

S1,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

S2,为每一种操作函数设置唯一身份标识;

S3,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计;

S4,对统计的不同操作类型的锁耗时进行数据分析。

其中,在步骤S4中,对统计的不同操作类型的锁耗时进行数据分析具体包括:数据均值分析、数据最大值分析、数据最小值分析。

具体地,各操作类型耗时统计分析具体是:统计各个操作类型的锁耗时,并计算各个操作类型对应锁耗时的平均值、最小值、最大值、累计总耗时与总操作发生次数(不同操作调用锁的发生次数)等,便于为数据分析人员提供可靠的数据依据,从不同角度全面分析不同操作类型的锁耗时。

本发明技术方案中对统计的不同操作类型的锁耗时进行数据分析,降低分析人员的工作效率。

实施例三

如图3所示,本发明提供了一种基于操作类型的锁耗时统计方法,应用于分布式文件系统中,包括:

S1,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

S2,为每一种操作函数设置唯一身份标识;

S3,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计。

S4,对统计的不同操作类型的锁耗时进行数据分析;

S5,对数据分析结果进行阶梯分布展示。

其中,在数据S5中,各操作类型耗时阶梯型分布展示:对某一时段不同操作类型的操作发生次数分别单独进行统计,然后对同一种操作类型调用锁的操作发生次数小于某一预设值(例如,同一种操作类型调用锁的发生次数为10000次,可以取前100次为统计结果,实际可调)的锁耗时进行统计存储,并计算同一种操作类型调用锁的不同发生次数(例如,某一种操作类型第1次调用锁、某一种操作类型第2次调用锁……某一种操作类型第100次调用锁)对应的锁耗时均值X,最大值MAX,最小值MIN;如果均值与最大值、最小值比值中任意一个在0.95-1.05之间,设均值X为步长间隔,初始值为0,进行耗时段的阶梯统计;否则选取最大值MAX、最小值MIN的均值X1,取min(X1,X)作为步长间隔,初始值为0,即:

如果

如果

如图4所示是统计的耗时阶梯分布示意图,纵轴是此耗时段某一种操作类型的操作发生次数,横轴是耗时段。

本发明技术方案中对数据分析结果进行阶梯分布展示,统计分析每种操作类型对应的锁耗时的阶梯分布状况,将锁耗时的变化波动以及各阶段的阶梯分布状况直观化展示,有利于快速分析该类型锁耗时整体分布状况与局部差异等。

实施例四

如图5所示,本发明技术方案还提供了一种基于操作类型的锁耗时统计装置,应用于分布式文件系统中,包括:

建立模块101,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

设置模块102,为每一种操作函数设置唯一身份标识;

识别统计模块103,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计。

本发明根据操作类型不同对应进行锁耗时的统计,能够正确反映不同操作类型之间的锁耗时整体状况与差异,容易掩盖耗时较大或者耗时较低的操作类型,无法给分析人员呈现较为清晰准确的数据,使得不同操作类型的锁耗时统计相互独立,互不影响,消除其他操作类型锁耗时统计对本操作类型的影响;有效解决由于现有技术中锁耗时统计并不区分操作类型造成统计可靠性以及全面性较低的问题,有效的提高了锁耗时统计的可靠性以及全面性,便于提高了分析人员的工作效率。

本发明技术方案中为每一种操作类型设置唯一身份标识,便于操作类型识别器能够识别不同操作类型,而且,身份标识可以支持自定义设置,提高了应用的灵活性。

实施例五

如图6所示,本发明技术方案还提供了一种基于操作类型的锁耗时统计装置,应用于分布式文件系统中,包括:

建立模块101,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

设置模块102,为每一种操作函数设置唯一身份标识;

识别统计模块103,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计;

分析模块104,对统计的不同操作类型的锁耗时进行数据分析。

本发明技术方案中对统计的不同操作类型的锁耗时进行数据分析,降低分析人员的工作效率。

实施例六

如图7所示,本发明技术方案还提供了一种基于操作类型的锁耗时统计装置,应用于分布式文件系统中,包括:

建立模块101,建立枚举数组,所述枚举数组中记录操作类型与操作函数的对应关系;

设置模块102,为每一种操作函数设置唯一身份标识;

识别统计模块103,在执行文件系统的操作调用锁函数时,在锁函数中设置不同操作函数的身份标识,根据识别的操作类型进行对应的锁耗时统计;

分析模块104,对统计的不同操作类型的锁耗时进行数据分析;

展示模块105,对数据分析结果进行阶梯分布展示。

本发明技术方案中对数据分析结果进行阶梯分布展示,统计分析每种操作类型对应的锁耗时的阶梯分布状况,将锁耗时的变化波动以及各阶段的阶梯分布状况直观化展示,有利于快速分析该类型锁耗时整体分布状况与局部差异等。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

相关技术
  • 一种基于操作类型的锁耗时统计方法及装置
  • 一种函数耗时统计方法、装置、存储介质及终端设备
技术分类

06120113034446