一种访问请求处理方法、装置、设备及可读存储介质与流程

文档序号:16066658发布日期:2018-11-24 12:44阅读:199来源:国知局

本发明涉及存储技术领域,特别是涉及一种访问请求处理方法、装置、设备及可读存储介质。

背景技术

在块存储系统的实际应用中,多个用户可以同时操作多个卷,并对卷进行快照创建、数据拷贝、迁移等数据操作。

对卷进行数据操作时,会占用系统的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为本发明实施例中一种iops限制流程示意图;

图3为本发明实施例中一种访问请求处理装置的结构示意图;

图4为本发明实施例中一种访问请求处理设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一:

请参考图1,图1为本发明实施例中一种访问请求处理方法的流程图,该方法包括以下步骤:

s101、接收目标用户发送的数据访问请求,并在块存储系统中确定数据访问请求对应的目标卷。

接收到目标用户发送的数据访问请求。其中,数据访问请求可以为块存储系统中的一个卷或者多个卷进行数据读取、修改或写入的访问请求。数据访问请求中可以包括直接访问的目标卷,也可以仅表示要操作的数据对象,然后利用数据对象在块存储系统中查找并确定目标卷。利用数据对象在块存储系统中查找并确定目标卷时,可以利用存储数据对象时,记录的数据日志,或者数据对象对应的元数据信息,可以确定出存储该数据对象的目标卷。

s102、获取目标卷当前时刻对应的iops。

为了避免多个用户同时对块存储系统中的卷进行数据操作时,大量占用系统的iops。其中,iops(input/outputoperationspersecond)即每秒进行读写(i/o)操作的次数。又因系统iops的主要取决于阵列的算法,cache命中率以及磁盘个数。也就是说,系统的iops相对固定,也有其上限值。因此,可以获取目标卷当前时刻对应的iops,以便基于当前时刻的iops对该数据访问请求选择最佳处理方式。

s103、判断iops是否小于预设阈值。

在本发明实施例中,可以预先设置每一个卷的iops的阈值。具体的,即在接收目标用户发送的数据访问请求之前,对块存储系统中的各个卷的iops,分别设置对应的阈值。

当然,在对块存储系统中的各个卷设置阈值时,可以将阈值设置为相同阈值,也可以实际情况将阈值设置为不同数值的阈值。具体的,各个卷的阈值可以与块存储系统的iops匹配,即可将块存储系统的iops平均分至各个卷。当然,还可以根据不同卷的具体数据分配不同的阈值。阈值的具体数值可以预先设置,也可以根据实际情况进行调整,在此不做限定。例如,当块存储系统的iops为10000,卷总数为50个,可为每一个卷的iops的阈值均设置为200;或者,将其中访问量最大的卷对应的阈值设置为500,将访问量较小的卷的阈值设置为100,以保障用户的正常访问需要。

优选地,在对块存储系统中的各个卷的iops,分别设置对应的阈值时,可以根据不同的卷所对应的业务优先级,分别进行设置相应iops的阈值。具体的,按照访问不同卷对应的业务优先级,对块存储系统中的各个卷的iops,分别设置不同的阈值。其中,业务优先级可以为根据当前系统的服务对象、服务场景所确定。例如,若当前的系统为某电商平台的数据中心的,当处于促销活动期间,可以将存储商品信息的卷的阈值设置为较大值。

为了更好的适应不同环境下或不同时期,不同的需求。本发明实施例还可以对iops的阈值设置和修改。具体的:

步骤一、接收对块存储系统中的各个卷进行iops限制的配置请求;其中,配置请求包括各个卷的iops限制参数;

步骤二、利用配置请求中的iops限制参数,对各个卷分别设置对应的阈值。

为了便于描述,下面将上述两个步骤结合起来进行说明。

可以通过可视化界面,向用户提供iops限制参数调整的选项卡。用户利用选项卡,以及输入相应的iops限制参数。接收/获取到用户输入的信息,即可视为接收对块存储系统中的各个卷进行iops限制的配置请求。其中,配置请求即为各个卷的iops限制参数。具体的,限制参数可以为对具体的某个卷,在具体的时段,对应的iops的阈值具体大小。然后,利用这些iops配置参数,可以对各个卷分别设置对应的阈值。当然,在可视化界面还可以将卷的阈值作为卷的属性信息进行显示,以便用户进行调整。

利用预先设置的阈值与iops进行判断。当判断出iops与预设阈值的关系之后,可以根据判断结果,对数据访问请求进行相应地处理操作,具体的,如果是,则执行步骤s104;如果否,则执行步骤s105。

s104、允许目标用户访问目标卷。

当iops比预设阈值小时,可以认为当前对卷的数据操作的量较小,还不足以威胁到系统的性能,因此,可以直接运行目标用户访问目标卷。具体的,即目标用户可以对卷内的数据进行操作。

s105、将数据访问请求加入等待队列。

在iops大于或等于预设阈值时,此时,可以认为当前访问目标卷的量已足够大,且可能会影响到系统性能,因此,可以将数据访问请求加入等待队列中。当然,为了提高用户体验度,可以在将数据访问请求加入等待队列时,向目标用户输出系统繁忙的提示信息。

应用本发明实施例所提供的方法,接收目标用户发送的数据访问请求,并在块存储系统中确定数据访问请求对应的目标卷;获取目标卷当前时刻对应的iops;判断iops是否小于预设阈值;如果是,则允许目标用户访问目标卷;如果否,则将数据访问请求加入等待队列。

