一种基于请求处理时间的云存储系统均衡负载的读取方法及系统技术方案

技术编号:21006920 阅读:30 留言:0更新日期:2019-04-30 22:15
本发明专利技术公开了一种基于请求处理时间的云存储系统均衡负载的读取方法:设置请求集合中每个请求的处理状态;将服务器集合中的服务器的负载值拟合为直接,通过直线的斜率判断服务器集合中的所有服务器的负载是否发生了倾斜;当服务器集合中的服务器的负载没有倾斜时,将处理能力属性最低值的服务器分配给长度属性值最小的请求;若请求的状态为第一级处理状态,确认请求副本所在的服务器,优先选择处理能力属性最低值的服务器分配给请求;当服务器集合中的服务器的负载有倾斜时,选取负载值低于服务器集合中所有服务器的平均负载的所有低负载服务器,优先选择当前请求集合中长度属性值最小的请求分配给低负载服务器中的服务器。

A Load Balancing Reading Method and System for Cloud Storage System Based on Request Processing Time

【技术实现步骤摘要】
一种基于请求处理时间的云存储系统均衡负载的读取方法及系统
本专利技术涉及网络应用
,更具体地,涉及一种基于请求处理时间的云存储系统均衡负载的读取方法及系统。
技术介绍
近年来,互联网的发展改变了人们的生活方式,大量数据密集合型应用应运而生,越来越多的领域和行业需要存储和管理大规模的数据。数据的形式多变、复杂性高,传统单一的存储方式无法应对海量数据的存储和管理,云存储技术得以快速发展。云存储是在云计算技术的基础上发展而来的,云计算是一种利用互联网实现随时随地、按需、便捷地访问共享资源池的计算模式,其目标在于,通过网络将大型的计算任务分割成若干较小的计算任务,分配给多台服务器共同处理。因此,云计算系统是一个以数据运算和处理为核心的系统,而当云计算系统的核心是数据的存储和管理时,云计算系统就需要设备管理和数据存储的相关技术。云存储通过网格技术、分布式文件系统、集合群应用等关键技术,整合网络中异构的存储资源,并通过一定的接口,对外提供统一的数据存储服务和数据访问服务。在web时代,云存储及时与应用软件的结合为互联网用户带来了便利的服务,并有效保证了数据的可用性、安全性。对象存储技术以对象为单元,对象大小不固定,并且对象存储设备承担了部分文件系统底层的功能,具有优良的自治功能。因此,基于对象存储技术开发的存储系统可以提供一个具有商性能、易扩展、易共享、可容错的存储环境。开源云平台openstack的对象云存储系统Swift,属于云存储技术的一种,适合存储永久类型的静态数据。Swift的体系结构可以分为两层:访问层和存储层。访问层主要包含代理服务器和认证,分别处理RESTful请求和用户身份认证。存储层由物理存储节点组成,负责对象数据的存储。云存储系统Swift在网盘应用、存储资源池、集合中备份、归档和分级存储等其他应用场景中也有着广泛的应用。云存储系统Swift在对性能普通且类型不同的存储设备进行统一的管理,虚拟成统一的存储池,并通过一致性哈希算法和文件副本策略,构建出易扩展的、无单点故障的、可容灾的分布式文件存储系统。云存储系统Swift是一种对象存储系统,存储单元是对象。对象包括数据和元数据,数据是用户数据,元数据是对象属性,元数据与传统的inode数据相似,包括与对象相关的如时间戳、在磁盘上的逻辑分布、数据块和对象的长度等属性。对于用户而言,通过发送HTTP请求和云存储系统Swift进行交互。用户可以将数据作为一个对象发送给云存储系统Swift,也可以从云存储系统Swift中以一个对象的形式读取数据。用户无需关心对象的存储形式和存储位置。云存储系统Swift也是一个分布式存储系统,采用可扩展的系统结构,利用多台分布在不同位置的存储设备,通巧网络通信将所有存储设备连接起来共同提供数据存储服务。分布式存储系统与传统的集合中存储系统相比,适合承担海量数据的存储和管理,能够提高存储系统的稳定性、可用性和存储效率。在云存储系统Swift中通过Nwr策略来控制一致性级别,在实际的分布式存储系统中,Nwr的取值与环境密切相关。Nwr的默认配置为n=3,w=2,r=2,即默认每个对象的副本个数为3,写操作需要确保成功写入2个副本才算成功,另一副本可由系统自动更新,读操作需要确保成功读取2个副本才算成功,取最新版本的副本返回给用户。用户在使用云存储系统Swift时,并不是直接地访问某一台服务器,而是访问不同种类的服务器共同构建的存储池。云存储系统Swift将用户请求分配到各服务器上,由各服务器共同完成用户的请求。因此,在云存储系统Swift中,完成用户请求的速度与每一个服务器都息息相关。然而,云存储系统Swift在处理用户的读取请求时,却随机地为请求选择服务器。这种做法未考虑各服务器的实时负载、请求之间的差异,容易造成读取请求阻塞在某些服务器上,而另外一部分服务器却空闲的情况,从而无法有效地利用各服务器,影响用户请求的处理速度。因此,需要一种技术,以解决基于请求处理时间的云存储系统Swift均衡负载的读取的问题。
技术实现思路
本专利技术提供了一种基于请求处理时间的云存储系统均衡负载的读取的方法和系统,以解决如何基于请求处理时间对云存储系统均衡负载进行读取的问题。为了解决上述问题,本专利技术提供了一种基于请求处理时间的云存储系统均衡负载的读取方法,设置请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;利用最小二乘法,将服务器集合中的服务器的负载值拟合为直线,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;当所述服务器集合中的服务器的负载没有倾斜时,将处理能力属性最低值的服务器分配给长度属性值最小的请求,并更新所述分配请求后的服务器的处理能力属性值;对所述请求的状态进行更新,若所述请求的状态为第二级处理状态,则更新所述请求的状态为第三级状态;若所述请求的状态为第一级处理状态,确认所述请求的副本所在的服务器,优先选择处理能力属性最低值的服务器,并将所述请求分配给所述处理能力属性最低值的服务器,并将所述请求的状态更新为第二级处理状态;本专利技术提供了一种基于请求处理时间的云存储系统均衡负载的读取方法,设置请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;利用最小二乘法,将服务器集合中的服务器的负载值拟合为直线,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;当所述服务器集合中的服务器的负载有倾斜时,选取负载值低于所述服务器集合中所有服务器的平均负载的所有低负载服务器,组成低负载服务器集合,优先选择当前请求集合中长度属性值最小的请求分配给所述低负载服务器中的服务器,并更新所述分配请求后的服务器的处理能力属性值,获取所述请求的处理状态,将所述请求的第一级处理状态更新为第二级处理状态,或将所述请求的第二级处理状态更新为第三级处理状态。优选地,还包括:获取多个请求,将多个请求记为请求集合;将多个服务器记为服务器集合。优选地,设置所述请求集合中的多个请求中每个请求的长度属性,所述长度属性用于记录所述请求集合中对应请求的长度;设置所述服务器集合中的多个服务器中每个服务器的处理能力属性,所述处理能力属性用于记录所述服务器集合中对应服务器的处理能力。优选地,还包括:对所述请求集合中的多个请求和服务器集合的多个服务器进行排序,建立所述请求集合和服务器集合的二维矩阵。优选地,所述二维矩阵的行为按照当前负载排序后的服务器集合,所述二维矩阵的行数为所述服务器集合的大小;所述二维矩阵的列为按照长度排序后的请求集合,所述二维矩阵的列数为所述请求集合的大小。基于本专利技术的另一方面,提供一种基于请求处理时间的云存储系统均衡负载的读取系统,状态记录单元,用于设置所述请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;负载判断单元,用于利用最小二乘法,将所述服务器集合中的服务器的负载值拟合为直接,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;第一处理单元,用于当所述服务器集合中的服务器的负载没有倾斜时,将处理能力属性最低值的服务器分配给长度属性值最小的请本文档来自技高网
...

