文件副本均衡分布的方法、装置及系统的制作方法

文档序号:7750923阅读:145来源:国知局
专利名称:文件副本均衡分布的方法、装置及系统的制作方法
技术领域
本发明涉及分布式存储领域,特别涉及一种文件副本均衡分布的方法、装置及系 统。
背景技术
在分布式存储环境下,存在多个存储设备,每个存储设备上存在多个分卷。一个文 件为了数据安全性和文件访问效率可能存在不同数目的副本,副本需要均勻分布在不同设 备的不同分卷上,此时,既要保证存储设备和分卷的使用率均衡,同时要最大程度避免一个 文件的多个副本聚集在某个存储设备或是分卷上。为此需要提出一种文件副本的均衡分布 的技术方案,保证以上需求。

发明内容
为了实现文件副本的均衡分布,提高数据的安全性,本发明实施例提供了一种文 件副本均衡分布的方法、装置及系统,技术方案如下一种文件副本均衡分布的方法,包括控制服务器接收包含文件副本个数的写文件副本请求,根据所述写文件副本请求 和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储服务器 发送包含文件副本存储位置的文件副本写入指令;所述存储服务器根据所述文件副本写入指令获取文件副本,并写入存储设备的指 定分卷。进一步地,该方法还包括所述控制服务器在文件副本分布出现不均衡时,根据文 件副本均衡分布因子和文件副本个数进行再均衡的步骤。进一步地,该方法还包括所述控制服务器控制写入文件副本写入速率的步骤,包 括假设存储设备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成后,根据 分卷映像中分卷的选中计数,分别进行分卷链表和存储设备链表的重新排序,其中,i和j 的取值范围为大于或等于1的自然数,其中,存储设备节点加权选中计数为select^ = select_n_l+(multi*right)*( —it中的 volumn ),胃中,select_n H n cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分另ll第 n 个 cluster的权重倍数和权重,n为大于或等于1的自然数。进一步地,所述根据分卷映像中分卷的选中计数,进行存储设备链表的重新排序, 包括重新计算被选中的存储设备节点加权选中计数,将被选中的存储设备节点移除, 将被移除的存储设备节点重新插入所述存储设备链表。进一步地,所述根据分卷映像中分卷的选中计数,进行分卷链表的重新排序,包 括
判断链表头节点选中计数是否为起始计数值,如果不是,则判断链表头选中计数 是否大于起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数值加预设值, 并从分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界,将链表分为两 段,将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表头节点,找到第 一个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段,将两段链表交换 顺序,重新组合。进一步地,所述文件副本均衡分布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和 存储服务器带宽使用率。一种文件副本均衡分布的装置,包括接收单元,用于接收包含文件副本个数的写文件副本请求;分配单元,用于根据所述写文件副本请求和文件副本均衡分布因子对文件副本进 行存储位置分配;发送单元,用于所述分配单元在分配完成后,向存储服务器发送包含文件副本存 储位置的文件副本写入指令,使所述存储服务器根据所述文件副本写入指令获取文件副 本,并写入存储设备的指定分卷。进一步地,所述分配单元,还用于在文件副本分布出现不均衡时,根据文件副本均 衡分布因子和文件副本个数进行再均衡的步骤。进一步地,所述分配单元,还用于控制写入文件副本写入速率,具体地,假设存储 设备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成后,根据分卷映像中分卷的 选中计数select,分别进行分卷链表和存储设备链表的重新排序,其中,i和j的取值范 围为大于或等于1的自然数,其中,存储设备节点加权选中计数为select^ = select, n_l+(multi*right)*( —it中的 volumn ),胃中,select_n H n cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分另ll第 n 个 cluster 的权重倍数和权重,n为大于或等于1的自然数。进一步地,所述分配单元根据分卷映像中分卷的选中计数,进行存储设备链表的 重新排序,包括所述分配单元重新计算被选中的存储设备节点加权选中计数,将被选中的存储设 备节点移除,将被移除的存储设备节点重新插入所述存储设备链表。进一步地,所述分配单元根据分卷映像中分卷的选中计数,进行分卷链表的重新 排序,包括所述分配单元判断链表头节点选中计数是否为起始计数值,如果不是,则判断链 表头选中计数是否大于起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数 值加预设值,并从分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界, 将链表分为两段,将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表 头节点,找到第一个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段, 将两段链表交换顺序,重新组合。进一步地,所述文件副本均衡分布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和
5存储服务器带宽使用率。一种文件副本均衡分布的系统,包括控制服务器,用于接收包含文件副本个数的写文件副本请求,根据所述写文件副 本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储 服务器发送包含文件副本存储位置的文件副本写入指令;所述存储服务器,用于根据所述文件副本写入指令获取文件副本,并写入存储设 备的指定分卷。在本发明的技术方案中,控制服务器接收包含文件副本个数的写文件副本请求, 根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分 配完成后,向存储服务器发送包含文件副本存储位置的文件副本写入指令,使存储服务器 根据文件副本写入指令获取文件副本,并写入存储设备的指定分卷,可以实现文件副本均 衡分布,提高数据的安全性,有利于业务的开展。


