分布式存储中实现服务质量的方法和装置制造方法及图纸

技术编号:26733749 阅读:26 留言:0更新日期:2020-12-15 14:40
本发明专利技术公开了一种分布式存储中实现服务质量的方法和装置。其中,该方法包括:接收读写操作;检测对象存储网关在本地缓存的令牌个数是否满足读写操作所需的令牌个数;在本地缓存的令牌个数小于读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新本地缓存的令牌个数;在本地缓存的令牌个数大于或者等于读写操作所需的令牌个数的情况下,执行读写操作。本发明专利技术解决了现有技术中分布式存储采用令牌桶模块对令牌进行集中管理,与业务模块处于不同的进程中,每次读写操作都需要通过进程间通信获取令牌,导致性能降低、可用性差的技术问题。

【技术实现步骤摘要】
分布式存储中实现服务质量的方法和装置
本专利技术涉及存储系统
,具体而言,涉及一种分布式存储中实现服务质量的方法和装置。
技术介绍
存储服务质量(QualityofService,简称为QoS)与网络QoS类似,它确保特定应用程序或工作负载始终获得特定的性能级别。对于存储系统,此级别通常表示为IOPS。存储QoS通常设置特定用户/应用程序可能使用的最大IOPS数。为确保用户/应用程序获得此性能级别,存储系统在总IOPS中分配一定数量IOPS给每个用户/应用程序。每个用户/应用程序的最大IOPS不会超过分配的IOPS,可以防止对其他用户的IOPS造成影响。图1是现有非分布式存储系统中使用令牌桶算法实现Qos功能的示意图,如图1所示,在现有非分布式存储系统中,通常使用令牌桶算法实现Qos功能,令牌桶模块和存储业务处理模块位于相同的进程中,获取令牌的效率很高,在限流范围内对性能无影响。图2是现有技术中将令牌桶算法应用到分布式存储系统的示意图,如图2所示,在分布式存储系统中,IO路径是分散的,难以在集中的一点做Qos,所以需要使用独立的可以全局访问的组件实现QosS服务,比如类似redis之类的高速缓存。每个对象存储网关(RadosGateway,简称为RGW)进程需要通过QosClient(又称为QosC)和QosServer(又称为QosS)通信,每次IO前先从QosS模块获取令牌。针对上述现有技术中分布式存储采用令牌桶模块对令牌进行集中管理,与业务模块处于不同的进程中,每次读写操作都需要通过进程间通信获取令牌,导致性能降低、可用性差的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种分布式存储中实现服务质量的方法和装置,以至少解决现有技术中分布式存储采用令牌桶模块对令牌进行集中管理,与业务模块处于不同的进程中,每次读写操作都需要通过进程间通信获取令牌,导致性能降低、可用性差的技术问题。根据本专利技术实施例的一个方面,提供了一种分布式存储中实现服务质量的方法,包括:接收读写操作;检测对象存储网关在本地缓存的令牌个数是否满足所述读写操作所需的令牌个数;在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数;在所述本地缓存的令牌个数大于或者等于所述读写操作所需的令牌个数的情况下,执行所述读写操作。可选地,在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数之前,还包括:确定服务质量对象名称列表中与目标名称关联的服务质量对象名称;依据所述服务质量对象名称,确定所述对象存储守护进程。可选地,确定服务质量对象名称列表中与目标名称关联的服务质量对象名称包括:对所述目标名称进行哈希处理,得到哈希值;将所述哈希值与N取模,得到取模值,其中,N的取值范围为大于1的正整数;依据所述取模值,得到所述服务质量对象名称列表中的所述服务质量对象名称。可选地,所述目标名称包括以下至少之一:访问的对象名称、桶名称、用户名。可选地,在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数包括:将从多个所述对象存储守护进程获取的所述令牌和令牌个数,保存在所述本地缓存。可选地,分别从多个对象存储守护进程获取令牌包括:确定所述对象存储守护进程中的可用令牌个数;依据所述可用令牌个数以及所述读写操作所需的令牌个数,获取第一预定数量令牌。可选地,所述方法还包括:按照所述对象存储网关的统计速度,预先获取第二预定数量令牌,其中,所述第二预定数量令牌是所述读写操作所需的令牌个数的X倍,X的取值范围为大于0。根据本专利技术实施例的另一方面,还提供了一种分布式存储中实现服务质量的装置,包括:接收模块,用于接收读写操作;检测模块,用于检测对象存储网关在本地缓存的令牌个数是否满足所述读写操作所需的令牌个数;第一处理模块,用于在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数;第二处理模块,用于在所述本地缓存的令牌个数大于或者等于所述读写操作所需的令牌个数的情况下,执行所述读写操作。根据本专利技术实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行上述中任意一项所述的分布式存储中实现服务质量的方法。根据本专利技术实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的分布式存储中实现服务质量的方法。在本专利技术实施例中,采用接收读写操作;检测对象存储网关在本地缓存的令牌个数是否满足所述读写操作所需的令牌个数;在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数;在所述本地缓存的令牌个数大于或者等于所述读写操作所需的令牌个数的情况下,执行所述读写操作的方式,通过分布式的方式分别从多个对象存储守护进程获取令牌,更新本地缓存的令牌个数,以及在本地缓存的令牌个数大于或者等于读写操作所需的令牌个数的情况下,执行读写操作,达到了分布式地获取令牌,分散性能热点的目的,从而实现了提高存储服务质量的性能和高可用性的技术效果,进而解决了现有技术中分布式存储采用令牌桶模块对令牌进行集中管理,与业务模块处于不同的进程中,每次读写操作都需要通过进程间通信获取令牌,导致性能降低、可用性差的技术问题。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是现有非分布式存储系统中使用令牌桶算法实现Qos功能的示意图;图2是现有技术中将令牌桶算法应用到分布式存储系统的示意图;图3是根据本专利技术实施例的分布式存储中实现服务质量的方法的流程图;图4是根据本专利技术实施例的将令牌桶算法应用到分布式存储系统的示意图;图5是根据本专利技术实施例的分布式存储中实现服务质量的装置的示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示本文档来自技高网
...

