基于负载调整和系统容错的分布式存储系统的实现方法技术方案

技术编号:7810681 阅读:240 留言:0更新日期:2012-09-27 19:03
本发明专利技术公开了一套基于负载调整和系统容错的分布式存储系统的实现方法,解决了现有技术中存在的大规模分布式存储系统中没有可靠的负载调整方法和系统容错方法及资源上传、资源删除流程不够简洁的问题。该分布式存储系统的实现方法主要包括使用分布式存储系统中的管理节点检查存储节点发来的心跳信息,当检查到存储节点压力过大即过载时,采用负载调整方法对该压力过大的过载存储节点进行负载调整;当检查到存储节点失效时,采用系统容错方法对该失效存储节点进行系统容错。

【技术实现步骤摘要】

本专利技术涉及ー套分布式存储系统,具体地说,是涉及一套。
技术介绍
随着数据密集型应用的日益普及,人们需要对越来越多的数据进行开放式存储和高性能计算,这对存储系统的可靠性,可扩展性等提出 了苛刻的要求,而大規模分布式存储系统以其较为低廉的价格,良好的可扩展性等优势,得到了人们的青睐。现有的基于多级映射的大規模多副本分布式存储系统虽然具有支持权重、可扩展型高、数据散列均匀、支持副本、易于管理等优点,然而该系统对于压カ过大的存储节点即过载存储节点没有可靠的负载调整方法;系统中存储节点失效时也没有有效的关于失效存储节点的系统容错方法,且存储节点中存储聚集的多个副本间没有可靠的心跳连接,无法确保通信畅通,因此无法准确判定彼此的当前状态,而存储聚集的多个副本之间临时建立连接的网络耗费及错误率也较高;由于系统中存储聚集与存储聚集之间的序列号相差较大,造成了毎次上传、删除过程中会产生多余的序列号协商交互。
技术实现思路
本专利技术的目的在于提供一套,解决现有技术中存在的大規模分布式存储系统中没有可靠的负载调整方法和系统容错方法及资源上传、资源删除流程不够简洁的问题。为了实现上述目的,本专利技术采用的技术方案如下,包括以下步骤(I)系统初始化;(2)客户端检查是否需要更新规则,如果需要更新,则将规则更新至与规则节点相同的规则;(3)客户端通过⑶ID生成算法确定待上传资源的⑶ID,并根据⑶ID结合规则计算出存储节点位置,将待上传资源存储至存储节点之中;(4)客户端得到需要获取资源的GUID,并根据规则计算出需要获取资源的副本对应的存储节点地址,然后由与存储节点地址对应的存储节点查找该需要获取的资源,再向客户端回复查找结果;(5)管理节点检查存储节点发来的心跳信息,当检查到存储节点压カ过大即过载时,采用负载调整方法对该压カ过大的过载存储节点进行负载调整;当检查到存储节点失效时,采用系统容错方法对该失效存储节点进行系统容错。具体地说,所述每个存储节点存储有至少ー个存储聚集,每个存储聚集至少有ー个存储聚集副本,且当存储聚集的存储聚集副本为两个以上吋,这两个以上存储聚集副本分别存储在不同的存储节点上,且该两个以上存储聚集副本两两之间保持心跳连接。进ー步地,所述负载调整方法包括以下步骤(a)设定过载存储节点上的存储聚集数量标准值,管理节点检查过载存储节点上的存储聚集数量,若超过已设定的标准值则发布进行存储聚集变换的命令,若低于已设定的标准值则发布进行存储聚集扩展的命令;(b)与管理节点保持心跳的存储节点根据管理节点发布的命令进行相应的存储聚集扩展或存储聚集变换;(C)存储节点在完成相应的存储聚集扩展或存储聚集变换后,向管理节点回复负载调整成功; (d)管理节点收到回复后对规则进行相应的存储聚集扩展或存储聚集变换运算,并通知规则节点集群更新规则。其中,所述存储节点进行存储聚集扩展包括以下步骤(I)存储节点在收到存储聚集扩展命令后将自身已保存的模数乘以ニ ;(2)该存储节点的存储聚集副本在序列号保持不变的情况下根据新的模数一分为ニ,且将新的存储聚集副本的状态设置为启动状态,并在存储聚集副本之间建立心跳,之后向管理节点回复存储聚集扩展成功;(3)管理节点收到回复之后,对规则执行存储聚集扩展运算,并通知规则节点集群更新规则。其中,所述存储节点进行存储聚集变换包括以下步骤( I)管理节点在系统中选择负载最轻的存储节点作为存储聚集变换的目的存储节点,并选择过载存储节点和目的存储节点的存储聚集副本集合的差集最小的ー个存储聚集副本作为待迁移存储聚集副本;(2)目的存储节点根据管理节点的通知同步过载存储节点中待迁移存储聚集副本的数据,并在自身重建与管理节点保持心跳连接的待迁移存储聚集副本;(3)目的存储节点根据过载存储节点中待迁移存储聚集副本的数据向过载存储节点获取资源,并将获取的资源保存到重建的待迁移存储聚集副本中,完成后向管理节点回复存储聚集变换成功;(4)管理节点收到回复之后,对规则执行存储聚集变换运算,并通知规则节点集群更新规则,之后将客户端对过载存储节点的访问重新定向到目的存储节点;(5)将重建的待迁移存储聚集副本设定为启动状态,该重建的待迁移存储聚集副本将剩余没有完全同步的资源同步过来,在同步完成后,对应的存储聚集开始工作;(6)过载存储节点中断与其对应的存储聚集副本的心跳连接,并删除该存储聚集副本。进ー步地,所述系统容错方法中,若设定存储节点失效后的重启时间上限值,则该系统容错流程包括以下两种情况第一种情况,当存储节点失效后的重启时间超过上限值,则容错流程中管理节点对失效存储节点中的每ー个存储聚集执行以下操作(I)管理节点选择系统内负载最轻的存储节点作为目的存储节点;(2)目的存储节点根据管理节点的通知向与失效存储节点具有相同存储聚集副本的其中一个存储节点同步待迁移的存储聚集副本的数据,并在自身重建待迁移存储聚集副本;(3)我们将与失效存储节点具有相同存储聚集副本的存储节点作为源存储节点,则目的存储节点根据源存储节点中待迁移存储聚集副本的数据向源存储节点获取资源,并将获取的资源保存到重建的待迁移存储聚集副本中;(4)管理节点对规则进行存储聚集变换操作,并通知规则节点更新规则,之后,将目的存储节点对应的存储聚集副本设置为启动状态,并将客户端对失效存储节点的访问重新定向到目的存储节点; 第二种情况,当存储节点失效后的重启时间低于上限值,该容错流程包括以下步骤(I)失效存储节点重新启动后向规则节点获取最新的规则;(2)若在失效存储节点失效期间系统进行了存储聚集扩展运算,失效储节点则根据扩展后的规则对已有的存储聚集副本进行分裂,之后将已有的存储聚集副本和规则进行对比,对比之后删除已经不属于该失效存储节点的存储聚集副本;(3)失效存储节点将其上的存储聚集副本状态设定为启动状态,并将失效期间的数据同步过来。更进一歩地,还包括资源上传流程,该上传流程包括以下步骤( I)客户端根据⑶ID生产算法,生成待上传资源的⑶ID ;(2)客户端检查自身是否缓存有规则,如没有则更新规则,如有则根据缓存的规则计算出对应GUID应该被存储的存储节点地址,井随机向其中ー个存储节点发起连接,且将该存储节点作为该次上传的发起节点;(3)发起节点连接到待存储资源的⑶ID,在确定客户端定位正确且对应的存储聚集为工作状态后,向与其保持心跳连接的存储聚集副本发送待上传资源的⑶ID ;(4)客户端开始上传,发起节点发送对应的数据到存储与其保持心跳连接的存储聚集副本的存储节点,完成上传。再进ー步地,还包括资源删除流程,该删除流程包括以下步骤(I)客户端获得待删除资源的⑶ID ;(2)客户端检查自身是否缓存有规则,如没有则更新规则,如有则根据缓存的规则计算出对应GUID应该被存储的存储节点地址,井随机向其中ー个存储节点发起连接,且将该存储节点作为该次删除的发起节点;(3)发起节点连接到待删除资源的⑶ID,在确定客户端定位正确且对应的存储聚集为工作状态后,向与其保持心跳连接的存储聚集副本发送待删除资源的GUID,并为待删除资源打上删除标签;(4)在所有保持心跳连接的存储聚集副本同时在线时,将打有删除标签的资源进行删除。具体地说,所述规则节点集群上的规则更新具体包括以下步骤( I)管理节本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.基于负载调整和系统容错的分布式存储系统的实现方法,其特征在于,包括以下步骤 (1)系统初始化; (2)客户端检查是否需要更新规则,如果需要更新,则将规则更新至与规则节点相同的规则; (3)客户端通过⑶ID生成算法确定待上传资源的⑶ID,并根据⑶ID结合规则计算出存储节点位置,将待上传资源存储至存储节点之中; (4)客户端得到需要获取资源的GUID,并根据规则计算出需要获取资源的副本对应的存储节点地址,然后由与存储节点地址对应的存储节点查找该需要获取的资源,再向客户端回复查找结果; (5)管理节点检查存储节点发来的心跳信息,当检查到存储节点压カ过大即过载时,采用负载调整方法对该压カ过大的过载存储节点进行负载调整;当检查到存储节点失效时,采用系统容错方法对该失效存储节点进行系统容错。2.根据权利要求I所述的基于负载调整和系统容错的分布式存储系统的实现方法,其特征在干,所述每个存储节点存储有至少ー个存储聚集,每个存储聚集至少有ー个存储聚集副本,且当存储聚集的存储聚集副本为两个以上吋,这两个以上存储聚集副本分别存储在不同的存储节点上,且该两个以上存储聚集副本两两之间保持心跳连接。3.根据权利要求2所述的基于负载调整和系统容错的分布式存储系统的实现方法,其特征在于,所述负载调整方法包括以下步骤 (a)设定过载存储节点上的存储聚集数量标准值,管理节点检查过载存储节点上的存储聚集数量,若超过已设定的标准值则发布进行存储聚集变换的命令,若低于已设定的标准值则发布进行存储聚集扩展的命令; (b)与管理节点保持心跳的存储节点根据管理节点发布的命令进行相应的存储聚集扩展或存储聚集变换; (C)存储节点在完成相应的存储聚集扩展或存储聚集变换后,向管理节点回复负载调整成功; Cd)管理节点收到回复后对规则进行相应的存储聚集扩展或存储聚集变换运算,并通知规则节点集群更新规则。4.根据权利要求3所述的基于负载调整和系统容错的分布式存储系统的实现方法,其特征在于,所述存储节点进行存储聚集扩展包括以下步骤 (1)存储节点在收到存储聚集扩展命令后将自身已保存的模数乘以ニ; (2)该存储节点的存储聚集副本在序列号保持不变的情况下根据新的模数一分为ニ,且将新的存储聚集副本的状态设置为启动状态,并在存储聚集副本之间建立心跳,之后向管理节点回复存储聚集扩展成功; (3)管理节点收到回复之后,对规则执行存储聚集扩展运算,并通知规则节点集群更新规则。5.根据权利要求3所述的基于负载调整和系统容错的分布式存储系统的实现方法,其特征在于,所述存储节点进行存储聚集变换包括以下步骤 (I)管理节点在系统中选择负载最轻的存储节点作为存储聚集变换的目的存储节点,并选择过载存储节点和目的存储节点的存储聚集副本集合的差集最小的一个存储聚集副本作为待迁移存储聚集副本; (2)目的存储节点根据管理节点的通知同步过载存储节点中待迁移存储聚集副本的数据,并在自身重建与管理节点保持心跳连接的待迁移存储聚集副本; (3)目的存储节点根据过载存储节点中待迁移存储聚集副本的数据向过载存储节点获取资源,并将获取的资源保存到重建的待迁移存储聚集副本中,完成后向管理节点回复存储聚集变换成功; (4)管理节点收到回复之后,对规则执行存储聚集变换运算,并通知规则节点集群更新规则,之后将客户端对过载存储节点的访问重新定向到目的存储节点; (5)将重建的待迁移存储聚集副本设定为启动状态,该重建的待迁移存储聚集副本将剰余没有完全同步的资源同步过来,在同步完成后,对应的存储聚集开始工作; (6)过载存储节点中断与其对应的存储聚集副本的心跳连接,并删除该存储聚集副本。6.根据权利要求2所述的基于负载调整和系统容错的...

【专利技术属性】
技术研发人员:段翰聪李林聂晓文詹文翰向小可梅玫
申请(专利权)人:电子科技大学
类型:发明
国别省市:

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

1