一种数据存储方法、装置、设备及介质与流程

文档序号:31671253发布日期:2022-09-28 00:59阅读:85来源:国知局
一种数据存储方法、装置、设备及介质与流程

1.本发明涉及计算机技术领域,特别涉及一种数据存储方法、装置、设备及介质。


背景技术:

2.随着数据量越来越大,同一个操作系统中无法存下所有的数据,因此需要将数据分配到更多的操作系统管理的磁盘中,但是这样不方便管理和维护,由此需要一种系统来管理多台机器上的文件,也即分布式文件管理系统,hdfs(hadoop distributed file system,分布式文件系统)是分布式文件管理系统中的一种,由很多服务器联合起来实现其功能,用于存储文件,并通过目录树来定位文件。
3.参见图1所示,当前hdfs流式数据存储的步骤如下:(1)客户端向名称节点(nn,name node)发送文件上传请求;(2)nn节点收到请求后,执行各种检查确定该文件是否存在以及客户端是否有权限操作,如果均有,则向客户端返回可以上传的指令;(3)客户端收到指令后,向nn节点发起dn(dn,data node)节点下发请求(4)nn节点根据副本参数和机架感知计算出上传的dn节点,并告知给客户端;(5)客户端根据返回的dn节点进行数据上传,首先与第一个dn节点建立通信管道,然后第一个dn节点调用第二个dn节点,第二个dn节点调用第三个dn节点,直到将整个通信建立完成;(6)dn1、dn2、dn3逐级应答客户端,通信管道建立完成;(7)客户端向dn1上传第一个block(数据块),(先从磁盘读取数据放到一个本地内存缓存),以packet为单位,dn1收到一个packet就会传给dn2,dn2传给dn3;其中,该数据块为对文件进行切分后得到的数据块;(8)当第一个block传输完成后,客户端再次请求上传第二个block,直到文件的全部block上传成功。上述过程缺陷是:数据按照block流式存储,受限于网络带宽、网络时延,以及断连后需要选择新的dn节点重新上传;其次,block上传至dn节点后处理受限于dn节点的资源使用,当此dn节点处理其他紧急事务,资源利用率过高会导致数据处理缓慢;最后,dn1接收数据后传给dn2,dn2传给dn3,使得dn2、dn3的资源得不到有效利用。
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.图1为一种传统的数据存储方法流程图;
39.图2为本技术公开的一种数据存储方法流程图;
40.图3为本技术公开的一种数据节点建立连接通道的结构示意图;
41.图4为本技术公开的一种大文件数据分片的结构示意图;
42.图5为本技术公开的一种具体的数据存储方法流程图;
43.图6为本技术公开的一种数据存储装置结构示意图;
44.图7为本技术公开的一种电子设备结构图。
具体实施方式
45.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
46.数据按照block流式存储,受限于网络带宽、网络时延,以及断连后需要选择新的dn节点重新上传;其次,block上传至dn节点后处理受限于dn节点的资源使用,当此dn节点处理其他紧急事务,资源利用率过高会导致数据处理缓慢;最后,dn1接收数据后传给dn2,dn2传给dn3,使得dn2、dn3的资源得不到有效利用。
47.为此,本技术实施例提出一种数据存储方案,能够提高传输效率、提高数据传输稳定性以及实现资源合理利用。
48.本技术实施例公开了一种数据存储方法,参见图2所示,该方法包括:
49.步骤s11:通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点确定各数据节点。
50.本实施例中,分布式文件系统中的名称节点在接收到所述文件上传请求后,确定该文件是否存在以及客户端是否有权限操作,如果均有,则向客户端返回可以上传的指令。客户端收到指令后,向名称节点发起数据节点下发请求,以便名称节点计算相应的数据节点并告知给客户端。
51.步骤s12:向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道。
52.相较于传统的客户端只与一个数据节点建立连接,本实施例增加了与数据节点的连接数量,具体的,本实施例向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道,参见图3所示,在得到名称节点告知的3个数据节点后,本实施例与该3个数据节点均建立连接通道。
53.步骤s13:对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量。
54.可以理解的是,在将大文件上传至数据节点之前,首先要对所述大文件进行分片,并为分片后得到的各个数据块均添加数据头,所述数据头包括文件标识以及分片偏移量,参见图4所示,其中,分片后得到的数据块的大小可以是128m,在此不做具体限定。
55.步骤s14:通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。
56.示例性的,假设共有三个数据节点,并且大文件被分为十个数据块,则本实施例首先为每个数据节点均分配一个数据块,当这三个数据节点中有数据节点已完成数据传输后,本实施例为该数据节点分配所述十个数据块中还未被分配的数据块,直至所述十个数据块均被存储至相应的数据节点。
57.本实施例中,当目标数据节点对目标数据块的传输过程存在异常,则记录传输中断情况,并判断所述目标数据节点以外是否存在其他数据节点;如果所述目标数据节点以
外存在其他数据节点,则从所述其他数据节点中确定新的数据节点,并重新向所述新的数据节点发送连接请求,然后在接收到所述新的数据节点基于允许连接返回的应答消息后,与所述新的数据节点建立通信管道,并基于传输中断情况通过所述通信通道将所述目标数据块分配至所述新的数据节点。如果所述目标数据节点以外不存在其他数据节点,则基于传输中断情况重新向所述目标数据节点发送所述目标数据块。
58.本实施例中,在将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点之后,还包括:基于预设的交互管道将所述各数据节点中每个数据节点接收到的数据块发送至所述各数据节点中的其他数据节点。进一步的,基于所述文件标识判断当前所述各数据节点中,任一数据节点的数据块是否属于同一个大数据文件;如果所述任一数据节点中的所述数据块属于同一个大数据文件,则按照所述分片偏移量将所述任一数据节点中的所述数据块重组为相应的大数据文件,可见,本实施例能够在所述各数据节点上均生成大数据文件,如此一来,能够在某个数据节点出现异常时从其他数据节点获取所述大数据文件。
59.可见,本技术提出一种数据存储方法,包括:通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点确定各数据节点;向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道;对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量;通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。由此可见,相较于传统的客户端只与一个数据节点建立连接,本技术增加了与数据节点的连接数量,由于多个连接传输比单个连接传输更快;并且,在网络延迟比较大或有断网情况下,多个连接提高了传输的稳定性、可靠性;此外,与多个数据节点建立连接后,数据上传至多个数据节点后处理消耗的资源由多个数据节点分担。综上所述,本技术通过增加与数据节点的连接数量达到提高传输效率、提高数据传输稳定性以及资源合理利用的效果。
60.本技术实施例公开了一种具体的数据存储方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图5所示,具体包括:
61.步骤s21:通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点,基于副本存放策略以及机架感知确定各数据节点。
62.本实施例中,所述名称节点,基于副本存放策略以及机架感知确定各数据节点。
63.步骤s22:向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道。
64.本实施例中,当各数据节点数量不大于所述副本存放策略所规定的副本个数,则向所述各数据节点发起连接请求。当各数据节点数量大于所述副本存放策略中所规定的副本个数,则判断所述副本存放策略中的副本是否为默认副本;如果所述副本存放策略中的副本为所述默认副本,则基于默认副本个数向相应的数据节点发起连接请求;如果所述副本存放策略中的副本为自定义副本,则向所述各数据节点发起连接请求。示例性的,当各数据节点数量为2个,所述副本存放策略所规定的副本个数为3个,则向2个数据节点均发起连
接请求。当各数据节点数量为4个,此时判断所述副本存放策略中的副本是否为默认副本,如果是默认副本,并且默认副本个数为3,则向3个数据节点发送连接请求,如果是自定义副本,则向4个数据节点均发起连接请求。
65.步骤s23:对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量。
66.步骤s24:通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。
67.其中,关于步骤s23以及步骤s24更加具体的过程参见前述公开的实施例所示,在此不做具体赘述。
68.可见,本技术提出一种数据存储方法,包括:通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点,基于副本存放策略以及机架感知确定各数据节点;向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道;对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量;通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输,由此可见,相较于传统的客户端只与一个数据节点建立连接,本技术增加了与数据节点的连接数量,由于多个连接传输比单个连接传输更快;并且,在网络延迟比较大或有断网情况下,多个连接提高了传输的稳定性、可靠性;此外,与多个数据节点建立连接后,数据上传至多个数据节点后处理消耗的资源由多个数据节点分担。综上所述,本技术通过增加与数据节点的连接数量达到提高传输效率、提高数据传输稳定性以及资源合理利用的效果。
69.相应的,本技术实施例还公开了一种数据存储装置,参见图6所示,该装置包括:
70.数据节点确定模块11,用于通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点确定各数据节点;
71.通信管道建立模块12,用于向所述各数据节点发起连接请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道;
72.大数据文件分片模块13,用于对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量;
73.数据块传输模块14,用于按照分片顺序并通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。
74.其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
75.可见,本技术提出一种数据存储方法,包括:通过客户端向分布式文件系统中的名
称节点发送文件上传请求,并通过所述名称节点确定各数据节点;向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道;对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量;通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。由此可见,相较于传统的客户端只与一个数据节点建立连接,本技术增加了与数据节点的连接数量,由于多个连接传输比单个连接传输更快;并且,在网络延迟比较大或有断网情况下,多个连接提高了传输的稳定性、可靠性;此外,与多个数据节点建立连接后,数据上传至多个数据节点后处理消耗的资源由多个数据节点分担。综上所述,本技术通过增加与数据节点的连接数量达到提高传输效率、提高数据传输稳定性以及资源合理利用的效果。
76.在一些具体实施例中,所述数据节点确定模块11,具体可以包括:
77.数据节点确定单元,用于通过所述名称节点,并基于副本存放策略以及机架感知确定各数据节点。
78.在一些具体实施例中,所述通信管道建立模块12,具体可以包括:
79.第一连接请求建立单元,用于当各数据节点数量不大于所述副本存放策略所规定的副本个数,则向所述各数据节点发起连接请求。
80.在一些具体实施例中,所述通信管道建立模块12,具体可以包括:
81.第二连接请求建立单元,用于当各数据节点数量大于所述副本存放策略中所规定的副本个数,则判断所述副本存放策略中的副本是否为默认副本;如果所述副本存放策略中的副本为所述默认副本,则基于默认副本个数向相应的数据节点发起连接请求;如果所述副本存放策略中的副本为自定义副本,则向所述各数据节点发起连接请求。
82.在一些具体实施例中,所述数据块传输模块14之后,进一步还可以包括:
83.数据发送单元,用于基于预设的交互管道将所述各数据节点中每个数据节点接收到的数据块发送至所述各数据节点中的其他数据节点。
84.在一些具体实施例中,所述数据发送单元之后,进一步还可以包括:
85.数据块重组单元,用于基于所述文件标识判断当前所述各数据节点中,任一数据节点的数据块是否属于同一个大数据文件;如果所述任一数据节点中的所述数据块属于同一个大数据文件,则按照所述分片偏移量将所述任一数据节点中的所述数据块重组为相应的大数据文件。
86.在一些具体实施例中,所述数据存储装置,进一步还可以包括:
87.数据异常处理单元,用于当目标数据节点对目标数据块的传输过程存在异常,则判断所述目标数据节点以外是否存在其他数据节点;如果所述目标数据节点以外存在其他数据节点,则从所述其他数据节点中确定新的数据节点,并重新向所述新的数据节点发送连接请求,然后在接收到所述新的数据节点基于允许连接返回的应答消息后,与所述新的数据节点建立通信管道,并通过所述通信通道将所述目标数据块分配至所述新的数据节点。
88.进一步的,本技术实施例还提供了一种电子设备。图7是根据一示例性实施例示出
的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。
89.图7为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、显示屏23、输入输出接口24、通信接口25、电源26、和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现以下步骤:
90.通过客户端向分布式文件系统中的名称节点发送文件上传请求,并通过所述名称节点确定各数据节点;
91.向所述各数据节点发起连接建立请求,并在接收到所述各数据节点基于允许连接返回的应答消息后,与所述各数据节点建立通信管道;
92.对大数据文件进行分片,得到若干数量的数据块,其中,每个所述数据块包括所述大数据文件的文件标识以及分片偏移量;
93.通过所述通信管道,将所述若干数量的数据块依次分配至所述各数据节点,然后将所述若干数量的数据块中当前未被分配的数据块,分配至当前已完成传输的数据节点直至所述若干数量的数据块均被存储至相应的数据节点,以便通过所述各数据节点完成对所述若干数量的数据块的传输。
94.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,具体可以实现以下步骤:
95.通过所述名称节点,并基于副本存放策略以及机架感知确定各数据节点。
96.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,具体可以实现以下步骤:
97.当各数据节点数量不大于所述副本存放策略所规定的副本个数,则向所述各数据节点发起连接请求。
98.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,具体可以实现以下步骤:
99.当各数据节点数量大于所述副本存放策略中所规定的副本个数,则判断所述副本存放策略中的副本是否为默认副本;
100.如果所述副本存放策略中的副本为所述默认副本,则基于默认副本个数向相应的数据节点发起连接请求;
101.如果所述副本存放策略中的副本为自定义副本,则向所述各数据节点发起连接请求。
102.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,还可以进一步包括以下步骤:
103.基于预设的交互管道将所述各数据节点中每个数据节点接收到的数据块发送至所述各数据节点中的其他数据节点。
104.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,还可以进一步包括以下步骤:
105.基于所述文件标识判断当前所述各数据节点中,任一数据节点的数据块是否属于同一个大数据文件;
106.如果所述任一数据节点中的所述数据块属于同一个大数据文件,则按照所述分片
偏移量将所述任一数据节点中的所述数据块重组为相应的大数据文件。
107.在一些具体实施方式中,所述处理器通过执行所述存储器中保存的计算机程序,还可以进一步包括以下步骤:
108.当目标数据节点对目标数据块的传输过程存在异常,则判断所述目标数据节点以外是否存在其他数据节点;
109.如果所述目标数据节点以外存在其他数据节点,则从所述其他数据节点中确定新的数据节点,并重新向所述新的数据节点发送连接请求,然后在接收到所述新的数据节点基于允许连接返回的应答消息后,与所述新的数据节点建立通信管道,并通过所述通信通道将所述目标数据块分配至所述新的数据节点。
110.本实施例中,电源26用于为电子设备20上的各硬件设备提供工作电压;通信接口25能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口24,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
111.另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括计算机程序221,存储方式可以是短暂存储或者永久存储。其中,计算机程序221除了包括能够用于完成前述任一实施例公开的由电子设备20执行的数据存储方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
112.进一步的,本技术实施例还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的数据存储方法。
113.关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
114.本技术书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
115.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
116.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
117.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作
之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
118.以上对本技术所提供的一种数据存储方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1