【技术保护点】
1.一种基于请求处理时间的云存储系统均衡负载的处理方法,设置请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;利用最小二乘法,将服务器集合中的服务器的负载值拟合为直线,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;当所述服务器集合中的服务器的负载没有倾斜时,将处理能力属性最低值的服务器分配给长度属性值最小的请求,并更新所述分配请求后的服务器的处理能力属性值;对所述请求的状态进行更新,若所述请求的状态为第二级处理状态,则更新所述请求的状态为第三级处理状态;若所述请求的状态为第一级处理状态,确认所述请求的副本所在的服务器,优先选择处理能力属性最低值的服务器,并将所述请求分配给所述处理能力属性最低值的服务器,并将所述请求的状态更新为第二级处理状态。

【技术特征摘要】
1.一种基于请求处理时间的云存储系统均衡负载的处理方法,设置请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;利用最小二乘法,将服务器集合中的服务器的负载值拟合为直线,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;当所述服务器集合中的服务器的负载没有倾斜时,将处理能力属性最低值的服务器分配给长度属性值最小的请求,并更新所述分配请求后的服务器的处理能力属性值;对所述请求的状态进行更新,若所述请求的状态为第二级处理状态,则更新所述请求的状态为第三级处理状态;若所述请求的状态为第一级处理状态,确认所述请求的副本所在的服务器,优先选择处理能力属性最低值的服务器,并将所述请求分配给所述处理能力属性最低值的服务器,并将所述请求的状态更新为第二级处理状态。2.一种基于请求处理时间的云存储系统均衡负载的处理方法,设置请求集合中每个请求的处理状态,所述处理状态包括:第一级处理状态、第二级处理状态以及第三级处理状态;利用最小二乘法,将服务器集合中的服务器的负载值拟合为直线,通过所述直线的斜率判断所述服务器集合中的所有服务器的负载是否发生了倾斜;当所述服务器集合中的服务器的负载有倾斜时,选取负载值低于所述服务器集合中所有服务器的平均负载的所有低负载服务器,组成低负载服务器集合,优先选择当前请求集合中长度属性值最小的请求分配给所述低负载服务器集合中的服务器,并更新所述分配请求后的服务器的处理能力属性值,获取所述请求的处理状态,将所述请求的第一级处理状态更新为第二级处理状态,或将所述请求的第二级处理状态更新为第三级处理状态。3.根据权利要求1或2所述的方法,还包括:获取多个请求,将多个请求记为请求集合;将多个服务器记为服务器集合。4.根据权利要求3所述的方法,设置所述请求集合中的多个请求中每个请求的长度属性,所述长度属性用于记录所述请求集合中对应请求的长度;设置所述服务器集合中的多个服务器中每个服务器的处理能力属性,所述处理能力属性用于记录所述服务器集合中对应服务器的处理能力。5.根据权利要求4所述的方法,还包括:对所述请求集合中的多个请求和服务器集合的多个服务器进行排序,建立所述请求集合和服务器集合的二维矩阵。6.根据权利要求5所述的方法,所述二维矩阵的行为按照当前负载排序后的服务器集合,所述二维矩阵的行数为所述服务器集合的大小;所述二维矩阵的列为按照长度排序后的请求集合,所述二维矩阵的列数为所述请求集合的大小。7.一种基于请求处理时间的云存储系统均衡负载的处理系统,状态记录单元,用于设置所述请求集...

【专利技术属性】
技术研发人员:张浩林文辉高哲杨为琛
申请(专利权)人:航天信息股份有限公司
类型:发明
国别省市:北京,11

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

1