一种分布式存储系统处理操作请求的方法及装置制造方法及图纸

技术编号:20763337 阅读:25 留言:0更新日期:2019-04-03 14:08
本发明专利技术公开了一种分布式存储系统处理操作请求的方法,应用于客户端,能够接收操作请求,然后将操作请求分解为多个子操作请求,并确定分别用于处理各个子操作请求的对象存储设备,最后通过网络向各个对象存储设备发送对应的子操作请求,以便对象存储设备处理所述子操作请求。可见,该方法实现了在客户端执行对操作请求的分解,并对分解得到的子操作请求进行分配的目的,避免了将操作请求发送给主OSD再由主OSD进行分配的过程,减小了对主OSD的依赖,提高了处理操作请求的效率。此外,本发明专利技术还提供了一种分布式存储系统处理操作请求的装置、一种客户端及一种分布式存储系统,其作用与上述方法相对应。

【技术实现步骤摘要】
一种分布式存储系统处理操作请求的方法及装置
本专利技术涉及存储领域,特别涉及一种分布式存储系统处理操作请求的方法、装置、客户端及一种分布式存储系统。
技术介绍
分布式存储系统是大量普通PC服务器通过网络互连,作为一个整体对外提供存储服务的系统。分布式存储系统包括用于发起对数据的操作请求客户端,还包括用于存储数据的对象存储设备,对象存储设备即基于对象存储技术的设备(Object-basedStorageDevice),简称OSD。目前,分布式存储系统处理操作请求的过程如图1所示,对象存储设备分为主OSD和从OSD,当客户端发出操作请求时,需要先向主OSD发送操作请求,然后主OSD经过计算确定执行操作请求的多个从OSD,再向这多个从OSD发送子操作请求,只有当从OSD返回结果给主OSD后,主OSD才会向客户端报告处理完成的消息。可见,传统的分布式操作系统处理操作请求的方法需要主OSD进行分配计算,对主OSD计算能力的依赖性较大,操作请求处理效率较低。
技术实现思路
本专利技术的目的是提供一种分布式存储系统处理操作请求的方法、装置、客户端及一种分布式存储系统,用以解决传统的分布式操作系统处理操作请求的方法需要主OSD进行分配计算,对主OSD计算能力的依赖性较大,操作请求处理效率较低的问题。为解决上述技术问题,本专利技术提供了一种分布式存储系统处理操作请求的方法,应用于客户端,包括:接收操作请求;将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备;通过网络向各个所述对象存储设备发送对应的子操作请求,以便所述对象存储设备处理所述子操作请求。可选的,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:当所述操作请求为写请求时,确定待写入的目标数据;对所述目标数据进行纠删码计算,得到包括原始数据块和校验数据块的多个数据块;生成各个所述数据块的子写请求,并确定分别用于处理各个所述子写请求的对象存储设备。可选的,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:当所述操作请求为读请求时,确定待读取的目标数据;根据预设筛选条件,从所述目标数据的数据块中筛选出预设数量的数据块;生成所述预设数量的数据块中各个所述数据块的子读请求,并确定分别用于处理各个所述子读请求的对象存储设备。可选的,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:调用预设osdc模块,将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备。可选的,在所述通过网络向各个所述对象存储设备发送对应的子操作请求,以便所述对象存储设备处理所述子操作请求之后,还包括:接收各个所述对象存储设备对所述子操作请求的处理结果。相应的,本专利技术还提供了一种分布式存储系统处理操作请求的装置,应用于客户端,包括:接收模块:用于接收操作请求;分解模块:用于将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备;发送模块:用于通过网络向各个所述对象存储设备发送对应的子操作请求,以便所述对象存储设备处理所述子操作请求。可选的,所述分解模块包括:目标数据确定单元:用于当所述操作请求为写请求时,确定待写入的目标数据;纠删码计算单元:用于对所述目标数据进行纠删码计算,得到包括原始数据块和校验数据块的多个数据块;子写请求生成单元:用于生成各个所述数据块的子写请求,并确定分别用于处理各个所述子写请求的对象存储设备。可选的,所述分解模块具体用于:调用预设osdc模块,将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备。此外,本专利技术还提供了一种客户端,包括:存储器:用于存储计算机程序;处理器:用于执行所述计算机程序,以实现如上所述的一种分布式存储系统处理操作请求的方法的步骤。最后,本专利技术还提供了一种分布式存储系统,所述分布式存储系统包括多个对象存储设备,还包括如上所述的一种客户端。本专利技术所提供的一种分布式存储系统处理操作请求的方法,应用于客户端,能够接收操作请求,然后将操作请求分解为多个子操作请求,并确定分别用于处理各个子操作请求的对象存储设备,最后通过网络向各个对象存储设备发送对应的子操作请求,以便对象存储设备处理所述子操作请求。可见,该方法实现了在客户端执行对操作请求的分解,并对分解得到的子操作请求进行分配的目的,避免了将操作请求发送给主OSD再由主OSD进行分配的过程,减小了对主OSD的依赖,提高了处理操作请求的效率。此外,本专利技术还提供了一种分布式存储系统处理操作请求的装置、一种客户端及一种分布式存储系统,其作用与上述方法相对应,这里不再赘述。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为目前分布式存储系统处理操作请求的过程示意图;图2为本专利技术所提供的一种分布式存储系统处理操作请求的方法实施例一的实现流程图;图3为本专利技术所提供的一种分布式存储系统处理操作请求的方法实施例一的过程示意图;图4为本专利技术所提供的一种分布式存储系统处理操作请求的方法实施例二的实现流程图;图5为本专利技术所提供的一种分布式存储系统处理操作请求的方法实施例二中分布式系统的架构示意图;图6为本专利技术所提供的一种分布式存储系统处理操作请求的装置实施例的功能框图;图7为本专利技术提供的一种客户端实施例的结构示意图;图8为本专利技术以供的一种分布式存储系统实施例的结构示意图。具体实施方式本专利技术的核心是提供一种分布式存储系统处理操作请求的方法、装置、一种客户端及一种分布式存储系统,实现了在客户端执行对操作请求的分解,并对分解得到的子操作请求进行分配的目的,避免了将操作请求发送给主OSD再由主OSD进行分配的过程,减小了对主OSD的依赖,提高了处理操作请求的效率。为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。下面对本专利技术提供的一种分布式存储系统处理操作请求的方法实施例一进行介绍,实施例一应用于客户端,参见图2,实施例一包括:步骤S101:接收操作请求。需要说明的是,如图3所示,在分布式存储系统中,客户端主要是实现了接口,对外提供访问的功能,上层应用可以通过接口来访问分布式存储系统中存储的数据,即存储在OSD中的数据。具体的,上述操作请求可以是写操作请求或读操作请求,上述操作请求可以由用户发出,也可以是在某种预设条件下自动触发上层应用使其发出的,本实施例对此不做限定。步骤S102:将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备。值得一提的是,在分布式存储系统中,当写入数据的时候,需要对数据进行划本文档来自技高网
...

