一种负载均衡方法及装置制造方法及图纸

技术编号:12461254 阅读:159 留言:0更新日期:2015-12-06 10:50
本发明专利技术提供了一种负载均衡方法及装置,该方法包括:S1:获取每个磁盘阵列RAID的最大负载权值;S2:获取每个RAID的实际负载值;S3:根据所述每个RAID的最大负载权值和每个RAID的实际负载值计算出每个RAID的分配权值;S4:根据当前调度点可生成的flush IO总数和所述每个RAID的分配权值计算出分配给每个RAID的flush IO的个数。通过本发明专利技术提供的一种负载均衡方法及装置能够提高存储系统的IOPS能力。

【技术实现步骤摘要】

本专利技术涉及存储
,尤其涉及一种负载均衡方法及装置
技术介绍
存储系统一般包括多个RAID (Redundant Arrays of Independent Disks,磁盘阵列),每个 RAID 包含一组 disk(磁盘)。存储系统的 1PS (Input/Output Operat1ns PerSecond,每秒输入输出操作的次数)是下面所有disk的总和,所以要达到系统最高的1PS能力,就要将10 (输入输出)分散到每个disk上。存储系统都使用cache (缓存)来将小的10在cache中拼为大块10往下flush (刷新写缓存)。在包含多个RAID的存储系统中,如何均衡的在每个RAID上生成flush 10 (缓存回写的数据流),决定了 flush 10能否均衡到每个disk上。—般由cache生成的“脏数据” flush 10,都是选择全局的、拼数据大的、非hot的条带往下flush。这个过程要兼顾多个RAID的负载均衡,才能做好10在底层所有disk上的负载均衡。现有的负载均衡方法中,cache生成的flush 10是从全局选取最好(拼数据大、非hot)的条带往下flush。通过上述描述可见,现有的负载均衡方法没有考虑每个RAID实际的10能力不同。
技术实现思路
本专利技术提供了一种负载均衡方法及装置,能够提高存储系统的1PS能力。本专利技术提供了一种负载均衡方法,包括:S1:获取每个磁盘阵列RAID的最大负载权值;S2:获取每个RAID的实际负载值;S3:根据所述每个RAID的最大负载权值和每个RAID的实际负载值计算出每个RAID的分配权值;S4:根据当前调度点可生成的flush 10总数和所述每个RAID的分配权值计算出分配给每个RAID的flush 10的个数。进一步地,还包括:预先设置第一 RAID负载表,所述第一 RAID负载表中包括:所述每个RAID的最大负载权值;所述SI包括:从所述第一 RAID负载表中获取每个RAID的最大负载权值。进一步地,还包括:预先设置第二 RAID负载表,所述第二 RAID负载表中包括:所述每个RAID的实际负载值;所述S2包括:从所述第二 RAID负载表中获取每个RAID的实际负载值。进一步地,还包括:预先设置第三RAID负载表,所述第三RAID负载表中包括:所述每个RAID的最大负载权值和所述每个RAID的实际负载值;所述SI包括:从所述第三RAID负载表中获取每个RAID的最大负载权值;所述S2包括:从所述第三RAID负载表中获取每个RAID的实际负载值。进一步地,所述SI包括:获取每个RAID的每秒输入输出操作的次数1PS ;根据每个RAID的1PS计算出所有RAID的总1PS ;根据每个RAID的1PS和所述总1PS计算出每个RAID的最大负载权值。另一方面,本专利技术提供了一种负载均衡装置,包括:第一获取单元,用于获取每个磁盘阵列RAID的最大负载权值;第二获取单元,用于获取每个RAID的实际负载值;第一计算单元,用于根据所述每个RAID的最大负载权值和每个RAID的实际负载值计算出每个RAID的分配权值;第二计算单元,用于根据当前调度点可生成的flush 1总数和所述每个RAID的分配权值计算出分配给每个RAID的flush 1的个数。进一步地,还包括:第一存储单元,用于存储第一 RAID负载表,所述第一 RAID负载表中包括:所述每个RAID的最大负载权值;所述第一获取单元,具体用于从所述第一 RAID负载表中获取每个RAID的最大负载权值。进一步地,还包括:第二存储单元,用于存储第二 RAID负载表,所述第二 RAID负载表中包括:所述每个RAID的实际负载值;所述第二获取单元,具体用于从所述第二 RAID负载表中获取每个RAID的实际负载值。进一步地,还包括:第三存储单元,用于存储第三RAID负载表,所述第三RAID负载表中包括:所述每个RAID的最大负载权值和所述每个RAID的实际负载值;所述第一获取单元,具体用于从所述第三RAID负载表中获取每个RAID的最大负载权值;所述第二获取单元,具体用于从所述第三RAID负载表中获取每个RAID的实际负载值。进一步地,所述第一获取单元包括:获取子单元,用于获取每个RAID的每秒输入输出操作的次数1PS ;第一计算子单元,用于根据每个RAID的1PS计算出所有RAID的总1PS ;第二计算子单元,用于根据每个RAID的1PS和所述总1PS计算出每个RAID的最大负载权值。本专利技术提供的一种负载均衡方法及装置按照每个RAID当前的实际处理能力来分配flush 10,能够提高存储系统的1PS能力。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种负载均衡方法流程图;图2是本专利技术实施例提供的一种负载均衡装置结构示意图。【具体实施方式】为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例,基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供了一种负载均衡方法,参见图1,包括:S1:获取每个磁盘阵列RAID的最大负载权值;S2:获取每个RAID的实际负载值;S3:根据所述每个RAID的最大负载权值和每个RAID的实际负载值计算出每个RAID的分配权值;S4:根据当前调度点可生成的flush 1总数和所述每个RAID的分配权值计算出分配给每个RAID的flush 1的个数。通过上述实施例按照每个RAID当前的实际处理能力来分配flush 10,能够提高存储系统的1PS能力。在第一种可能的实现方式中,上述的一种负载均衡方法,还包括:预先设置第一RAID负载表,所述第一 RAID负载表中包括:所述每个RAID的最大负载权值;所述SI包括:从所述第一 RAID负载表中获取每个RAID的最大负载权值。在第二种可能的实现方式中,上述的一种负载均衡方法,还包括:预先设置第二RAID负载表,所述第二 RAID负载表中包括:所述每个RAID的实际负载值;所述S2包括:从所述第二 RAID负载表中获取每个RAID的实际负载值。在第三种可能的实现方式中,上述的一种负载均衡方法,还包括:预先设置第三RAID负载表,所述第三RAID负载表中包括:所述每个RAID的最大负载权值和所述每个RAID的实际负载值;所述SI包括:从所述第三RAID负载表中获取每个RAID的最大负载权值;所述S2包括:从所述第三RAID负载表中获取每个RAID的实际负载值。在第四种可能的实现方式中,上述的一种负载均衡方法,所述SI包括:获取每个RAID的每秒输入输出操作的次数1PS ;根据每个RAID的1PS计算出所有RAID的总1PS ;[0当前第1页1 2 本文档来自技高网...

【技术保护点】
一种负载均衡方法,其特征在于,包括:S1:获取每个磁盘阵列RAID的最大负载权值;S2:获取每个RAID的实际负载值;S3:根据所述每个RAID的最大负载权值和每个RAID的实际负载值计算出每个RAID的分配权值;S4:根据当前调度点可生成的flush IO总数和所述每个RAID的分配权值计算出分配给每个RAID的flush IO的个数。

【技术特征摘要】

【专利技术属性】
技术研发人员:王俊
申请(专利权)人:北京神州云科数据技术有限公司
类型:发明
国别省市:北京;11

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

1