一种基于大数据平台的分布式存储方法及系统与流程

文档序号:28959112发布日期:2022-02-19 12:29阅读:68来源:国知局
一种基于大数据平台的分布式存储方法及系统与流程

1.本技术涉及数据处理领域,具体地,涉及一种基于大数据平台的分布式存储方法及系统。


背景技术:

2.随着信息科学技术的不断发展,大数据平台的使用已越来越频繁,大数据平台具有数据传输和存储等十分强大的功能,但是在基于大数据平台的数据存储过程中,数据的存储依然很耗时,而且在数据的存储过程中,数据常常会由存储异常的风险,常见的解决方式是对数据在存储传输的过程中进行加密,但是仅仅加密并不能保证数据的完全安全,数据的存储依然存在安全隐患。
3.因此,如何提供一种能够解决数据存储安全隐患的分布式存储方法及系统,是本领域技术人员急需解决的问题。


技术实现要素:

4.本技术提供了一种基于大数据平台的分布式存储方法,具体包括以下步骤:获取存储数据请求;确定存储节点集合,将获取的存储数据请求对应的数据存储在存储节点集合的存储节点中;响应于将数据存储在存储节点集合中,初始选取簇节点;响应于完成簇节点的初始选取,根据簇节点进行首次数据迁移;响应于簇节点完成首次数据迁移,更新簇节点;响应于完成指定次数的簇节点的更新,确定簇节点集合,根据簇节点集合执行每次数据的存储迁移。
5.如上的,其中,预先设置多个存储数据的节点,选择一个节点作为接收数据的源节点。
6.如上的,其中,确定存储节点集合,将获取的存储数据请求对应的数据存储在存储节点集合的存储节点中,具体包括以下子步骤:确定存储区域;根据存储区域构建初始存储节点集合;对初始存储节点集合进行更新;响应于完成存储节点集合的更新,源节点接收存储请求,进行数据的存储。
7.如上的,其中,以源节点为中心,以源节点的传输距离为半径画弧,该区域内的范围即为存储区域。
8.如上的,其中,初始存储节点集合包括,源节点以及距离源节点l跳的相邻节点。
9.如上的,其中,响应于完成初始存储节点集合的构建,逐一收集距离源节点2跳的节点,直至存储节点集合的节点性能大于指定阈值。
10.如上的,其中,若节点性能大于指定阈值,更新后的存储节点集合中的节点为存储节点,将源节点接收的存储请求对应的数据存储在一个或多个存储节点中。
11.如上的,其中,响应于将数据存储在存储节点集合中,初始选取簇节点具体包括以下子步骤:确定存储网格中单元格的边长,根据单元格的边长构建存储网格;在存储网格中进行簇节点的选取;响应于选取簇节点后,存储节点将存储的数据转发至簇节点。
12.如上的,其中,设任意两个存储节点间的最大通信距离为r,单元格边长是r,则单元格边长需满足。
13.一种基于大数据平台的分布式存储系统,具体包括:获取单元、存储单元、初始选取单元、迁移单元、更新单元以及执行单元;获取单元,用于获取源数据;存储单元,用于确定存储节点集合,将获取的存储数据请求对应的数据存储在存储节点集合的存储节点中;初始选取单元,用于响应于将获取的存储数据请求存储在存储节点集合中,初始选取簇节点;迁移单元,用于响应于完成簇节点的选取,根据簇节点进行数据迁移;更新单元,用于响应于簇节点完成数据迁移,更新簇节点;执行单元,用于响应于完成指定次数簇节点的更新,确定簇节点集合,根据此节点集合执行每次数据迁移。
14.本技术具有以下有益效果:本技术能够对数据进行存储后,在指定时间段内进行数据的存储迁移,避免因节点异常而导致存储异常,使得数据的存储更加安全。
附图说明
15.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
16.图1是根据本技术实施例提供的基于大数据平台的分布式存储方法的流程图;图2是根据本技术实施例提供的基于大数据平台的分布式存储系统的内部结构图;图3是根据本技术实施例提供的相邻单元格的示意图。
具体实施方式
17.下面结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
18.本技术涉及一种基于大数据平台的分布式存储方法及系统。根据本技术,能够对海量数据进行存储以及转发存储,在进行数据良好存储的同时也降低并均衡了系统的整体能量消耗。
19.实施例一如图1所示,是本技术提供的一种基于大数据平台的分布式存储方法,具体包括以下步骤:步骤s110:获取存储数据请求。
20.步骤s120:确定存储节点集合,将获取的存储数据请求对应的数据存储在存储节点集合的存储节点中。
21.其中系统中设有多个为存储数据而准备的节点,选择一个节点作为接收数据的源
节点。其中确定存储节点的集合具体包括以下子步骤:步骤s1201:确定存储区域。
22.具体地,以源节点为中心,以源节点的传输距离为半径画弧,该圆圈范围内即为存储区域,该存储区域的边界为u。
23.步骤s1202:根据存储区域构建初始存储节点集合。
24.具体地,将存储区域内,距离源节点l跳的相邻节点加入集合f中。
25.步骤s1203:对存储节点集合进行更新。
26.其中,根据存储节点集合中存储节点的节点性能进行存储节点集合的更新,响应于将距离源节点l跳的相邻节点加入集合f中,则继续逐一收集距离源节点2跳的节点,直至存储节点集合f的节点性能满足条件。
27.本实施例优先选取在存储区域中心的节点,即优先选取离存储区域的边界较远的节点,认为在中心选取的节点之间的距离较为密集,传输数据能有更好的效果。
28.区别于传统衡量节点性能的方式,例如衡量节点的存储容量,以及节点的读写速度等,本实施例提出了节点性能的具体计算方式,其中节点性能是用来衡量进行节点收集后,存储节点集合中节点传输或存储数据量的表现。
29.本实施例基于收集的传输半径与总的节点的传输半径来确定收集的节点是否对于传输有意义,由于本实施例划分了存储区域,虽然以源节点为中心收集的节点大概率是距存储边界较远的节点,但是为了保证选取节点的准确性,本实施例进一步引入了存储区域的参数来对节点性能进行综合考量得到节点性能。具体考虑收集的节点距存储边界的距离作为考量参数。
30.其中节点性能越大则说明传输或存储数据的表现越好,反之则说明传输或存储数据的表现较差。
31.其中存储节点集合中节点的节点性能q具体表示为:公式1其中,表示收集的节点v的传输半径,m表示收集的节点的数量,表示收集节点后,更新的存储节点集合中的节点v的网络传输延迟,表示表示收集节点后,更新的存储节点集合中的节点v的传输半径,表示更新的存储节点集合中的节点v到存储区域边界u的距离,l表示更新的存储节点集合中的节点数量。
32.其中用0.1~1定义网络传输延迟,若存储节点v的网络传输延迟小于指定阈值,则认为该节点的传输性能较好,则将该网络传输延迟的值自动在0.6~1之间取值,若存储节点v的网络传输延迟低于指定阈值,则认为该节点的传输性能较差,则将该网络传输延迟的值自动在0.1~0.5之间取值。
33.若获取得到的节点性能大于指定阈值,则认为节点性能满足条件,已经收集的节
点传输或存储数据的性能较为良好,则更新后的存储节点集合中的节点为存储节点,执行步骤s1204,否则重新确定存储节点集合中的节点,直至节点性能大于指定阈值。
34.其中存储区域中的节点数大于或等于存储节点集合f中的节点数。
35.步骤s1204:响应于完成存储节点集合的更新,源节点接收存储请求,进行数据的存储。
36.其中源节点接收存储请求,将存储请求对应的数据均匀存储在一个或多个存储节点中。
37.若源节点接收到多条存储数据的请求,选择其中的一条请求接收。
38.步骤s130:响应于将数据存储在存储节点集合中,初始选取簇节点。
39.由于在数据存储后,若非用户访问数据,数据会一直存储在存储节点中,而当该存储节点异常时数据的存储就变得岌岌可危,因此本实施例中,在对数据均匀存储在存储节点后,选取簇节点,在指定时间后,多个存储数据的存储节点将数据发送至簇节点将存储在任一存储节点中的数据进行迁移存储。因此在本步骤中,进行数据迁移前的准备,即进行簇节点的选取。
40.其中步骤s130具体包括以下子步骤:具体地,在存储区域中进行单元格的划分,每个单元格为一簇,单元格中的节点为簇节点进行数据的存储转发,具体为源节点接收数据后,由簇节点进行数据的存储转发。
41.步骤s1301:确定存储网格中单元格的边长,根据单元格的边长构建存储网格。
42.其中,根据存储节点的通信半径将存储区域划分为虚拟正方形单元格,划分的单元格必须保证相邻单元格中的任意两个存储节点可以直接通信。
43.设任意两个存储节点间的最大通信距离为r,单元格边长是r,如图3所示,若要保证两个相邻单元格之间的所有存储节点间的距离小于他们的无线通信距离,则划分的单元格边长需满足。
44.响应于单元格边长确定后,根据该边长进行存储网格的划分,使得存储网格中的每一个单元的边长都满足于。
45.步骤s1302:在存储网格中进行簇节点的选取。
46.其中,同一个单元格中的节点都是等价的,在存储节点中选择簇节点进行数据的存储转发,该节点为未存储数据的节点。
47.进一步地,若每一个单元格中包括多个未存储数据的存储节点,则进行簇节点的竞争。
48.具体地,定义多个未存储数据的存储节点为预备节点,每个预备节点处于发现、活动和睡眠三种状态,并周期性地在三种状态间转换。
49.在竞争初始化阶段,所有预备节点都处于发现状态,每个预备节点发送自己的编号和位置信息,并利用自身定时器产生一个随机数,若在某个节点定时器超时,则该节点被选为簇节点,并发送消息声明该节点进行活动状态;若某预备节点在超时前收到同一单元格内的其他预备节点成为簇节点的消息,则进入睡眠状态。
50.进一步地,将被选为簇节点中包含的定时器时间设置为t,在t超时之前,簇节点定
时发送其处于活动状态的消息,抑制其他预备节点进入活动状态。
51.其中编号和位置信息是预先由工作人员根据存储区域的全部节点设置的信息,目的是为了根据该信息控制节点状态的切换。
52.步骤s1303:响应于选取簇节点后,存储节点将存储的数据转发至簇节点。
53.步骤s140:响应于完成簇节点的初始选取,根据簇节点进行首次数据迁移。
54.由于在指定时间后,存储数据的存储节点将数据发送至簇节点将存储在任一存储节点中的数据进行迁移存储,即存储数据是活动存储在各存储节点中的。进一步地,簇节点是能够活动的节点,以使数据的迁移存储更加快速。其中将存储在自身的数据发送给簇节点的存储节点为中节点。此时未存储数据,区别于中节点的节点为存储节点。
55.其中选取的簇节点只能进行一次数据迁移。
56.其中步骤s140具体包括以下子步骤:步骤s1401:簇节点移动到中节点周围,进行存储数据的接收。
57.具体地,簇节点移动到距离中节点指定跳数的范围内进行存储数据的接收。
58.其中若簇节点进行移动接收了中节点发送的存储数据后,则默认簇节点进入了该中节点的单元格内。
59.步骤s1402:响应于簇节点接收到存储数据,簇节点将接收到的数据发送给多个单元格中。
60.具体地,簇节点将存储数据发送至多个单元格中,单元格将自身信息发送至簇节点中。
61.优选地,簇节点可将存储数据发送到与中节点相邻或相邻指定距离的单元格中,簇节点发送存储数据的方式为一个单元格一个单元格的移动。
62.具体地,单元格的自身信息包括单元格内的剩余存储能量。其中本实施例中的“能量”可以是节点内的存储空间大小。
63.其中每个单元格的剩余存储能量具体表示为:公式2其中n表示单元格内的存储节点的个数(由于簇节点会移动到各单元格进行数据的发送,因此在计算剩余存储能量时,存储节点个数需要减去一个簇节点的数量),表示节点i的剩余存储能量。
64.步骤s1403:簇节点将多个单元格的平均能量进行比较,确定最终单元格。
65.其中,将单元格内剩余能量最多的单元格作为最终单元格。
66.步骤s1404:在最终单元格确定存储数据迁移的最终存储节点。
67.其中,响应于确定最终单元格,簇节点将存储数据转发至该单元格内的多个节点中,接收数据最快的存储节点即为最终存储节点。
68.步骤s150:响应于簇节点完成首次数据迁移,更新簇节点。
69.其中通过步骤s1401-s1404完成了存储数据的一次迁移,在之后需要迁移其他存储数据时,更新簇节点,即重新选取簇节点再次进行数据迁移。
70.其中步骤s130为初始选取簇节点的方式,后续每次簇节点的选取方式并不按照竞争的方式选取,而是在多个预备节点(多个未存储数据的存储节点为预备节点)中选取满足条件的簇节点。
71.进一步地,由于簇节点接收和转发数据均需要耗费能量,因此根据预备节点的剩余能量与预备节点到存储区域边界距离的加权和,决定该预备节点是否会被选为簇节点,其中若距离边界较远,预备节点剩余能量越少,则认为耗费能量更多,反之则认为耗费能量更少。其中预备节点的加权和具体表示为:公式3其中表示预备节点j的剩余能量,为加权系数,为工作人员预先根据设想的预备节点的剩余能量和预备节点到存储区域边界距离的重要程度,而预先设定的固定数值,具体在,d表示预备节点j到存储区域边界的距离。
72.其中选取值最大的预备节点为簇节点,并继续执行步骤s140进行数据的迁移。
73.步骤s160:响应于完成指定次数簇节点的更新,确定簇节点集合,根据簇节点集合执行每次数据的存储迁移。
74.其中,根据簇节点集合执行之后的每次数据存储迁移操作。
75.将初始选取的簇节点放入簇节点集合中,将之后指定次数内成功完成数据迁移所选取的簇节点也放入簇节点集合中。再次需要进行数据迁移时,从簇节点集合中选取簇节点即可,不需要再从多个存储节点进行比较从而选取簇节点,使得数据的迁移更加方便,过程更加简洁。
76.实施例二如图2所示,本技术提供一种基于大数据平台的分布式存储系统,具体包括:获取单元210、存储单元220、初始选取单元230、迁移单元240、更新单元250、执行单元260。
77.获取单元210用于获取源数据。
78.存储单元220与获取210连接,用于确定存储节点集合,将获取的存储数据请求对应的数据存储在存储节点集合的存储节点中。
79.初始选取单元230与存储单元220连接,用于响应于将获取的存储数据请求存储在存储节点集合中,初始选取簇节点。
80.迁移单元240与初始选取单元230连接,用于响应于完成簇节点的选取,根据簇节点进行数据迁移。
81.更新单元250与迁移单元240连接,用于响应于簇节点完成数据迁移,更新簇节点。
82.执行单元260与更新单元250连接,用于响应于完成指定次数簇节点的更新,确定簇节点集合,根据此节点集合执行每次数据迁移。
83.本技术具有以下有益效果:本技术能够对数据进行存储后,在指定时间段内进行数据的存储迁移,避免因节点异常而导致存储异常,使得数据的存储更加安全。
84.虽然当前申请参考的示例被描述,其只是为了解释的目的而不是对本技术的限制,对实施方式的改变,增加和/或删除可以被做出而不脱离本技术的范围。
85.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1