【技术保护点】
1.一种分布式存储系统处理操作请求的方法,应用于客户端,其特征在于,包括:接收操作请求;将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备;通过网络向各个所述对象存储设备发送对应的子操作请求,以便所述对象存储设备处理所述子操作请求。

【技术特征摘要】
1.一种分布式存储系统处理操作请求的方法,应用于客户端,其特征在于,包括:接收操作请求;将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备;通过网络向各个所述对象存储设备发送对应的子操作请求,以便所述对象存储设备处理所述子操作请求。2.如权利要求1所述的方法,其特征在于,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:当所述操作请求为写请求时,确定待写入的目标数据;对所述目标数据进行纠删码计算,得到包括原始数据块和校验数据块的多个数据块;生成各个所述数据块的子写请求,并确定分别用于处理各个所述子写请求的对象存储设备。3.如权利要求1所述的方法,其特征在于,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:当所述操作请求为读请求时,确定待读取的目标数据;根据预设筛选条件,从所述目标数据的数据块中筛选出预设数量的数据块;生成所述预设数量的数据块中各个所述数据块的子读请求,并确定分别用于处理各个所述子读请求的对象存储设备。4.如权利要求1-3任意一项所述的方法,其特征在于,所述将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备,包括:调用预设osdc模块,将所述操作请求分解为多个子操作请求,并确定分别用于处理各个所述子操作请求的对象存储设备。5.如权利要求4所述的方法,其特征在...

【专利技术属性】
技术研发人员:张露露
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1