【技术实现步骤摘要】
数据写入和数据恢复方法、装置、电子设备及存储介质
本专利技术涉及分布式存储
,特别是涉及一种数据写入和数据恢复方法、装置、电子设备及存储介质。
技术介绍
随着网络技术的发展,为了方便使用,用户选择将数据集中存储到存储系统中。但是,随着网络上的数据量越来越大,用于集中存储数据的存储服务器的性能无法满足需求,而且一旦该服务器出现故障,用户则无法对该服务器上存储的目标数据进行写入操作,一般情况下,写入操作为创建或者修改操作。为了解决集中存储大规模数据对服务器性能要求过高的问题,以及数据存储的可靠性问题,存储系统通常采用分布式存储系统。分布式存储系统是将目标数据切分成多个子目标数据,并将多个子目标数据分别存储在不同的存储服务器上,当用户需要对目标数据进行写入操作时,原来由一台服务器提供的服务现在由多台服务器提供,实现了服务负荷的分担,降低了目标数据存储对存储服务器性能的要求;另外,当多台存储服务器中的一台服务器发生故障,会导致故障存储服务器上存储的子目标数据不能被执行写入操作,而不会导致所有子目标数据不能被写入。虽然分布式存储技术解决了集中存储大规模的目标数据的对服务器性能要求过高的问题,并且提高了目标数据存储的可靠性问题,但是被存储的子目标数据只有一份。当其中一台存储服务器发生故障导致该存储服务器上的子目标数据发生了损坏时,由于数据只有一份,会导致该存储服务器存储的子目标数据无法恢复,因此分布式存储技术仍然存在数据存储可靠性的技术问题。鉴于此,目前采用强一致性数据冗余技术用于进一步提高分布式数据存储的可靠性。强一致性数据冗余技术是指将同样的目标数据在不同的 ...
【技术保护点】
1.一种数据写入方法,其特征在于,应用于分布式存储系统中的网关设备,所述方法包括:接收客户端发送的针对目标数据的写入请求;将所述写入请求发送给所述目标数据的所有数据副本对应的存储服务器;若存在无法被写入成功的所述目标数据的离线数据副本,确定除所述离线数据副本对应的第一存储服务器之外的用于存储所述目标数据的其他数据副本的其他存储服务器;在接收到所有所述其他存储服务器中的两个或两个以上的存储服务器反馈的对应的数据副本写入成功的响应消息后,向所述客户端返回所述目标数据写入成功的消息。
【技术特征摘要】
1.一种数据写入方法,其特征在于,应用于分布式存储系统中的网关设备,所述方法包括:接收客户端发送的针对目标数据的写入请求;将所述写入请求发送给所述目标数据的所有数据副本对应的存储服务器;若存在无法被写入成功的所述目标数据的离线数据副本,确定除所述离线数据副本对应的第一存储服务器之外的用于存储所述目标数据的其他数据副本的其他存储服务器;在接收到所有所述其他存储服务器中的两个或两个以上的存储服务器反馈的对应的数据副本写入成功的响应消息后,向所述客户端返回所述目标数据写入成功的消息。2.根据权利要求1所述的方法,其特征在于,在确定除所述离线数据副本对应的第一存储服务器之外的用于存储所述目标数据的其他数据副本的其他存储服务器之前,所述方法还包括:获取用于存储被恢复的离线数据副本的第二存储服务器的标识信息;根据所述标识信息,将所述离线数据副本的写入请求发送给所述第二存储服务器;接收所述第二存储服务器发送的,所述目标数据的存储可靠性降低的消息;所述在接收到所有所述其他存储服务器中的两个或两个以上的存储服务器反馈的对应的数据副本写入成功的响应消息后,向所述客户端返回所述目标数据写入成功的消息,包括:在接收到所述目标数据的存储可靠性降低的消息,且接收到所有所述其他存储服务器中的两个或两个以上的存储服务器反馈的对应的数据副本写入成功的响应消息后,向所述客户端返回写入成功的消息。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:接收被恢复的所述目标数据的离线数据副本被写入成功后,对应的响应消息,其中,所述响应消息是由存储所述目标数据的被恢复的离线数据副本的存储服务器发送的。4.根据权利要求1所述的方法,其特征在于,若不存在无法被写入成功的所述目标数据的离线数据副本,所述方法还包括:接收所述所有数据副本对应的存储服务器发送的,数据副本被写入成功的响应消息;根据所述响应消息,向所述客户端返回写入成功的消息。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:读取所述响应消息对应的存储服务器中存储的数据副本,并将所述数据副本发送给所述第二存储服务器,以使所述第二存储服务器根据所述数据副本进行数据恢复。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:接收被恢复的所述离线数据副本被写入成功后,对应的响应消息,其中,所述响应消息是由所述第二存储服务器发送的。7.根据权利要求5所述的方法,其特征在于,所述方法还包括:接收所述所有数据副本对应的存储服务器发送的,数据副本被写入成功的响应消息;根据所述响应消息,向所述客户端返回写入成功的消息。8.据权利要求5所述的方法,其特征在于,在接收客户端发送的针对目标数据的写入请求之前,所述方法还包括:在用户登录客户端时,针对所述客户端对应的每一目标数据,判断所述目标数据的所有数据副本是否一致;若不是所述所有数据副本一致,修复所述目标数据的数据副本。9.根据权利要求5所述的方法,其特征在于,所述方法还包括:根据预设周期,针对所述客户端对应的每一目标数据,判断所述目标数据的所有数据副本是否一致;若不是所述所有数据副本一致,修复所述目标数据的数据副本。10.一种数据写入方法,其特征在于,应用于分布式存储系统中的存储服务器,所述方法包括:接收恢复离线数据副本的指令;根据所述指令恢复所述离线数据副本;接收网关设备发送的写入请求;在所述离线数据副本未被恢复完成的情况下,向所述网关设备发送所述目标数据的存储可靠性降低的消息,并挂起所述写入请求。11.根据权利要求10所述的方法,其特征在于,所述方法还包括:在所述离线数据副本被恢复完成的情况下,根据所述写入请求对被恢复的所述离线数据副本进行写入;在写入完成后,向所述网关设备发送所述数据副本被写入成功的响应消息。12.一种数据恢复方法,其特征在于,应用于分布式存储系统中的存储服务器,所述方法包括:接收恢复离线数据副本的指令;根据所述指令,接收网关设备发送的与所述离线数据副本对应的数据;根据所述与所述离线数据副本对应的数据,恢复所述离线数据副本。13.一种数据写入装置,其特征在于,应用于分布式存储系统中的网关设备,所述装置包括:第一接收模块、第一发送模块、确定模块和返回模块,其中,所述第一接收模块,用于接收客户端发送的针对目标数据的写入请求;所述第一发送模块,用于将所述写入请求发送给所述目标数据的所有数据副本对应的存储服务器;所述确定模块,用于若存在无法被写入成功的所述目标数据的离线数据副本,确定除所述离线数据副本对应的第一存储服务器之外的用于存储所述目标数据的其他数据副本的其他存储服务器;所述返回模块,用于在接收到所有所述其他存储服务器中的两个或两个以上的存储服务器反馈的对应的数据副本写入成功的响应消息后,向所述客户端返回所述目标数据写入成功的消息。14.根据权利要求13所述的装置,其特征在于,所述装置还包括:获取模块、第二接收模块,其中,所述获取模块,用于获取用于存储被恢复的离线数据副本的第二存...
【专利技术属性】
技术研发人员:袁冬,
申请(专利权)人:北京金山云网络技术有限公司,北京金山云科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。