[发明专利]存储方法、主、副节点及包含其的系统有效
申请号: | 201910729210.7 | 申请日: | 2019-08-08 |
公开(公告)号: | CN110597459B | 公开(公告)日: | 2023-04-11 |
发明(设计)人: | 华志超 | 申请(专利权)人: | 上海隔镜信息科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 上海晨皓知识产权代理事务所(普通合伙) 31260 | 代理人: | 成丽杰 |
地址: | 200240 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储 方法 节点 包含 系统 | ||
1.一种存储方法,其特征在于,应用于去中心化分布式存储系统中的主节点,所述系统包括若干个通信连接的节点群,每个节点群均包括所述主节点以及若干个副节点,且每个所述节点群存储部分数据以使得所述系统存储有所述系统的完整数据;所述方法包括:
从本节点群的副节点中挑选出备用节点;其中,所述本节点群为本主节点所在的节点群,所述备用节点用于在所述本主节点下线时取代所述本主节点;
监测所述本节点群的在线节点数量是否小于第一阈值,若小于所述第一阈值,则从所述系统中挑选出目标合并节点群,以将所述本节点群与所述目标合并节点群合并为新的节点群;其中,合并后的新的节点群存储合并前的各节点群所存储的数据;以及
监测所述本节点群的在线节点数量是否大于第二阈值,若大于所述第二阈值,则拆分所述本节点群;其中,拆分后的各节点群分别存储拆分前的节点群的部分数据以使得拆分后的各节点群存储拆分前的节点群的完整数据。
2.根据权利要求1所述的存储方法,其特征在于,每个所述节点群均存储部分哈希表以使得所述系统存储有所述系统的完整哈希表;其中,所述哈希表用于定位请求访问的数据所在的节点群;所述方法还包括:
响应于数据访问请求在所述本主节点或者请求所述系统中的其他主节点确定请求访问的数据所在的节点群。
3.根据权利要求2所述的存储方法,其特征在于,从所述系统中挑选出目标合并节点群,具体包括:
将所述本节点群的相邻节点群中在线节点数量较小的节点群作为所述目标合并节点群;其中,所述相邻节点群与所述本节点群存储的部分哈希表的哈希值范围连续。
4.根据权利要求2所述的存储方法,其特征在于,所述数据访问请求携带有请求访问的数据键对应的哈希值,所述本主节点存储有部分哈希值范围以及与所述哈希值范围连续的哈希值范围所在的相邻节点群;
所述响应于数据访问请求在本主节点或者请求所述系统的其他主节点确定请求访问的数据所在的节点群,具体包括:
确定本主节点是否存储有所述请求访问的数据键对应的哈希值所在的哈希值范围,若存储有所述哈希值所在的哈希值范围,则访问所述本节点群中的副节点并返回访问结果;若所述本主节点未存储所述哈希值所在的哈希值范围,则向所述本主节点的相邻节点群请求以得到所述请求访问的数据所在的节点群。
5.根据权利要求1所述的存储方法,其特征在于,拆分所述本节点群,具体包括:
确定拆分出去的节点群的主节点以及副节点;
将所述本节点群中划分至拆分出去的节点群的数据转移至所述拆分出去的节点群中。
6.根据权利要求1所述的存储方法,其特征在于,所述从本节点群的副节点中挑选出备用节点,具体包括:
根据所述本节点群中的副节点的以下一者或其任意组合挑选出所述备用节点:
节点下线频率、历史在线时段、节点性能参数。
7.根据权利要求1所述的存储方法,其特征在于,所述方法还包括:
响应于数据读取请求从所述本节点群的N个副节点中分别读取N份目标数据;N为大于2的奇数;
确定读取的所述N份目标数据中是否包含错误数据,若包含错误数据,则执行数据恢复操作。
8.根据权利要求1所述的存储方法,其特征在于,所述节点群中的各节点均运行于可信执行环境中。
9.一种主节点,其特征在于,包括存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如权利要求1至8中任一项所述的存储方法。
10.一种分布式存储系统,其特征在于,包括若干个通信连接的节点群;
所述节点群包括如权利要求9所述的主节点以及若干个副节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海隔镜信息科技有限公司,未经上海隔镜信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910729210.7/1.html,转载请声明来源钻瓜专利网。