本公开实施例涉及互联网,尤其涉及一种分布式数据存储控制方法、装置及电子设备。
背景技术:
1、网络附属存储(network attached storage,nas)集群可以存储和共享文件。nas集群通过网络向用户提供访问和管理存储的文件的功能。nas存储设备可以直接连接在以太网中,可以在nas集群与客户端之间设置代理节点。代理节点可以从nas获取文件对应的数据,代理节点可以缓存从nas集群获取的文件对应的数据,在用户通过访问请求获取上述数据时,代理节点可以从缓存中向客户端提供服务。
2、由于代理节点对nas集群访问(包括对nas集群中文件数据的修改)的并发性,目前存在代理节点与nas集群中存储数据不一致的问题。
技术实现思路
1、本公开实施例提供一种分布式数据存储控制方法、装置及电子设备。
2、第一方面,本公开实施例提供一种分布式数据存储控制方法,该方法包括:通过代理节点接收针对网络附属存储nas集群中目标文件的访问请求,确定所述访问请求对应的目标元数据;通过所述代理节点基于所述目标文件的元数据与分布式锁设置信息,确定所述目标元数据是否需与目标元数据分布式锁同步有效;在确定所述目标元数据需与所述目标元数据分布式锁同步有效的情况下,若所述代理节点根据目标元数据分布式锁的属性值确定当前目标元数据分布式锁无效,向所述分布式锁管控节点发送第一锁请求;其中,所述第一锁请求用于请求针对所述目标元数据重新分配目标元数据分布式锁;所述目标元数据分布式锁用于控制所述nas集群中共享的所述目标元数据的独占访问;通过所述分布式锁管控节点响应于接收到所述第一锁请求,为所述访问请求配置所述目标元数据分布式锁,并向所述代理节点返回响应信息,所述响应信息指示为所述访问请求成功配置所述目标元数据分布式锁;基于所述目标元数据分布式锁控制对所述nas集群中所述目标文件的访问请求。
3、第二方面,本公开实施例提供一种分布式数据存储控制装置,该装置包括:第一接收单元,用于通过代理节点接收针对网络附属存储nas集群中目标文件的访问请求,确定所述访问请求对应的目标元数据;第一确定单元,用于通过所述代理节点基于所述目标文件的元数据与分布式锁设置信息,确定所述目标元数据是否需与目标元数据分布式锁同步有效;第一发送单元,用于在确定所述目标元数据需与所述目标元数据分布式锁同步有效的情况下,若所述代理节点根据目标元数据分布式锁的属性值确定当前目标元数据分布式锁无效,向所述分布式锁管控节点发送第一锁请求;其中,所述第一锁请求用于请求针对所述目标元数据重新分配目标元数据分布式锁;所述目标元数据分布式锁用于控制所述nas集群中共享的所述目标元数据的独占访问;第一加锁单元,用于通过所述分布式锁管控节点响应于接收到所述第一锁请求,为所述访问请求配置所述目标元数据分布式锁,并向所述代理节点返回响应信息,所述响应信息指示为所述访问请求成功配置所述目标元数据分布式锁;第一执行单元,用于基于所述目标元数据分布式锁控制对所述nas集群中所述目标文件的访问请求。
4、第三方面,本公开实施例提供一种电子设备,包括:处理器和存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上述第一方面和第一方面各种可能的方法。
5、第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上述第一方面和第一方面各种可能的方法。
6、第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面和第一方面各种可能的方法。
7、本公开提供的分布式数据存储控制方法、装置及电子设备,通过通过代理节点接收针对网络附属存储nas集群中目标文件的访问请求,确定所述访问请求对应的目标元数据;通过所述代理节点基于所述目标文件的元数据与分布式锁设置信息,确定所述目标元数据是否需与目标元数据分布式锁同步有效;在确定所述目标元数据需与所述目标元数据分布式锁同步有效的情况下,若所述代理节点根据目标元数据分布式锁的属性值确定当前目标元数据分布式锁无效,向所述分布式锁管控节点发送第一锁请求;其中,所述第一锁请求用于请求针对所述目标元数据重新分配目标元数据分布式锁;所述目标元数据分布式锁用于控制所述nas集群中共享的所述目标元数据的独占访问;通过所述分布式锁管控节点响应于接收到所述第一锁请求,为所述访问请求配置所述目标元数据分布式锁,并向所述代理节点返回响应信息,所述响应信息指示为所述访问请求成功配置所述目标元数据分布式锁;基于所述目标元数据分布式锁控制对所述nas集群中所述目标文件的访问请求。解决了代理节点与nas集群中的元数据不一致的问题,此外,将分布式锁细粒度为元数据分布式锁,可以提高不同针对nas集群中不同元数据访问的并发性。
1.一种分布式数据存储控制方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,在确定所述目标元数据需与所述目标元数据分布式锁同步有效的情况下,若所述代理节点当前目标元数据分布式锁无效,向所述分布式锁管控节点发送第一锁请求,包括:
4.根据权利要求1所述的方法,其特征在于,所述在确定所述目标元数据需与所述目标元数据分布式锁同步有效的情况下,若所述代理节点当前目标元数据分布式锁无效,向所述分布式锁管控节点发送第一锁请求,包括:
5.根据权利要求1所述的方法,其特征在于,所述访问请求为指示读取目标文件内容的读取请求,所述目标元数据分布式锁为大小元数据分布式读锁,在所述基于所述元数据分布式锁控制对所述nas集群中所述目标文件的访问请求之前,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述访问请求为向所述目标文件写入文件内容的写请求,所述目标元数据为文件大小元数据,所述文件大小元数据需与文件大小元数据同步有效;在向所述分布式锁管控节点发送第一锁请求之前,所述方法还包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
9.根据权利要求1至8中任意一项所述的方法,其特征在于,所述方法还包括:
10.根据权利要求1至8中任意一项所述的方法,其特征在于,所述方法还包括:
11.一种分布式数据存储控制装置,包括:
12.一种电子设备,其特征在于,包括:处理器和存储器;
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至10中任一项所述的方法。
