[发明专利]一种数据并发写入方法及分布式数据并发写入系统在审
申请号: | 202011431452.7 | 申请日: | 2020-12-09 |
公开(公告)号: | CN112486932A | 公开(公告)日: | 2021-03-12 |
发明(设计)人: | 黎海兵 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F16/176 | 分类号: | G06F16/176 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 丁芸;马敬 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 并发 写入 方法 分布式 系统 | ||
本发明实施例提供了一种数据并发写入方法及分布式数据并发写入系统,包括:控制节点对客户端发送的第一写入请求进行校验,生成第一写入请求对应的第一版本号,当校验成功时,选取预设数量个存储节点,并将预设数量个存储节点对应的地址信息以及第一版本号,发送给客户端;客户端将第二写入请求发送给预设数量个存储节点;存储节点接收第二写入请求,判断第一版本号是否高于目标数据的本地版本号,如果是,则执行对应的写操作,并将写入结果信息返回给客户端;控制节点基于客户端返回的写入结果信息,对目标数据对应的元数据信息进行更新。本发明实施例,能够保证多个客户端对同一目标数据并发写时副本文件数据的一致性,提高数据的可靠性。
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据并发写入方法及分布式数据并发写入系统。
背景技术
分布式文件存储系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点(可简单的理解为一台计算机)相连;或是若干不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件系统。分布式文件存储系统把大量数据分散到不同的节点上存储,大大减小了数据丢失的风险。
现有客户端执行一次数据写入的方法为:客户端向控制节点发送针对目标数据的写入请求;控制节点接收并校验写入请求,当校验成功时,向客户端返回待写入数据对应的存储节点的地址信息;客户端接收地址信息,向待写入数据对应的存储节点发送包含待写入数据的数据写入请求;存储节点接收并执行数据写入请求对应的写操作,之后向客户端返回包含写入成功或写入失败的写入结果信息;客户端接收存储节点返回的写入结果信息,并将写入结果信息发送给控制节点;控制节点判断写入结果为写入成功时,更新目标数据对应的元数据信息。
实际应用中,为保证数据的可靠性,一般文件数据会保存多个副本。然而,使用上述数据写入方法对数据进行写入,当存在多个客户端对同一目标数据执行写操作时,由于网络延时及各副本所在的存储节点实际业务情况的不同,可能会导致目标数据对应的多个副本中的数据不一致的情况,例如,客户端A和客户端B同时对同一目标数据执行写操作,针对目标数据的副本1客户端A先执行写操作,客户端B后执行写操作,针对目标数据的副本2客户端B先执行写操作,客户端A后执行写操作,导致同一目标数据的副本1和副本2中的数据不一致,进而影响数据的可靠性,使得分布式文件存储系统中,针对同一文件只容许串行写,不容许并发写。
发明内容
本发明实施例的目的在于提供一种数据并发写入方法及分布式数据并发写入系统,用以解决多个客户端对同一文件执行写入操作时导致的数据不一致,影响数据可靠性的问题。具体技术方案如下:
第一方面,本发明实施例提供了一种数据并发写入方法,应用于分布式文件存储系统中的控制节点,所述分布式文件存储系统包括:控制节点和存储节点,所述方法包括:
对客户端发送的针对目标数据的第一写入请求进行校验,并生成所述第一写入请求对应的版本号,得到第一版本号,所述第一版本号随所述目标数据数据写入次数的增加而增加,所述第一写入请求对应相应的待写入数据;
当对所述第一写入请求校验成功时,为所述待写入数据选取预设数量个存储节点,得到预设数量个存储节点对应的地址信息;
将所述预设数量个存储节点对应的地址信息以及所述第一版本号,发送给所述客户端,以使所述客户端将第二写入请求发送给所述预设数量个存储节点,所述预设数量个存储节点分别根据所述第二写入请求执行对应的写操作,并将写入结果信息返回给所述客户端;其中,所述第二写入请求中包含所述待写入数据以及所述第一版本号;
基于所述客户端返回的所述写入结果信息,对所述目标数据对应的元数据信息进行更新;其中,所述目标数据对应的元数据信息包括所述目标数据的大小,所述目标数据所写入的存储节点的信息。
可选的,所述生成所述第一写入请求对应的版本号,得到第一版本号的步骤,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011431452.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置