在接收到数据访问请求之后,首先确定访问对象,即确定请求访问的目标卷。然后,判断该目标卷的iops是否小于预设阈值,如果是,则说明当前对该目标卷的访问量还不足以威胁块存储系统的范围能力,此时,可以运行目标用户访问目标卷;如果否,则说明目标卷的访问量较大,继续运行目标用户该卷,可能会导致对目标卷进行访问的访问量过大,导致占用系统资源,进一步导致无法访问其他卷,因此,此时可将该数据访问请求添加至等待队列中。也就是说,按照当前时刻的iops与预设阈值的关系,对数据访问请求进行不同的处理,可以降低卷的iops,减少占用块存储系统的资源,进一步保障块存储系统正常对外提供服务,提升用户体验。

需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在优选/改进实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。

优选地,为了更好的处理数据访问请求,在执行完步骤s105之后,即,在将数据访问请求加入等待队列之后,还可以对目标卷的iops进行监测,当监测到目标卷对应的iops小于预设阈值时,允许目标用户访问目标卷。即,一旦监测到目标卷的iops小于预设阈值之后,即可对等待队列中的数据访问请求提供相应的数据访问服务,即允许目标用户访问目标卷。如此,便可在避免影响系统性能的情况下,及时有效地为用户提供访问服务,提升用户体验。

实施例二:

为了便于本领域技术人员理解本发明实施例所提供的技术方案,下面结合具体的应用场景为例,对本发明实施例所提供的技术方案进行详细描述。

在块存储系统中,应用本发明实施例所提供的技术方案,针对卷每秒的读写操作次数进行限制,用户可以查看、设置iops限制信息、实时获知卷的iops使用情况。

在每一秒时间段内,已经进行的读写操作次数在限制范围内,可以继续对卷进行读写操作。当超出限制范围时,对卷的读写操作将会阻塞,直到下一秒时间段才可以继续进行。

使用这种方法可以保障关键业务性能,满足业务需求,提供优良的用户体验,提高系统的资源利用率。

为了更加清晰的描述本发明实施例的技术方案,下面将结合附图对本发明实施例所提供的技术方案,做进一步地详细描述。

iops限制管理对卷的读、写操作进行限定和统计;用户可以查看卷的iops限制;用户可以设置、修改卷的iops限制;将统计到的卷的iops值的实时信息更新到卷的对象中,用户可查看卷iops的数据信息。

如图2所示,图2为本发明实施例中一种iops限制流程示意图。具体如下:

s1、开启iops限制的开关。

s2、为卷设置iops限制数值。

其中,卷可以为特定卷。

s3、对卷的iops进行实时统计。

s4、判断实时统计的iops是否大于等于设置的iops限制值。

如果是,执行步骤s5;如果否,执行步骤s6。

s5、限制当前时刻的数据操作,直至卷的iops低于限定值继续提供卷的访问服务。

s6、提供卷的访问服务。

相应于上面的方法实施例,本发明实施例还提供了一种访问请求处理装置,下文描述的访问请求处理装置与上文描述的访问请求处理方法可相互对应参照。

参见图3所示,该装置包括以下模块:

访问请求接收模块101,用于接收目标用户发送的数据访问请求,并在块存储系统中确定数据访问请求对应的目标卷;

iops获取模块102,用于获取目标卷当前时刻对应的iops;

判断模块103,用于判断iops是否小于预设阈值;

访问请求处理模块104,用于当iops小于预设阈值时,允许目标用户访问目标卷;当iops大于或等于预设阈值时,将数据访问请求加入等待队列。

应用本发明实施例所提供的装置,接收目标用户发送的数据访问请求,并在块存储系统中确定数据访问请求对应的目标卷;获取目标卷当前时刻对应的iops;判断iops是否小于预设阈值;如果是,则允许目标用户访问目标卷;如果否,则将数据访问请求加入等待队列。

在接收到数据访问请求之后,首先确定访问对象,即确定请求访问的目标卷。然后,判断该目标卷的iops是否小于预设阈值,如果是,则说明当前对该目标卷的访问量还不足以威胁块存储系统的范围能力,此时,可以运行目标用户访问目标卷;如果否,则说明目标卷的访问量较大,继续运行目标用户该卷,可能会导致对目标卷进行访问的访问量过大,导致占用系统资源,进一步导致无法访问其他卷,因此,此时可将该数据访问请求添加至等待队列中。也就是说,按照当前时刻的iops与预设阈值的关系,对数据访问请求进行不同的处理,可以降低卷的iops,减少占用块存储系统的资源,进一步保障块存储系统正常对外提供服务,提升用户体验。

在本发明的一种具体实施方式中,访问请求处理模块104,还用于在将数据访问请求加入等待队列之后,当监测到目标卷对应的iops小于预设阈值时,允许目标用户访问目标卷。

在本发明的一种具体实施方式中,还包括:

阈值设置模块,用于在接收目标用户发送的数据访问请求之前,对块存储系统中的各个卷的iops,分别设置对应的阈值。

在本发明的一种具体实施方式中,阈值设置模块,具体用于按照访问不同卷对应的业务优先级,对块存储系统中的各个卷的iops,分别设置不同的阈值。

在本发明的一种具体实施方式中,阈值设置模块,包括:

配置请求接收单元,用于接收对块存储系统中的各个卷进行iops限制的配置请求;其中,配置请求包括各个卷的iops限制参数;

阈值设置单元,用于利用配置请求中的iops限制参数,对各个卷分别设置对应的阈值。

相应于上面的方法实施例,本发明实施例还提供了一种访问请求处理设备,下文描述的一种访问请求处理设备与上文描述的一种访问请求处理方法可相互对应参照。

参见图4所示,该访问请求处理设备包括:

存储器d1,用于存储计算机程序;

处理器d2,用于执行计算机程序时实现上述方法实施例的访问请求处理方法的步骤。

相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种访问请求处理方法可相互对应参照。

一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的访问请求处理方法的步骤。

该可读存储介质具体可以为u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可存储程序代码的可读存储介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1