一种分布式存储系统归置组成员的选择方法、装置及介质制造方法及图纸

技术编号:24089246 阅读:39 留言:0更新日期:2020-05-09 07:20
本申请公开了一种分布式存储系统归置组成员的选择方法,包括:遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;根据临时变量排除分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各层级中的目标子对象,直至目标子对象为目标硬盘;将目标硬盘设置为目标归置组的成员。可见,本方法通过提前排除掉每一层级中的状态异常的节点,能够避免在递归选择的过程中,进入到无效的分支中,避免需要多次循环选择并提高选择出的目标硬盘为合格的目标归置组的成员的概率,提高为分布式存储系统的归置组选择成员的效率。本申请还公开了一种分布式存储系统归置组成员的选择装置及计算机可读存储介质,均具有上述有益效果。

A method, device and medium for selecting members of a group in a distributed storage system

【技术实现步骤摘要】
一种分布式存储系统归置组成员的选择方法、装置及介质
本专利技术涉及分布式存储系统领域,特别涉及一种分布式存储系统归置组成员的选择方法、装置及计算机可读存储介质。
技术介绍
根据分布式存储系统的两种保存数据的策略,其存储池分为副本池和纠删池。所谓副本即将一份数据复制N份,并保存在N块硬盘上,每块硬盘上保存的是完全一样的数据;所谓纠删即通过预设的纠删算法,将一份数据等分成K份,并根据这K份数据计算出M份冗余,然后将这K+M份数据分别保存在K+M块硬盘上,每块硬盘上保存的是不一样的数据。可见,不管利用哪种策略,都需要同时将数据保存在多块硬盘上,这多块硬盘的组合称为一个归置组。需要说明的是,每个归置组都包含若干个成员,即若干个硬盘,在创建副本或纠删类型的存储池时,会指定该存储池包含多少个归置组,并设置归置组的预设成员数量,然后为每个归置组按特定的随机算法选择成员。如图1所示的一种分布式文件系统的结构示意图,最上层的root对应整个集群,最底层的dev表示硬盘,root和dev之间可能存在数据中心、机房、机架以及主机等多层结构。选择归置组成员就是从root层开始按照随机算法递归地选择出dev作为归置组成员。现有技术中为归置组选择成员的方式,都是先按照随机算法递归地从存储池中选择出一个目标硬盘,然后判断该目标硬盘的当前状态是否为“不在位”、是否和归置组的已有成员冲突、该目标硬盘承载的归置组是否过载等;只有在该目标硬盘都不存在这些方面的问题时,才认为其是一个合格的成员,成员选择成功;否则,需要重新选择一个目标硬盘进行循环重试,直到循环到预设最大循环次数,若此时仍未选择出合格的目标硬盘,则成员选择失败。可见,现有技术的方法,在为归置组选择成员时,需要进行大量的循环重试操作,将导致为分布式存储系统的归置组选择成员时的效率低下。因此,如何提高为分布式存储系统的归置组选择成员的效率,是本领域技术人员目前需要解决的技术问题。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种分布式存储系统归置组成员的选择方法,能够提高为分布式存储系统的归置组选择成员的效率;本专利技术的另一目的是提供一种分布式存储系统归置组成员的选择装置及计算机可读存储介质,均具有上述有益效果。为解决上述技术问题,本专利技术提供一种分布式存储系统归置组成员的选择方法,包括:遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中的目标子对象,直至所述目标子对象为目标硬盘;将所述目标硬盘设置为目标归置组的成员。优选地,当所述节点为硬盘时,所述遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中的过程,具体为:遍历所述分布式存储系统中的各硬盘,将无效的硬盘和/或承载的归置组过载的硬盘和/或与所述目标归置组中的成员冲突的硬盘添加至所述临时变量中。优选地,在所述将所述目标硬盘设置为目标归置组的成员之后,进一步包括:将所述目标硬盘以及所述目标硬盘的目标父节点对应的主机添加至所述临时变量中。优选地,进一步包括:当所述目标硬盘的目标父节点对应的主机及所述目标父节点的兄弟节点对应的主机都设置于所述临时变量中时,将所述目标父节点的父节点对应的主机添加至所述临时变量中。优选地,在所述将所述目标硬盘设置为目标归置组的成员之前,进一步包括:判断所述目标硬盘是否满足所述目标归置组成员的条件;若否,则进入所述根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中的目标子对象,直至所述目标子对象为目标硬盘的步骤,并更新当前循环次数;在所述当前循环次数大于预设最大循环次数时,判定为所述目标归置组选择成员失败。优选地,在将所述目标硬盘设置为目标归置组的成员之后,进一步包括:在所述目标归置组成员的数量达到预设成员数量时,发出对应的提示信息。为解决上述技术问题,本专利技术还提供一种分布式存储系统归置组成员的选择装置,包括:临时变量设置模块,用于遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;目标硬盘选择模块,用于根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中的目标子对象,直至所述目标子对象为目标硬盘;归置组成员确定模块,用于将所述目标硬盘设置为目标归置组的成员。优选地,所述临时变量设置模块具体包括:第一更新模块,用于遍历所述分布式存储系统中的各硬盘,将无效的硬盘和/或承载的归置组过载的硬盘和/或与所述目标归置组中的成员冲突的硬盘添加至所述临时变量中。优选地,进一步包括:第二更新模块,用于将所述目标硬盘以及所述目标硬盘的目标父节点对应的主机添加至所述临时变量中。优选地,进一步包括:第三更新模块,用于当所述目标硬盘的目标父节点对应的主机及所述目标父节点的兄弟节点对应的主机都设置于所述临时变量中时,将所述目标父节点的父节点对应的主机添加至所述临时变量中。优选地,进一步包括:判断模块,用于判断所述目标硬盘是否满足所述目标归置组成员的条件;若否,则调用所述目标硬盘选择模块;判定模块,用于在所述当前循环次数大于预设最大循环次数时,判定为所述目标归置组选择成员失败。优选地,进一步包括:提示模块,用于在所述目标归置组成员的数量达到预设成员数量时,发出对应的提示信息。为解决上述技术问题,本专利技术还提供另一种分布式存储系统归置组成员的选择装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述任一种分布式存储系统归置组成员的选择方法的步骤。为解决上述技术问题,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种分布式存储系统归置组成员的选择方法的步骤。可见,相较于现有技术中,在选择出目标硬盘之后,再判断目标硬盘是否为合格的目标归置组的成员的方式,本专利技术提供的一种分布式存储系统归置组成员的选择方法,通过先遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;然后根据临时变量排除分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各层级中的目标子对象,直至目标子对象为目标硬盘;再将目标硬盘设置为目标归置组的成员。即,本方法是提前排除掉每一层级中的状态异常的节点,能够避免在递归选择的过程中,进入到无效的分支中,避免需要多次循环选择并提高选择出的目标硬盘为合格的目标归置组的成员的概率,提高为分布式存储系统的归置组选择成员的效率。为解决上述技术问题,本专利技术还提供了一种分布式存储系统归置组成员的选择装置及计算机可读存储介质,均具有上述有益效果。附图说明为了更清楚地说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现本文档来自技高网
...

