一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据分离及分散存储的方法与流程

2021-12-04 01:26:00 来源:中国专利 TAG:
1.本发明涉及分布式存储领域,具体涉及一种数据分离及分散存储的方法。
背景技术
::2.分布式存储为当今用户和企业提供了一种高效、便利的数据存储方式,相比于传统的数据存储方式,分布式存储具有更高的系统可靠性、可用性、易拓展性和存取效率,将数据存储在整个网络中,也解决了集中式存储方案的性能瓶颈。3.现有的分布式存储方法在数据冗余的情况下无法保证系统的执行效率,数据处理方法不够合理高效。因此,有必要研究一种具有较高安全性和存储性能的分布式存储系统,实现用户数据的安全存储和高效存取。技术实现要素:4.本发明的目的是提供一种数据分离及分散存储的方法,其能够有效解决现有分布式存储过程中的缺陷,具体地,一种数据分离及分散存储的方法,包括以下步骤:5.上传过程包括:步骤s10:在上传端上将待上传文件进行数据分割,得到多个数据块;步骤s20:将多个数据块分别传输至不同服务器内的不同节点node上,完成待上传文件的分散上传;6.下载过程包括:步骤s30:在请求端上对不同节点node上存储的单个数据块进行哈希校验,获取待下载文件进行数据分割后的的多个数据块;步骤s40:对多个数据块进行整合恢复,得到待下载文件。7.根据本发明的实施例,待上传文件、待下载文件以及每个数据块均包括唯一标识文件的hash值;上传过程中,待上传文件的hash值与数据分割后的多个数据块的hash值相互对应匹配;下载过程中,待下载文件的hash值与多个数据块的hash值相互对应匹配。8.根据本发明的实施例,每个节点node存储有哈希表hashtable,并且还存储有节点列表nodelist,节点列表nodelist包括节点node能够连接的其他所有节点node的节点信息,节点信息包括节点ip和节点address。9.根据本发明的实施例,一个节点node与另一个节点node创建连接时,发起创建连接的节点node获取另一个节点node的节点列表nodelist,并向获取的节点列表nodelist中的每个节点node创建连接。10.根据本发明的实施例,步骤s10中,数据分割过程采用kad算法将待上传文件分割为多个数据块。11.根据本发明的实施例,步骤s20中,采用并行传输,将多个数据块传输至不同节点node上。12.根据本发明的实施例,步骤s30中,下载过程中,请求端表示的节点node为请求节点,请求节点与自己的节点列表nodelist中的距离请求节点的距离最近的邻近节点node创建连接,并获取邻近节点node的哈希表hashtable,并将待下载文件的hash值与哈希表hashtable中的数值进行哈希校验。13.根据本发明的实施例,步骤s30中,若待下载文件的hash值与邻近节点的hashtable中的数值匹配成功,则哈希校验通过,在邻近节点中下载待下载文件的一个数据块。14.根据本发明的实施例,步骤s30中,若待下载文件的hash值与邻近节点的hashtable中的数值未匹配成功,则哈希校验未通过,请求节点与自己的节点列表nodelist中的不包括已经进行过哈希校验的邻近节点的最近的次级邻近节点创建连接,进行哈希校验;15.直到哈希校验通过时,请求节点与哈希校验通过的节点node直接建立连接,并下载待下载文件的一个数据块。16.根据本发明的实施例,与请求节点进行哈希校验且哈希校验未通过的节点node为中间节点,中间节点的哈希表hashtable中会记录待下载文件的数据块的hash值,并缓存数据块。17.通过采用上述技术方案,本发明主要有如下几点技术效果:18.1.通过将待上传文件数据分割为多个数据块,分散上传至网络中的不同的节点上,可有效提高网络中的服务器的存储资源利用率;19.2.通过将待上传文件数据分割为多个数据块,可有效降低单个服务器节点的存储压力,有效避免数据集中存储下因单个区域故障导致文件无法获取的情况;20.3.通过对数据块进行并行上传且通过哈希校验的方式进行寻址,提高了文件存储下载的速度和可靠性。附图说明21.图1为根据本发明的实施例的一种数据分离及分散存储的方法的流程示意图。具体实施方式22.下面结合说明书附图来说明本发明的具体实施方式。23.请参照图1,本发明的实施例公开了一种数据分离及分散存储的方法,通过采用本实施例中的方法,可有效提高网络存储资源的综合利用率,同时保证文件存储的安全性和高效性。24.本发明公开的一种数据分离及分散存储的方法,主要包括以下四个步骤:25.上传过程包括:26.步骤s10:在上传端上将待上传文件进行数据分割,得到多个数据块;27.步骤s20:将所述多个数据块分别传输至不同服务器内的不同节点node上,完成所述待上传文件的分散上传;28.下载过程包括:29.步骤s30:在请求端上对不同节点node上存储的单个数据块进行哈希校验,获取待下载文件进行数据分割后的的所述多个数据块;30.步骤s40:对所述多个数据块进行整合恢复,得到所述待下载文件。31.本实施例中的分散存储包括上传和下载两个过程,在上传过程中,在上传端将待上传文件分割为多个数据块,将分割后所得的多个数据块分别存储在服务器集群中的不同服务器的不同的节点上。这一过程完成对待上传文件的上传存储过程。在下载过程中,在请求端进行哈希校验过程,根据待下载文件的标识,在网络中获取被待下载文件被分割后的多个数据块,经过整合恢复,即可得到待下载文件。32.在文件的上传和下载过程中涉及的所述待上传文件、所述待下载文件以及每个所述数据块均被分配有唯一标识文件的hash值,并且分割前的文件的hash值与分割后所得的数据块的hash值具有对应匹配的关系,可根据hash值进行数据寻址。具体地,所述上传过程中,所述待上传文件的所述hash值与所述数据分割后的多个所述数据块的所述hash值相互对应匹配;所述下载过程中,所述待下载文件的所述hash值与多个所述数据块的所述hash值相互对应匹配。33.本实施例中,不同服务器的每个所述节点node存储有哈希表hashtable,并且还存储有节点列表nodelist,所述节点列表nodelist包括所述节点node能够连接的其他所有所述节点node的节点信息,所述节点信息包括节点ip和节点address。一个节点node可以通过节点列表nodelist中的其他节点node的节点信息与该节点尝试创建连接。并且,本实施例中一个所述节点node与另一个所述节点node创建连接时,发起创建连接的所述节点node将获取另一个所述节点node的所述节点列表nodelist,并向获取的所述节点列表nodelist中的每个所述节点node尝试创建连接,从而实现一个节点与网络中的越来越多的节点的连接。34.本实施例中,步骤s10中,将待上传文件分割为多个数据块的过程采用kad算法。通过使用kad算法,使用网络中对应的椭圆曲线公钥进行哈希处理,可以从节点node中获取覆盖地址。对于公共密钥派生地址来说,它允许节点node使用加密签名。在kad算法实现过程中,使用底层网络的长期通信渠道,形成具有长久对等连接的网络。然后,所得的连接可以实现在地址空间上定义的特定拓扑。并且通过提供中继消息的策略,在网络中建立两个任意节点node仅使用的底层对等连接。35.为了提高文件上传的速度,本实施例中,在所述步骤s20中,采用并行传输,将多个所述数据块传输至不同所述节点node上。36.在所述步骤s30中,所述下载过程中,所述请求端表示的所述节点node为请求节点。本实施例中,请求节点首先与自己的所述节点列表nodelist中的距离所述请求节点的距离最近的邻近节点node创建连接,并获取所述邻近节点node的所述哈希表hashtable,并将所述待下载文件的所述hash值与所述哈希表hashtable中的数值进行所述哈希校验。具体地,本实施例中的哈希校验为在连接的节点node的哈希表hashtable中去寻找待下载文件的hash值,如果有,即为匹配成功,哈希校验通过,进一步,表示待下载文件被分割后的多个数据块中的一个数据块即存储在该节点node上;如果没有,即为匹配失败,此次哈希校验未通过,进一步,表示待下载文件被分割后的多个数据块中的任意一个数据块均未存储在该节点node上。37.所述步骤s30中,若所述待下载文件的所述hash值与所述邻近节点的所述hashtable中的数值匹配成功,则所述哈希校验通过,在所述邻近节点中下载所述待下载文件的一个所述数据块。若所述待下载文件的所述hash值与所述邻近节点的所述hashtable中的数值未匹配成功,则所述哈希校验未通过,所述请求节点与自己的所述节点列表nodelist中的不包括已经进行过所述哈希校验的所述邻近节点的最近的次级邻近节点创建连接,进行所述哈希校验。持续与距离相对最近的不同节点node依次执行上述哈希校验,直到所述哈希校验通过时,所述请求节点即与所述哈希校验通过的所述节点node直接建立连接,并下载所述待下载文件的一个所述数据块。38.步骤s30中,与所述请求节点进行过所述哈希校验且所述哈希校验未通过的节点node为中间节点。为了给下一次对相同的这一数据块的访问请求提供更快的连接从而提高下载效率,本实施例中,所述中间节点的所述哈希表hashtable中会记录所述待下载文件的所述数据块的所述hash值,并缓存所述数据块。39.以上实施方式仅用于说明本发明,而并非对本发明的限制,有关
技术领域
:的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献