一种云计算平台中负载均衡存储的方法和系统的利记博彩app

文档序号:7995368阅读:201来源:国知局
一种云计算平台中负载均衡存储的方法和系统的利记博彩app
【专利摘要】本发明公开了一种云计算平台中负载均衡存储的方法和系统,该方法包括将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,所述优先级数值大于0;当收到数据存储请求时,对优先级数值GCARRY大于0的存储数据服务器组按照优先级数值GCARRY进行排序;选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组;在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据。本发明的技术方案能够提高系统整体处理性能,实现负载均衡,提高分布式文件系统的容错能力。
【专利说明】一种云计算平台中负载均衡存储的方法和系统
【技术领域】
[0001]本发明涉及云计算【技术领域】,尤其涉及一种云计算平台中负载均衡存储的方法和系统。
【背景技术】
[0002]分布式云存储是一种为云存储服务而设计的集群存储系统,用户可以不关心文件的实际物理位置,仅通过一定的逻辑关系就可以查找和访问网络的文件资源。用户能够像访问本地文件一样,访问分布在网络中多个服务器上的文件,并提供PB级的存储容量,实现文件系统存储虚拟化。
[0003]存储资源负载均衡是指在分布式文件系统中存储文件数据块时,对存储数据服务器磁盘的剩余容量、总容量等因子进行关联计算选择,按照优先级将数据均匀地分散到每一个存储数据服务器节点的处理机制。
[0004]但是目前的云计算平台中存储资源负载均衡的技术方案存在以下问题:
[0005]1、存储数据服务器负载不均衡。传统分布式存储模式下,总存储空间大的服务器会存储更多的数据,单节点存储的数据多少只和服务器总空间有关系,和可用空间没有任何关系。在每台存储数据服务器总空间差不多的情况下,数据能较好地均衡分布存储,但无法解决总存储空间差异较大条件下的均衡分布存储,影响了存储数据服务器的利用率,也增加了数据读写IO阻塞情况,读写文件性能降低,降低了磁盘使用寿命。
[0006]2、没有存储数据服务器分组负载均衡能力。存储数据服务器不分组,处于同一环境中,比如同一机房,如果机房掉电,那么该机房中存储数据服务器都不能访问,尽管其他机房的存储数据服务器可以正常访问。此场景下,分布式文件系统中会出现部分文件不能访问的情况。
[0007]3、不利于跨网络段存储均衡。按照整个存储集群进行存储,多个副本存储在各个存储节点,当跨网段部署时,存储效率低。

【发明内容】

[0008]为了解决现有技术中存在的技术问题,本发明提出一种云计算平台中负载均衡存储的方法和系统,能够提高系统整体处理性能,实现负载均衡,提高分布式文件系统的容错能力。
[0009]本发明一方面提供了一种云计算平台中负载均衡存储的方法,包括以下步骤:
[0010]将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,所述优先级数值大于O ;
[0011 ] 当收到数据存储请求时,对优先级数值GCARRY大于O的存储数据服务器组按照优先级数值GCARRY进行排序;
[0012]选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组;[0013]在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据。
[0014]本发明的另一个方面提供一种云计算平台中负载均衡存储的系统,包括存储数据服务器、配置模块、排序模块和选择模块,其中,
[0015]配置模块用于将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,所述优先级数值大于O ;
[0016]排序模块用于当收到数据存储请求时,对优先级数值GCARRY大于O的存储数据服务器组按照优先级数值GCARRY进行排序;
[0017]选择模块用于选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组,还用于在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据;
[0018]存储数据服务器用于作为首选存储分组中的存储数据服务器存储主数据,作为容灾存储分组中的存储数据服务器存储副本数据。
[0019]本发明的技术方案由于对存储数据服务器进行分组设计,可以保证数据按照既定优先级策略存放到首选的存储分组,以便提高系统处理性能和资源利用率;这种设计也存在简洁和均衡的优点,保障了组内数据块的均衡分布;并通过副本数据存放在容灾组,保证了某个组所有存储数据服务器发生异常时,不影响数据的丢失和恢复,从而保证分布式文件系统容错能力。
【专利附图】

