1.分布式存储系统中故障节点修复方法,其特征是,包括步骤如下:
步骤1、利用软件定义网络技术实时监控获取网络状态信息;
步骤2、基于获取的网络状态信息,对分布式存储系统中的所有空闲节点进行多属性决策选定1个新生节点;即:步骤2.1、构建分布式存储系统中所有存活节点关于所选定属性的决策矩阵;
步骤2.2、对决策矩阵进行归一化和加权处理得到规范化的加权决策矩阵;
步骤2.3、取规范化的加权决策矩阵中各属性值的最大值作为规范化的加权决策矩阵的正理想解,取规范化的加权决策矩阵中各属性值的最小值作为规范化的加权决策矩阵的负理想解,并计算每个空闲节点到规范化的加权决策矩阵的正负理想解的距离;
步骤2.4、基于每个空闲节点到规范化的加权决策矩阵的正负理想解的距离,计算每个空闲节点的相对贴合度,并将相对贴合度最大的空闲节点选定为新生节点;其中空闲节点的相对贴合度 为:其中, 为空闲节点到规范化的加权决策矩阵的正理想解的距离; 为空闲节点到规范化的加权决策矩阵的负理想解的距离;i=1,2,…,n,n为空闲节点的个数;
步骤3、基于获取的网络状态信息,将分布式存储系统中的各存活节点到各空闲节点的直连带宽进行从大到小排序,并将排在前面的d个直连带宽的存活节点选定为提供节点;
步骤4、使用Dijkstra算法分别得到新生节点到每个提供节点的k条路径;
步骤5、设定种群规模Q和最大进化世代数G;生成包括Q个个体的初始化种群,该初始化种群的每个个体是分别从新生节点到每个提供节点的k条路径中各随机选择一条路径即新生节点到d个提供节点的d条路径所组成的;令当前进化世代数t=1,并令当前种群为初始化种群;
步骤6、先对当前种群中的个体进行交叉和变异得到交叉变异种群;再计算当前种群和交叉变异种群中各个体的适应度值,并将适应度值最大的个体作为局部最优个体;
步骤7、从当前种群和交叉变异种群中选择Q个个体组成新的当前种群;
步骤8、判断当前进化世代数是否等于最大进化世代数G:
如果是,则将适应度值最大的局部最优个体作为全局最优个体,并转至步骤9;否则,令当前进化世代数t+1,并转至步骤6;
步骤9、基于全局最优个体所得到的新生节点到d个提供节点到的路径,新生节点利用纠删码方式从d个提供节点中下载数据并执行数据恢复操作,以完成故障节点修复;
上述d为利用预定规模的纠删码进行故障节点修复时所需的提供节点的个数,k为设定值。
2.根据权利要求1所述的分布式存储系统中故障节点修复方法,其特征是,步骤2.1中,所选定的属性包括邻接平均剩余带宽、I/O负载、CPU利用率和内存利用率。
3.根据权利要求1所述的分布式存储系统中故障节点修复方法,其特征是,步骤2.3中:空闲节点到规范化的加权决策矩阵的正理想解的距离 为:
空闲节点到规范化的加权决策矩阵的负理想解的距离 为:
其中,Zij为规范化的加权决策矩阵的第i行第j列; 为规范化的加权决策矩阵的正理想解的第j列; 为规范化的加权决策矩阵的负理想解的第j列;i=1,2,…,n,n为空闲节点的个数;j=1,2,…,m,m为属性的个数。
4.根据权利要求1所述的分布式存储系统中故障节点修复方法,其特征是,步骤6和8中,个体的适应度值f为:其中,αbw为修复时延系数,αhop为修复流量系数,(Va,Vb)为节点Va与节点Vb的链路,E为个体的所有链路集合,Da为节点Va的修复流量,Db为节点Vb的修复流量,processa为节点Va处理数据的处理能力,processb为节点Vb处理数据的处理能力,ω(Va,Vb)为节点Va与节点Vb的链路带宽,β为任意两节点的链路上传输的修复流量,hop为修复拓扑总的跳数。
5.根据权利要求1所述的分布式存储系统中故障节点修复方法,其特征是,步骤6中,当前种群中的个体在进行交叉和变异之后均需要在进行去环操作,即利用Kruskal算法构造以新生节点为根的最优修复树来将不可行解个体变为可行解个体。
6.根据权利要求1所述的分布式存储系统中故障节点修复方法,其特征是,步骤7中,采用精英选择或轮盘赌选择从当前种群和交叉变异种群中选择Q个个体组成新的当前种群。