图1是本发明实施例提供的一种文件副本均衡分布的方法的流程图;图2是本发明实施例的应用场景架构和数据流图;图3是本发明实施例提供的存储设备的数据抽象;图4是本发明实施例提供的基于分卷映像的volumn选择顺序示意图;图5是本发明实施例提供的cluster链表重排流程图;图6是本发明实施例提供的volumn链表重排流程图;图7是本发明实施例提供的系统存储空间再均衡流程图;图8是本发明实施例提供的基于分卷映像的volumn选择实例示意图;图9是本发明实施例提供的重排后的存储设备数据抽象图;图10是本发明实施例提供的一种文件副本均衡分布的装置的结构图;图11是本发明实施例提供的一种文件副本均衡分布的系统的结构图。
具体实施例方式本发明的核心思想在于,控制服务器接收包含文件副本个数的写文件副本请求, 根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分 配完成后,向存储服务器发送包含文件副本存储位置的文件副本写入指令,使存储服务器 根据文件副本写入指令获取文件副本,并写入存储设备的指定分卷,可以实现文件副本均 衡分布,提高数据的安全性,有利于业务的开展。本发明提供了一种文件副本均衡分布的方法,如图1所示,包括101,控制服务器接收包含文件副本个数的写文件副本请求,根据写文件副本请求 和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储服务器 发送包含文件副本存储位置的文件副本写入指令;102,存储服务器根据文件副本写入指令获取文件副本,并写入存储设备的指定分卷。进一步地,该方法还包括该控制服务器在文件副本分布出现不均衡时,根据文件副本均衡分布因子和文件副本个数进行再均衡的步骤。进一步地,该方法还包括该控制服务器控制写入文件副本写入速率的步骤,包 括假设存储设备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成后,根据 分卷映像中分卷的选中计数select,分别进行分卷链表和存储设备链表的重新排序,其中, i和j的取值范围为大于或等于1的自然数,其中,存储设备节点加权选中计数为select^ =select_n_l+(multi*right) * (被选中的 volumn 数目),其中,select_n 第 n 个 cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分另ij第 n 个 cluster的权重倍数和权重,n为大于或等于1的自然数。进一步地,该根据分卷映像中分卷的选中计数,进行存储设备链表的重新排序,包 括重新计算被选中的存储设备节点加权选中计数,将被选中的存储设备节点移除, 将被移除的存储设备节点重新插入该存储设备链表。进一步地,根据分卷映像中分卷的选中计数,进行分卷链表的重新排序,包括判断链表头节点选中计数是否为起始计数值,如果不是,则判断链表头选中计数 是否大于1起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数值加预设 值,并从分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界,将链表分 为两段,将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表头节点,找 到第一个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段,将两段链表 交换顺序,重新组合。其中,选中计数是非负整数。其中,文件副本均衡分布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和 存储服务器带宽使用率。下面结合附图以及具体的实施例对本发明实施例进行详细的描述。本发明实施例提出一种文件副本均衡分布的方法,该方法可以对文件副本进行均 衡分布,以及在系统出现设备更换,异常情况时的对文件副本再均衡方法。该方法应用的系 统架构如图2所示,包括控制服务器用以管理文件副本存储位置分配,并通知存储服务器 进行文件副本写入;存储服务器,用以根据控制服务器的通知在存储设备的分卷上写入文 件副本;存储设备,用以存储文件副本。其中,控制服务器对存储位置的分配为本发明的关 键步骤,可以包括如下部分1)存储设备的数据抽象。根据存储设备(cluster)和分卷(volumn)的从属关系,以及分级管理的需要,使 用存储设备和分卷两级链表来进行管理,具体的组织结构如附图3所示,下面对数据抽象 的链表结构和节点属性进行说明cluster链表数为1,链表节点数为系统中可用的cluster数。volumn链表数为cluster数。每个volumn链表的节点数,为cluster上可用的 volumn 数。cluster权重(right)为cluster下挂volumn数目的最小公倍数除以volumn的
7数目,该权重描述cluster下的volumn每选中一次,对于cluster节点排序的影响大小。 以cluster服务能力相同为例,假如没有这个参数,因为分卷数不同,会造成cluster负载 与分卷数成正比,所以需要此参数来抵消分卷数差异的影响。进一步,当cluster服务能力 有差异时,只需在上述基础上乘上服务能力的比例即可。cluster权重倍数(multi)用于控制cluster节点在链表中的位置变化快慢,以 达到控制存储设备选中概率的目的。通过加大或减小权重倍数,可以影响cluster节点的 升降快慢,从而影响选中概率。cluster加权选中计数(select)用于标识cluster的负荷轻重,数值大,代 表负荷大,数值小,代表负荷小,其等于cluster权重(right)与权重倍数(multi)乘 积的加权和,用于cluster节点排序,其中,加权和公式可以是select) = select, n_l+(multi*right)*( —it中的 volumn ),胃中,select_n H n cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为第 n 个 cluster 的权 重倍数和权重,n为大于或等于1的自然数。cluster链表的排序采用cluster加权选中计数(select)升序排序,以保证优 选负荷最轻的cluster节点。volumn链表的排序采用轮选算法,每次选中链表头节点,然后将头节点从链表 移出,并插到链表尾部。2)基于分卷映像的分卷选择算法。在保证文件副本不存在于相同的cluster或volumn上时,优选地,为了提高选择 效率,需要在分配文件副本存储位置时,根据文件副本个数,生成分卷映像,从分卷映像中 进行分卷的选取。选取结束后,根据分卷映像中分卷的选中计数,对cluster链表和volumn 链表进行参数调整和重新排序。分卷映像为存储设备数据抽象的一个子集。即分卷映像中的cluster链表节点数 等于申请文件的副本个数。当可用的cluster数目小于文件副本数时,分卷映像与存储设 备数据抽象相同。基于分卷映像的volumn选择顺序示意图如附图4所示,选择算法描述如 下假设cluster维度为i,volumn维度为j。选择顺序为先j后i。一次性选择完毕 后,根据分卷映像中volumn的选中计数,分别进行volumn链表,cluster链表的重新排序, 其中,i和j的取值范围为大于或等于1的自然数。其中,cluster链表节点根据加权选中计数(select)进行升降排列,具体流程 参考图5如下重新计算被选中的cluster节点加权选中计数(步骤501),将被选中的 cluster节点移除(步骤502),将被移除的cluster节点重新插入链表(步骤503)。其中,对volumn链表节点采用轮转排序,具体流程参考图6如下判断链表头节 点选中计数是否为0(步骤601),如果是,则结束(步骤602);如果不是,则判断链表头选 中计数是否大于1 (步骤603),如果是,则遍历链表,节点计数减去头节点的计数值加1 (步 骤604),并转入步骤605。如果不是,则从链表头节点,找到第一个计数为0的节点,以此节 点为界,将链表分为两段(步骤605),将两段链表交换顺序,重新组合(步骤606),并结束 (步骤602)。3)存储设备的写入速率控制。
在系统实际运行过程中,需要提供对存储设备写入速率的控制的方法,使得存储 设备使用率达到动态均衡。例如,根据分卷输入输出(volumn 10)均衡,根据存储服务器的 中央处理器(cpu)使用率均衡,根据存储服务器存储空间使用率均衡,根据存储服务器带 宽使用率均衡等。以上四个均衡因子只是举例需要,实际应用中,均衡因子的选择,可以是 其中的一种或其组合,当然,也可以根据实际需要参考更多的均衡因子。通过提供一种反馈函数,综合上述几种均衡因子,输出调节系数,作用于cluster 权重倍数(multi),即可调节存储设备的选中概率,从而控制其使用率。即multi = function (volumn_I0, cpu_rate, mem_rate, bandwidth_rate)例如,multi = 0. 5* (2000/1 00)+0. 2*(60/10)+0. 1*(80/10)+0. 2*(50/10))。4)文件副本的迁移。在下面几种应用场景下,可能会发生文件副本的迁移需求,相应的,需要提供文件 副本的迁移机制。例如人工指定文件副本迁移,文件副本数扩大触发迁移,存储设备损坏 触发迁移等。人工指定迁移,按照指定的位置进行,基本不需要控制。另外两种迁移,需要 一定的算法来保证副本的均勻分布。副本迁移算法实际上是基于分卷映像的分卷选择算法 的一个特例。算法设计如下对分卷选择算法进行扩展,增加对选中volumn节点的过滤在 有其他volumn可选的情况下,不能选中已经存在该文件副本的volumn。当所有volumn都 存在该文件副本,选择文件副本数最少的volumn。5)文件副本再均衡。当系统由于种种原因(例如存储设备增加或减少存储空间,增删设备,设备异常 损坏,分卷损坏等等),在某个时间点,出现较大程度的存储空间使用率不均,cpu负载不 均,volumn 10不均,带宽使用率不均等种种异常时。需要提供一种机制,使得副本存储按 照均衡策略进行再均衡。以存储空间再均衡为例予以说明。基本原理是以分卷为单位,按照分卷的存储空间使用率进行忙闲排序,将文件副 本从使用率高的分卷,同步到使用率低的分卷,直到整体使用率基本均衡为止。数据组织分卷采用双向链表来组织,按照存储空间使用率由高到低排序。副本的选择策略顺序选取副本迁移频率根据系统使用率进行控制,最大每秒钟m个,例如200个,m的取值 需要根据实际测试而定,并不限于该数值。副本迁移定时器时长应该基本等于文件系统迁移一个文件副本的时长。偏差容忍因为系统是动态运行的,无法做到绝对均衡,所以应该允许有一定的偏 差,以偏差在3%以内为标准,具体根据需要测试而定,并不限于该数值。终止条件当存储空间使用率基本均衡时结束。或者当副本迁移计数达到门限值, 视为异常,也应该予以终止。下面结合图2所示的系统架构,本发明实施例的具体实施过程进行详细的描述。 其中文件副本位置分布算法基于volumn 10均衡,文件副本再均衡基于存储空间均衡。参 考图2,具体如下外部向控制服务器发起写文件副本请求,该请求包括文件副本个数。可选地,该请 求还可以包括文件信息。控制服务器根据当前系统资源情况(存储空间使用率,cpu使用率,内存使用率,带宽使用率等)和申请的文件副本个数,进行存储位置分配,并在分配完成后,向存储服务 器发送文件副本写入指令,该指令包括写入存储设备的分卷位置。优选地,该请求还可以包 括文件数据源位置、文件控制信息等。如附图3所示,当前系统中有三个存储设备cluster_l,cluster_2, cluster_3。 cluster_l 下有 3 个分卷volumn_l, volumn_2, volumn_3。cluster_2 下有 2 个分卷 volumn_4, volumn_5。cluster_3 下有 1 个分卷volumn_6。根据 cluster 下 volumn 个数 的不同,cluster_l, cluster_2, cluster_3 的权重值(right)分别为 2,3,6。初始状态下cluster节点的加权选中计数为0。因为是基于volumn选中均衡,所 以权重倍数(multi)的值为1。此时有一个写文件副本请求,申请4个文件副本。生成的分卷映像如图8所示,根据分卷映像的选择算法,按照先j后i的顺序,选 择volumn的选中顺序如图8所示。选择完毕后,根据volurm选中情况,进行volumn节点和cluster节点的重新排序。参照图3,首先重新计算cluster节点的加权选中计数。因为cluster_l的权重值为2,cluster_l下有2个volumn被选中。所以cluster_l 的加权选中计数select等于0+2*2 = 4。因为cluster_2的权重值为3,cluster_2下有1个volumn被选中。所以cluster_2 的加权选中计数select等于0+3*1 = 3。因为cluster_3的权重值为6,cluster_3下有1个volumn被选中。所以cluster_3 的加权选中计数select等于0+6*1 = 6。然后,参照图5所示,根据cluster节点的加权选中计数大小,进行cluster节点 的重新排序。参照图6所示,volurm节点的重新排序相对简单,直接采用轮转排序将选中 过的节点从链表头依次放到链表尾。重新排序后的数据结构如图9所示。按照此种算法,可以保证经过多次申请后,volumn的选中概率相同。并能最大程 度保证文件副本分布于不同的cluster和volumn上。存储服务器根据该指令将从文件数据源获取的文件副本,并写入到指定存储设备 的指定分卷上。此外,在某些情况下,会出现volumn的存储空间不均衡,此时需要对文件副本进 行再均衡° 具体地,假设当前 volunn_l, volunn_2, volunn_3, volunn_4, volunn_5, volunn_6 的存储空间使用率分别为90 %,80 %,70 %,60 %,50 %,40 %,存储空间使用率需要再均衡。 参照图7所示,具体步骤如下701,将分卷按照存储空间使用率高低放入双向链表。702,判断链表头节点和尾节点的偏差是否大于容忍值,如果是,继续执行步骤 703 ;如果否,则转向712。703,判断副本迁移计数是否小于门限值200,如果小于,继续执行步骤704 ;否则 执行步骤711。704,从链表头节点对应的分卷中找到200个文件副本,向其他链表节点对应的分卷进行副本迁移,链表节点选择顺序为从链表尾部向顶部查找,同步到的链表节点中不能 存在该文件副本。705,副本迁移计数加1。706,发起文件副本迁移,把文件副本迁移到负荷较轻的volumn上。707,更新分卷上文件副本数据索引。708,更新链表节点参数,链表重新排序。709,设置定时器。为了不影响系统正常运行,需要控制文件副本均衡的频率,设置定时器,当定时器 时间到,继续进行均衡。710,定时器时间到,继续下一次文件副本同步。711,当到达文件副本迁移门限,仍没有迁移完毕,则认为出现异常,给出告警并退
出o712,结束执行。基于与方法相同的发明构思,本发明实施例提供了一种文件副本均衡分布的装 置,如图10所示,包括接收单元,用于接收包含文件副本个数的写文件副本请求;分配单元,用于根据该写文件副本请求和文件副本均衡分布因子对文件副本进行 存储位置分配;发送单元,用于该分配单元在分配完成后,向存储服务器发送包含文件副本存储 位置的文件副本写入指令,使该存储服务器根据该文件副本写入指令获取文件副本,并写 入存储设备的指定分卷。进一步地,该分配单元,还用于在文件副本分布出现不均衡时,根据文件副本均衡 分布因子和文件副本个数进行再均衡的步骤。进一步地,该分配单元,还用于控制写入文件副本写入速率,具体地,假设存储设 备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成后,根据分卷映像中分卷的 选中计数select,分别进行分卷链表和存储设备链表的重新排序,其中,i和j的取值范 围为大于或等于1的自然数,其中,存储设备节点加权选中计数为select^ = select, n_l+(multi*right)*( —it中的 volumn ),胃中,select_n H n cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分另ll第 n 个 cluster 的权重倍数和权重,n为大于或等于1的自然数。进一步地,分配单元根据分卷映像中分卷的选中计数,进行存储设备链表的重新 排序,包括该分配单元重新计算被选中的存储设备节点加权选中计数,将被选中的存储设备 节点移除,将被移除的存储设备节点重新插入该存储设备链表。进一步地,分配单元根据分卷映像中分卷的选中计数,进行分卷链表的重新排序, 包括该分配单元判断链表头节点选中计数是否为起始计数值,如果不是,则判断链表 头选中计数是否大于起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数值 加预设值,并从分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界,将
11链表分为两段,将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表头 节点,找到第一个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段,将 两段链表交换顺序,重新组合。其中,文件副本均衡分布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和 存储服务器带宽使用率。基于与方法相同的发明构思,本发明实施例提供了一种文件副本均衡分布的系 统,图11所示,包括控制服务器,用于接收包含文件副本个数的写文件副本请求,根据所述写文件副 本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储 服务器发送包含文件副本存储位置的文件副本写入指令;所述存储服务器,用于根据所述文件副本写入指令获取文件副本,并写入存储设 备的指定分卷。其中,关于控制服务器的详细功能可以参见装置的实施例,在此不再赘述。在本发明的技术方案中,控制服务器接收包含文件副本个数的写文件副本请求, 根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分 配完成后,向存储服务器发送包含文件副本存储位置的文件副本写入指令,使存储服务器 根据文件副本写入指令获取文件副本,并写入存储设备的指定分卷,可以实现文件副本均 衡分布,提高数据的安全性,有利于业务的开展。上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明 并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、 修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识 进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发 明所附权力要求的保护范围内。
1权利要求
一种文件副本均衡分布的方法,其特征在于,包括控制服务器接收包含文件副本个数的写文件副本请求,根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储服务器发送包含文件副本存储位置的文件副本写入指令;所述存储服务器根据所述文件副本写入指令获取文件副本,并写入存储设备的指定分卷。
2.如权利要求1所述的方法,其特征在于,还包括所述控制服务器在文件副本分布出 现不均衡时,根据文件副本均衡分布因子和文件副本个数进行再均衡的步骤。
3.如权利要求1所述的方法,其特征在于,还包括所述控制服务器控制写入文件副本 写入速率的步骤,包括假设存储设备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成后,根据分卷 映像中分卷的选中计数,分别进行分卷链表和存储设备链表的重新排序,其中,i和j的取 值范围为大于或等于1的自然数,其中,存储设备节点加权选中计数为select^ = select, n_l+(multi*right)*( 中的 νοIumn ),胃中,select_n H η cluster 的 select 值,select_n-l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分另ll第 η 个 cluster 的权重倍数和权重,η为大于或等于1的自然数。
4.如权利要求3所述的方法,其特征在于,所述根据分卷映像中分卷的选中计数,进行 存储设备链表的重新排序,包括重新计算被选中的存储设备节点加权选中计数,将被选中的存储设备节点移除,将被 移除的存储设备节点重新插入所述存储设备链表。
5.如权利要求3所述的方法,其特征在于,所述根据分卷映像中分卷的选中计数,进行 分卷链表的重新排序,包括判断链表头节点选中计数是否为起始计数值,如果不是,则判断链表头选中计数是否 大于起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数值加预设值,并从 分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界,将链表分为两段, 将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表头节点,找到第一 个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段,将两段链表交换顺 序,重新组合。
6.如权利要求1-5任意一项权利要求所述的方法,其特征在于,所述文件副本均衡分 布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和存储 服务器带宽使用率。
7.一种文件副本均衡分布的装置,其特征在于,包括接收单元,用于接收包含文件副本个数的写文件副本请求;分配单元,用于根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存 储位置分配;发送单元,用于所述分配单元在分配完成后,向存储服务器发送包含文件副本存储位 置的文件副本写入指令,使所述存储服务器根据所述文件副本写入指令获取文件副本,并 写入存储设备的指定分卷。
8.如权利要求7所述的装置,其特征在于,所述分配单元,还用于在文件副本分布出现 不均衡时,根据文件副本均衡分布因子和文件副本个数进行再均衡的步骤。
9.如权利要求7所述的装置,其特征在于,所述分配单元,还用于控制写入文件副本 写入速率,具体地,假设存储设备维度为i,分卷维度为j,选择顺序为先j后i,在选择完成 后,根据分卷映像中分卷的选中计数select,分别进行分卷链表和存储设备链表的重新排 序,其中,i和j的取值范围为大于或等于1的自然数,其中,存储设备节点加权选中计数为 select_n = select_n_l+(multi*right) * (—it中的 volumn ■目),胃中,select_n H n f cluster 的 select 值,select_n_l 为第 n_l 个 cluster 的 select 值,multi 禾口 right 为分 别第n个cluster的权重倍数和权重,n为大于或等于1的自然数。
10.如权利要求9所述的装置,其特征在于,所述分配单元根据分卷映像中分卷的选中 计数,进行存储设备链表的重新排序,包括所述分配单元重新计算被选中的存储设备节点加权选中计数,将被选中的存储设备节 点移除,将被移除的存储设备节点重新插入所述存储设备链表。
11.如权利要求9所述的装置,其特征在于,所述分配单元根据分卷映像中分卷的选中 计数,进行分卷链表的重新排序,包括所述分配单元判断链表头节点选中计数是否为起始计数值,如果不是,则判断链表头 选中计数是否大于起始计数值,如果是,则遍历分卷链表,节点计数减去头节点的计数值加 预设值,并从分卷链表头节点,找到第一个计数为起始计数值的节点,以此节点为界,将链 表分为两段,将两段链表交换顺序,重新组合;如果不是大于起始计数值,从分卷链表头节 点,找到第一个选中计数为起始计数值的节点,以此节点为界,将分卷链表分为两段,将两 段链表交换顺序,重新组合。
12.如权利要求7-11任意一项权利要求所述的装置,其特征在于,所述文件副本均衡 分布因子包括至少以下信息之一或其组合分卷输入输出,存储服务器的中央处理器使用率、存储服务器存储空间使用率和存储 服务器带宽使用率。
13.一种文件副本均衡分布的系统,其特征在于,包括控制服务器,用于接收包含文件副本个数的写文件副本请求,根据所述写文件副本请 求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储服务 器发送包含文件副本存储位置的文件副本写入指令;所述存储服务器,用于根据所述文件副本写入指令获取文件副本,并写入存储设备的 指定分卷。
全文摘要
本发明公开了一种文件副本均衡分布的方法、装置及系统,属于分布式存储领域。该方法包括控制服务器接收包含文件副本个数的写文件副本请求,根据所述写文件副本请求和文件副本均衡分布因子对文件副本进行存储位置分配,并在分配完成后,向存储服务器发送包含文件副本存储位置的文件副本写入指令;所述存储服务器根据所述文件副本写入指令获取文件副本,并写入存储设备的指定分卷。该方法包括接收单元、分配单元和发送单元。本发明的技术方案可以实现文件副本均衡分布,提高数据的安全性,有利于业务的开展。
文档编号H04L29/08GK101854398SQ20101019484
公开日2010年10月6日 申请日期2010年6月7日 优先权日2010年6月7日
发明者刘洋, 王俊, 雷爱民 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1