【技术保护点】
1.一种分布式存储系统归置组成员的选择方法,其特征在于,包括:/n遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;/n根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中的目标子对象,直至所述目标子对象为目标硬盘;/n将所述目标硬盘设置为目标归置组的成员。/n

【技术特征摘要】
1.一种分布式存储系统归置组成员的选择方法,其特征在于,包括:
遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中;
根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中的目标子对象,直至所述目标子对象为目标硬盘;
将所述目标硬盘设置为目标归置组的成员。


2.根据权利要求1所述的方法,其特征在于,当所述节点为硬盘时,所述遍历分布式存储系统中的各节点,将状态异常的节点添加至临时变量中的过程,具体为:
遍历所述分布式存储系统中的各硬盘,将无效的硬盘和/或承载的归置组过载的硬盘和/或与所述目标归置组中的成员冲突的硬盘添加至所述临时变量中。


3.根据权利要求1所述的方法,其特征在于,在所述将所述目标硬盘设置为目标归置组的成员之后,进一步包括:
将所述目标硬盘以及所述目标硬盘的目标父节点对应的主机添加至所述临时变量中。


4.根据权利要求3所述的方法,其特征在于,进一步包括:
当所述目标硬盘的目标父节点对应的主机及所述目标父节点的兄弟节点对应的主机都设置于所述临时变量中时,将所述目标父节点的父节点对应的主机添加至所述临时变量中。


5.根据权利要求1所述的方法,其特征在于,在所述将所述目标硬盘设置为目标归置组的成员之前,进一步包括:
判断所述目标硬盘是否满足所述目标归置组成员的条件;
若否,则进入所述根据所述临时变量排除所述分布式存储系统中各层级中的异常节点,并按照随机算法递归选择出各所述层级中...

【专利技术属性】
技术研发人员:甄天桥孟祥瑞
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

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

1