【附图说明】
[0020]图1是本发明实施例一中云计算平台中负载均衡存储的流程图。
[0021]图2是本发明实施例一中首选存储分组内负载均衡存储的流程图。
[0022]图3是本发明实施例一中容灾存储分组内负载均衡存储的流程图。
[0023]图4是本发明实施例二中云计算平台中负载均衡存储的系统的结构示意图。
【具体实施方式】
[0024]下面结合附图对本发明的【具体实施方式】进行详细描述。
[0025]本发明的技术方案支持云计算平台根据灵活的策略对存储数据服务器进行分组,实现数据存储既能体现既定的人为设置策略,又能保障分布式文件系统的容错恢复能力;同时,也能保障数据均匀地分散到每一个存储数据服务器上面。
[0026]首先,支持对存储数据服务器按策略分组(如相近存储空间、相同的物理或网络部署、相近的计算处理能力等),支持从逻辑上(如相近计算或存储能力的一批存储节点)或物理上(如同一子网段内,或部署在同一局房位置内)将多个存储数据服务器划分成不同的逻辑组。
[0027]其次,定义基于组的存储能力优先级GCARRY,GCARRY表示该组具有的存储能力水平。存储数据时先根据GCARRY排序分别选定优先存储组,以保障主数据存储体现分组策略;
[0028]同时,当同一数据复制存放多个副本时,确保一个副本在存放于高优先级分组外的其他组,避免高优先级组的全部存储节点均发生故障时数据无法恢复。
[0029]数据在完成组选择后,在组内选择存储节点时遵从存储能力优先级CARRY计算规则。
[0030]图1是本发明实施例一中云计算平台中负载均衡存储的流程图。如图1所示,该流程包括以下步骤:
[0031]步骤101、将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,该优先级数值大于O且不重复,是根据人为存储策略配置。
[0032]步骤102、当存储数据服务器组中每个存储数据服务器可用的剩余存储空间小于预设阈值(如1G),或者存储数据服务器组不可访问时,该存储数据服务器组的优先级数值GCARRY 改为 O。
[0033]步骤103、当收到数据存储请求时,对优先级数值GCARRY大于O的存储数据服务器组按照优先级数值GCARRY进行排序。
[0034]步骤104、选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组。
[0035]步骤105、在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据。
[0036]数据在完成存储数据服务器组选择后,在首选存储分组或者容灾存储分组内选择存储数据服务器遵从存储能力优先级CARRY计算规则。
[0037]图2是本发明实施例一中首选存储分组内负载均衡存储的流程图。如图2所示,该首选存储分组内负载均衡存储的流程包括以下步骤:
[0038]步骤201、给首选存储分组中每个存储数据服务器设置存储能力优先级数值CARRY,该存储能力优先级数值CARRY初始化为一个O到I间的随机数。
[0039]步骤202、当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
[0040]CARRY [new] = CARRY [old]+W,
[0041]其中,CARRY [new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例,
[0042]W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间),
[0043]其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值。
[0044]步骤203、如果所有存储数据服务器的新的存储能力优先级数值CARRY[new]都小于1,则重复步骤202,直到有的存储数据服务器的新的存储能力优先级数值CARRY[new]大于等于1,并转至步骤204。
[0045]步骤204、对所有存储数据服务器的新的存储能力优先级数值CARRY[new]进行排序,选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储主数据。
[0046]步骤205、存储主数据完成后,采用以下公式更新用于存储主数据的存储数据服务器的存储能力优先级数值CARRY:
[0047]CARRY [new] = CARRY [old]-1。
[0048]当有新的数据存储请求时,从步骤203开始重复。[0049]在容灾存储分组内选择存储数据服务器遵从存储能力优先级CARRY计算规则与首选存储分组基本类似。图3是本发明实施例一中容灾存储分组内负载均衡存储的流程图。如图3所示,该容灾存储分组内负载均衡存储的流程包括以下步骤:
[0050]步骤301、给容灾存储分组中每个存储数据服务器设置存储能力优先级数值CARRY,该存储能力优先级数值CARRY初始化为一个O到I间的随机数。
[0051]步骤302、当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
[0052]CARRY [new] = CARRY [old]+W,
[0053]其中,CARRY [new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例,
[0054]W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间),
[0055]其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值。
[0056]步骤303、如果所有存储数据服务器的新的存储能力优先级数值CARRY[new]都小于1,则重复步骤302,直到有的存储数据服务器的新的存储能力优先级数值CARRY[new]大于等于1,并转至步骤304。
[0057]步骤304、对所有存储数据服务器的新的存储能力优先级数值CARRY[new]进行排序,选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储副本数据。
[0058]步骤305、存储副本数据完成后,采用以下公式更新用于存储副本数据的存储数据服务器的存储能力优先级数值CARRY:
[0059]CARRY [new] = CARRY [old]-1。
[0060]当有新的数据存储请求时,从步骤303开始重复。
[0061]为了实现上述流程,本发明的另一个实施例还提供了一种云计算平台中负载均衡存储的系统。图4是本发明实施例二中云计算平台中负载均衡存储的系统的结构示意图。如图4所示,该系统包括存储数据服务器401、配置模块402、判断模块403、计算模块404、排序模块405和选择模块406。
[0062]配置模块用于将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,该优先级数值大于0,配置模块还用于给每个存储数据服务器设置存储能力优先级数值CARRY,该存储能力优先级数值CARRY初始化为一个O到I间的随机数。
[0063]判断模块用于判断存储数据服务器组中每个存储数据服务器可用的剩余存储空间是否小于预设阈值,或者存储数据服务器组是否不可访问,判断模块还用于判断存储数据服务器的新的存储能力优先级数值CARRY[new]是否小于I。
[0064]计算模块用于当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
[0065]CARRY [new] = CARRY [old]+W,
[0066]其中,CARRY [new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例,
[0067]W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间),[0068]其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值;
[0069]计算模块还用于存储主数据完成后,采用以下公式更新所述用于存储主数据的存储数据服务器的存储能力优先级数值CARRY:
[0070]CARRY [new] = CARRY [old]-10
[0071]排序模块用于当收到数据存储请求时,对优先级数值GCARRY大于0的存储数据服务器组按照优先级数值GCARRY进行排序,排序模块还用于对所有存储数据服务器的新的存储能力优先级数值CARRY [new]进行排序。
[0072]选择模块用于选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组,还用于在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据,选择模块还用于选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储数据。
[0073]存储数据服务器用于作为首选存储分组中的存储数据服务器存储主数据,作为容灾存储分组中的存储数据服务器存储副本数据。
[0074]上述技术方案能够支持灵活的分组策略设置,保障数据首选存放在高性能组节点,以提高系统整体处理性能,并实现组内的负载均衡,同时通过副本数据存放在容灾存储分组,保证了某个组所有存储数据服务器发生异常时,不影响数据的丢失和恢复,从而保证分布式文件系统容错能力。
[0075]应说明的是:以上实施例仅用以说明本发明而非限制,本发明也并不仅限于上述举例,一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围中。
【权利要求】
1.一种云计算平台中负载均衡存储的方法,其特征在于,包括以下步骤: 将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,所述优先级数值大于O ; 当收到数据存储请求时,对优先级数值GCARRY大于O的存储数据服务器组按照优先级数值GCARRY进行排序; 选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组; 在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据。
2.根据权利要求1所述的一种云计算平台中负载均衡存储的方法,其特征在于,还包括以下步骤: 当存储数据服务器组中每个存储数据服务器可用的剩余存储空间小于预设阈值,或者存储数据服务器组不可访问时,所述存储数据服务器组的优先级数值GCARRY改为O。
3.根据权利要求2所述的一种云计算平台中负载均衡存储的方法,其特征在于,预设阈值为IG。
4.根据权利要求1-3中任一权利要求所述的一种云计算平台中负载均衡存储的方法,其特征在于,在首选存储 分组中选择存储数据服务器存储主数据,进一步包括以下步骤: A、给首选存储分组中每个存储数据服务器设置存储能力优先级数值CARRY,所述存储能力优先级数值CARRY初始化为一个O到I间的随机数; B、当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]+W, 其中,CARRY[new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例, W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间), 其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值; C、如果所有存储数据服务器的新的存储能力优先级数值CARRY[new]都小于1,则重复步骤B,直到有的存储数据服务器的新的存储能力优先级数值CARRY[new]大于等于I ; D、对所有存储数据服务器的新的存储能力优先级数值CARRY[new]进行排序,选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储主数据。
5.根据权利要求4所述的一种云计算平台中负载均衡存储的方法,其特征在于,还包括以下步骤: 存储主数据完成后,采用以下公式更新所述用于存储主数据的存储数据服务器的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]-1。
6.根据权利要求1-3中任一权利要求所述的一种云计算平台中负载均衡存储的方法,其特征在于,在容灾存储分组中选择存储数据服务器存储副本数据,进一步包括以下步骤:A、给容灾存储分组中每个存储数据服务器设置存储能力优先级数值CARRY,所述存储能力优先级数值CARRY初始化为一个O到I间的随机数; B、当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]+W, 其中,CARRY[new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例, W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间), 其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值; C、如果所有存储数据服务器的新的存储能力优先级数值CARRY[new]都小于1,则重复步骤B,直到有的存储数据服务器的新的存储能力优先级数值CARRY[new]大于等于I ; D、对所有存储数据服务 器的新的存储能力优先级数值CARRY[new]进行排序,选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储副本数据。
7.根据权利要求6所述的一种云计算平台中负载均衡存储的方法,其特征在于,还包括以下步骤: 存储副本数据完成后,采用以下公式更新所述用于存储副本数据的存储数据服务器的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]-1。
8.—种云计算平台中负载均衡存储的系统,其特征在于,包括存储数据服务器、配置模块、排序模块和选择模块,其中, 配置模块用于将存储数据服务器进行分组,并给每个存储数据服务器组设置不同的优先级数值GCARRY,所述优先级数值大于O ; 排序模块用于当收到数据存储请求时,对优先级数值GCARRY大于O的存储数据服务器组按照优先级数值GCARRY进行排序; 选择模块用于选择其中优先级数值GCARRY最大的存储数据服务器组作为首选存储分组,选择优先级数值GCARRY第二大的存储数据服务器组作为容灾存储分组,还用于在首选存储分组中选择存储数据服务器存储主数据,在容灾存储分组中选择存储数据服务器存储副本数据; 存储数据服务器用于作为首选存储分组中的存储数据服务器存储主数据,作为容灾存储分组中的存储数据服务器存储副本数据。
9.根据权利要求8所述的一种云计算平台中负载均衡存储的系统,其特征在于,还包括判断模块,判断模块用于判断存储数据服务器组中每个存储数据服务器可用的剩余存储空间是否小于预设阈值,或者存储数据服务器组是否不可访问。
10.根据权利要求9所述的一种云计算平台中负载均衡存储的系统,其特征在于,还包括计算模块, 配置模块还用于给每个存储数据服务器设置存储能力优先级数值CARRY,所述存储能力优先级数值CARRY初始化为一个O到I间的随机数; 计算模块用于当收到数据存储请求时,采用以下公式计算每个存储数据服务器新的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]+W, 其中,CARRY[new]是存储数据服务器新的存储能力优先级数值,CARRY [old]是存储数据服务器老的存储能力优先级数值,W是存储数据服务器的空闲空间比例, W = TOTALSPACE/MAXTOTALSPACE (最大磁盘总空间), 其中TOTALSPACE是存储数据服务器当前可用磁盘总空间,MAXTOTALSPACE是所有存储数据服务器的当前可用磁盘总空间的最大值; 判断模块还用于判断存储数据服务器的新的存储能力优先级数值CARRY[new]是否小于I ; 排序模块还用于对所有存储数据服务器的新的存储能力优先级数值CARRY[new]进行排序; 选择模块还用于选取新的存储能力优先级数值CARRY[new]最大的存储数据服务器,存储数据。
11.根据权利要求10所述的一种云计算平台中负载均衡存储的系统,其特征在于,所述计算模块还用于存储主数据完成后,采用以下公式更新所述用于存储主数据的存储数据服务器的存储能力优先级数值CARRY:
CARRY[new] = CARRY[old]-1。
【文档编号】H04L29/08GK103929454SQ201310014272
【公开日】2014年7月16日 申请日期:2013年1月15日 优先权日:2013年1月15日
【发明者】陈刚, 梅松, 赵勇, 梁宇, 何淼, 沈哲, 伍洛宾, 陈湘 申请人:中国移动通信集团四川有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1