【技术保护点】
1.一种分布式存储中实现服务质量的方法,其特征在于,包括:/n接收读写操作;/n检测对象存储网关在本地缓存的令牌个数是否满足所述读写操作所需的令牌个数;/n在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数;/n在所述本地缓存的令牌个数大于或者等于所述读写操作所需的令牌个数的情况下,执行所述读写操作。/n

【技术特征摘要】
1.一种分布式存储中实现服务质量的方法,其特征在于,包括:
接收读写操作;
检测对象存储网关在本地缓存的令牌个数是否满足所述读写操作所需的令牌个数;
在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数;
在所述本地缓存的令牌个数大于或者等于所述读写操作所需的令牌个数的情况下,执行所述读写操作。


2.根据权利要求1所述的方法,其特征在于,在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数之前,还包括:
确定服务质量对象名称列表中与目标名称关联的服务质量对象名称;
依据所述服务质量对象名称,确定所述对象存储守护进程。


3.根据权利要求2所述的方法,其特征在于,确定服务质量对象名称列表中与目标名称关联的服务质量对象名称包括:
对所述目标名称进行哈希处理,得到哈希值;
将所述哈希值与N取模,得到取模值,其中,N的取值范围为大于1的正整数;
依据所述取模值,得到所述服务质量对象名称列表中的所述服务质量对象名称。


4.根据权利要求3所述的方法,其特征在于,所述目标名称包括以下至少之一:访问的对象名称、桶名称、用户名。


5.根据权利要求1所述的方法,其特征在于,在所述本地缓存的令牌个数小于所述读写操作所需的令牌个数的情况下,分别从多个对象存储守护进程获取令牌,更新所述本地缓存的令牌个数包括:
将从多个所述对...

【专利技术属性】
技术研发人员:杨瑞峰张旭明王豪迈胥昕
申请(专利权)人:星辰天合北京数据科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1