Including the embodiment of the invention discloses a data updating method and apparatus: sending update request message, and obtain the updating data and control information in the request message; sending the data through the data update request message is sent to the receiving end, the end will send the control information by control information update request message is sent to the receiving end, the request message and control information update request message data and control information are sent to the receiving end through the data update, use time transfer receiver data update message of renewal request data, greatly reduce the waiting time for data transmission data update process, thereby to reduce the data update delay, improve the performance of the system.
【技术实现步骤摘要】
本申请涉及通信
,尤其涉及一种应用于分布式存储系统的数据更新方法和设备。
技术介绍
在分布式存储系统中,会将数据块存储多个副本,每次数据块的更新需要在多个副本之间达成一致。目前,在对多副本数据块进行数据更新时,数据更新过程由一个协调者控制。在主从副本系统中,数据更新的协调者为主副本服务器;在多个副本处于对等的系统中,协调者为数据更新客户端。更新过程为:协调者对每个数据块的更新进行定序并分配新版本,然后生成更新请求发向各副本服务器。更新请求消息包含两个部分:更新数据及控制信息。其中,控制信息部分由新版本与数据块的当前元数据构成,如数据块标识,数据块原版本,数据块新版本及其它副本服务器所需的元数据信息。各副本服务器对接收到的更新请求消息进行处理,然后回复协调者,协调者根据收到的副本服务器正常响应的个数,发出更新请求的个数及采用的数据一致性协议判定是否数据更新成功,若成功则将数据块的版本修改为新版本。由于在数据更新过程中,基于数据块的当前版本生成新版本,版本单调递增,而且发向副本服务器的更新请求只有一个最新的版本,否则副本服务器对收到多个新版本的更新请求的处理,会大大增加多副本数据更新一致性处理的复杂度,所以,在数据更新过程中,如果协调者收到多个对同一个数据块的更新请求消息,则需要放到等待队列中,只有等到数据块当前的更新完成后,才会发送下一个更新请求消息。为了实现数据块多副本更新的一致性,将对同一个数据块的数据更新进行定序,即为数据更新为串行执行。而数据更新的过程包含:网络传输,请求的逻辑处理,写磁盘IO几个部分;目前,磁盘部分通常可以采用固态盘,聚合写 ...
【技术保护点】
一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,该方法包括:发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;发送端将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中建立所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。
【技术特征摘要】
1.一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,该方法包括:发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;发送端将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中建立所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。2.如权利要求1所述的方法,其特征在于,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端之前,所述方法还包括:所述发送端将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。3.如权利要求1或2所述的方法,其特征在于,所述发送端将所述数据通过数据更新请求消息发送给接收端,进一步包括;所述数据包括多个子数据,所述发送端将所述多个子数据通过多个数据请求消息发送给接收端;所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识。4.如权利要求1所述的方法,其特征在于,所述发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息,具体包括:所述更新请求消息中包含数据块标识,当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。5.一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,该方法包括:接收端接收来自发送端的数据更新请求消息;所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;所述接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新。6.如权利要求5所述的方法,其特征在于,所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新,具体包括:所述接收端将所述控制信息更新请求以及查找到的更新数据还原为更新请求消息,根据所述更新请求消息进行数据更新。7.如权利要求5所述的方法,其特征在于,所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系之后,所述方法还包括:所述接收端为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系;和/或所述接收端为所述对应关系设置老化定...
【专利技术属性】
技术研发人员:董元元,徐立,闫卫斌,李凯,杨濮源,眭椰敏,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。