System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,特别是涉及一种数据的分布式存储方法和存储装置。
技术介绍
1、目前软件技术中,通常采用以下几种数据存储方式:数据的集中存储方式、数据的主从存储方式、以及数据的分布式存储方式。然而,在实际应用中,特别针对有限的存储容量和严格的读取速度,各种数据存储方式均存在不同的问题。
技术实现思路
1、为了解决上述问题至少之一,本专利技术第一个实施例提供一种数据的分布式存储方法,包括:
2、对待存储数据进行分片操作并生成多个分片数据;
3、以待存储数据的当前位置为中心点,根据预设置的距离范围阈值、存储层级数量和副本存储阈值,基于斐波那契数列分别按照各存储层级距离所述中心点的距离半径确定各分片数据在每个存储层级进行存储的副本存储数量;
4、根据各存储层级的副本存储数量,分别在各存储层级选择存储节点存储各分片数据。
5、例如,在本申请一些实施例提供的分布式存储方法中,所述以待存储数据的当前位置为中心点,根据预设置的距离范围阈值、存储层级数量和副本存储阈值,基于斐波那契数列分别按照各存储层级距离所述中心点的距离半径确定各分片数据在每个存储层级进行存储的副本存储数量进一步包括:
6、基于斐波那契数列,根据所述存储层级数量获取数列和数;
7、根据所述距离范围阈值和所述数列和数获取单位距离、并根据所述单位距离获取各存储层级距离所述中心点的距离半径;
8、分别根据每个存储层级对应的斐波那契数列的数值与所述数
9、分别根据所述存储层级数量、以及各存储层级的副本补数获取每个存储层级的所述副本存储数量。
10、例如,在本申请一些实施例提供的分布式存储方法中,所述每个存储层级的副本存储数量跟随所属存储层级的距离半径的增加而减少。
11、例如,在本申请一些实施例提供的分布式存储方法中,所述根据各存储层级的副本存储数量,分别在各存储层级选择存储节点存储各分片数据进一步包括:
12、在各存储层级的存储节点中随机选取所述副本存储数量的存储节点,并将所述分片数据分别存储在选取的存储节点上。
13、例如,在本申请一些实施例提供的分布式存储方法中,所述对待存储数据进行分片操作并生成多个分片数据进一步包括:
14、根据预设置的身份标识作为加密因子对所述待存储数据进行加密操作获取待存储加密数据;
15、根据所述待存储加密数据的数据量确定分片单位容量,根据所述数据量和分片单位容量获取所述待存储加密数据的分片数量;
16、根据所述分片数量对所述待存储加密数据进行分片操作并生成多个分片数据。
17、例如,在本申请一些实施例提供的分布式存储方法中,所述根据预设置的身份标识作为加密因子对所述待存储数据进行加密操作获取待存储加密数据进一步包括:
18、使用所述身份标识作为加密因子与所述待存储数据进行逐位异或操作生成所述待存储加密数据,以使得对待解密数据进行解密操作时使用所述身份标识作为解密因子与所述待解密数据进行逐位异或操作以还原所述待存储数据,所述待解密数据为从各存储节点获取的全部分片数据拼接形成的。
19、例如,在本申请一些实施例提供的分布式存储方法中,所述对待存储数据进行分片操作并生成多个分片数据进一步包括:
20、根据所述待存储数据的数据量确定分片单位容量,根据所述数据量和分片单位容量获取所述待存储数据的分片数量;
21、根据所述分片数量对所述待存储数据进行分片操作并生成多个待加密分片数据;
22、根据预设置的身份标识作为加密因子分别对各待加密分片数据进行加密操作获取所述分片数据。
23、例如,在本申请一些实施例提供的分布式存储方法中,所述根据预设置的身份标识作为加密因子分别对各待加密分片数据进行加密操作获取所述分片数据进一步包括:
24、使用所述身份标识作为加密因子分别与所述待加密分片数据进行逐位异或操作生成所述分片数据,以使得对待解密数据进行解密操作时使用所述身份标识作为解密因子与所述待解密数据进行逐位异或操作以还原所述待加密分片数据,所述待解密数据为从所述存储节点获取的分片数据。
25、例如,在本申请一些实施例提供的分布式存储方法中,在所述对待存储数据进行分片操作并生成多个分片数据之前,所述分布式存储方法还包括:
26、根据所述待存储数据的标识数据,使用椭圆曲线算法生成公钥和私钥,根据所述公钥形成所述身份标识。
27、例如,在本申请一些实施例提供的分布式存储方法中,所述根据所述待存储数据的标识数据,使用椭圆曲线算法生成公钥和私钥,根据所述公钥形成所述身份标识进一步包括:
28、根据预设置的标识位数阈值生成随机数并作为所述标识数据;
29、使用椭圆曲线算法生成所述标识数据的公钥和私钥;
30、通过至少一个哈希算法对所述公钥进行加密生成哈希值;
31、根据所述哈希值、预设置的版本号和校验码生成所述身份标识。
32、本专利技术第二个实施例提供一种数据的分布式存储装置,包括:
33、分片数据生成单元,用于对待存储数据进行分片操作并生成多个分片数据;
34、存储参数生成单元,用于以待存储数据的当前位置为中心点,根据预设置的距离范围阈值、存储层级数量和副本存储阈值,基于斐波那契数列分别按照各存储层级距离所述中心点的距离半径确定各分片数据在每个存储层级进行存储的副本存储数量;
35、分布式存储单元,用于根据各存储层级的副本存储数量,分别在各存储层级选择存储节点存储各分片数据。
36、本专利技术第三个实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一个实施例所述的方法。
37、本专利技术第四个实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第四个实施例所述的方法。
38、本专利技术的有益效果如下:
39、本专利技术针对目前现有的问题,制定一种数据的分布式存储方法和存储装置,并根据距离范围阈值、存储层级数量、副本存储阈值和斐波那契数列确定存储参数,将各分片数据分别存储在不同存储层级上,并且每个分片数据在不同存储层级上存储的副本数量不一,能够实现待存储数据的去中心化分布式存储,并且通过将各分片数据存储于不同的存储节点上,能够避免单点故障,从而弥补了现有技术中存在的问题,有效提高存储效率和存储安全性能,具有广泛的应用前景。
本文档来自技高网...【技术保护点】
1.一种数据的分布式存储方法,其特征在于,包括:
2.根据权利要求1所述的分布式存储方法,其特征在于,所述以待存储数据的当前位置为中心点,根据预设置的距离范围阈值、存储层级数量和副本存储阈值,基于斐波那契数列分别按照各存储层级距离所述中心点的距离半径确定各分片数据在每个存储层级进行存储的副本存储数量进一步包括:
3.根据权利要求2所述的分布式存储方法,其特征在于,所述每个存储层级的副本存储数量跟随所属存储层级的距离半径的增加而减少。
4.根据权利要求2所述的分布式存储方法,其特征在于,所述根据各存储层级的副本存储数量,分别在各存储层级选择存储节点存储各分片数据进一步包括:
5.根据权利要求1所述的分布式存储方法,其特征在于,所述对待存储数据进行分片操作并生成多个分片数据进一步包括:
6.根据权利要求5所述的分布式存储方法,其特征在于,所述根据预设置的身份标识作为加密因子对所述待存储数据进行加密操作获取待存储加密数据进一步包括:
7.根据权利要求1所述的分布式存储方法,其特征在于,所述对待存储数据进行分片操作并
8.根据权利要求7所述的分布式存储方法,其特征在于,所述根据预设置的身份标识作为加密因子分别对各待加密分片数据进行加密操作获取所述分片数据进一步包括:
9.根据权利要求5或7所述的分布式存储方法,其特征在于,在所述对待存储数据进行分片操作并生成多个分片数据之前,所述分布式存储方法还包括:
10.根据权利要求9所述的分布式存储方法,其特征在于,所述根据所述待存储数据的标识数据,使用椭圆曲线算法生成公钥和私钥,根据所述公钥形成所述身份标识进一步包括:
11.一种数据的分布式存储装置,其特征在于,包括:
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一项所述的方法。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-10中任一项所述的方法。
...【技术特征摘要】
1.一种数据的分布式存储方法,其特征在于,包括:
2.根据权利要求1所述的分布式存储方法,其特征在于,所述以待存储数据的当前位置为中心点,根据预设置的距离范围阈值、存储层级数量和副本存储阈值,基于斐波那契数列分别按照各存储层级距离所述中心点的距离半径确定各分片数据在每个存储层级进行存储的副本存储数量进一步包括:
3.根据权利要求2所述的分布式存储方法,其特征在于,所述每个存储层级的副本存储数量跟随所属存储层级的距离半径的增加而减少。
4.根据权利要求2所述的分布式存储方法,其特征在于,所述根据各存储层级的副本存储数量,分别在各存储层级选择存储节点存储各分片数据进一步包括:
5.根据权利要求1所述的分布式存储方法,其特征在于,所述对待存储数据进行分片操作并生成多个分片数据进一步包括:
6.根据权利要求5所述的分布式存储方法,其特征在于,所述根据预设置的身份标识作为加密因子对所述待存储数据进行加密操作获取待存储加密数据进一步包括:
7.根据权利要求1所述的分布式存储方...
【专利技术属性】
技术研发人员:李鑫,
申请(专利权)人:京东方科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。