CN106209926A - 一种数据更新方法和设备 - Google Patents

一种数据更新方法和设备 Download PDF

Info

Publication number
CN106209926A
CN106209926A CN201510213538.5A CN201510213538A CN106209926A CN 106209926 A CN106209926 A CN 106209926A CN 201510213538 A CN201510213538 A CN 201510213538A CN 106209926 A CN106209926 A CN 106209926A
Authority
CN
China
Prior art keywords
data
newly requested
renewal
message
receiving terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510213538.5A
Other languages
English (en)
Other versions
CN106209926B (zh
Inventor
董元元
徐立
闫卫斌
李凯
杨濮源
眭椰敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510213538.5A priority Critical patent/CN106209926B/zh
Priority to TW104142100A priority patent/TWI693547B/zh
Priority to PCT/US2016/027322 priority patent/WO2016176045A1/en
Priority to US15/098,132 priority patent/US10761724B2/en
Publication of CN106209926A publication Critical patent/CN106209926A/zh
Application granted granted Critical
Publication of CN106209926B publication Critical patent/CN106209926B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

本申请实施例公开了一种数据更新方法和设备,包括:发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;发送端将所述数据通过数据更新请求消息发送给接收端,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,通过数据更新请求消息和控制信息更新请求消息将数据和控制信息分别发送给接收端,利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。

Description

一种数据更新方法和设备
技术领域
本申请涉及通信技术领域,尤其涉及一种应用于分布式存储系统的数据更新方法和设备。
背景技术
在分布式存储系统中,会将数据块存储多个副本,每次数据块的更新需要在多个副本之间达成一致。
目前,在对多副本数据块进行数据更新时,数据更新过程由一个协调者控制。在主从副本系统中,数据更新的协调者为主副本服务器;在多个副本处于对等的系统中,协调者为数据更新客户端。更新过程为:协调者对每个数据块的更新进行定序并分配新版本,然后生成更新请求发向各副本服务器。更新请求消息包含两个部分:更新数据及控制信息。其中,控制信息部分由新版本与数据块的当前元数据构成,如数据块标识,数据块原版本,数据块新版本及其它副本服务器所需的元数据信息。各副本服务器对接收到的更新请求消息进行处理,然后回复协调者,协调者根据收到的副本服务器正常响应的个数,发出更新请求的个数及采用的数据一致性协议判定是否数据更新成功,若成功则将数据块的版本修改为新版本。
由于在数据更新过程中,基于数据块的当前版本生成新版本,版本单调递增,而且发向副本服务器的更新请求只有一个最新的版本,否则副本服务器对收到多个新版本的更新请求的处理,会大大增加多副本数据更新一致性处理的复杂度,所以,在数据更新过程中,如果协调者收到多个对同一个数据块的更新请求消息,则需要放到等待队列中,只有等到数据块当前的更新完成后,才会发送下一个更新请求消息。
为了实现数据块多副本更新的一致性,将对同一个数据块的数据更新进行定序,即为数据更新为串行执行。而数据更新的过程包含:网络传输,请求的逻辑处理,写磁盘IO几个部分;目前,磁盘部分通常可以采用固态盘,聚合写入的性能比较高,而在一次更新请求中携带多次数据更新的批处理方式,能够使一次请求处理多次数据更新,降低请求的逻辑处理延迟,所以数据更新的主要瓶颈在于网络传输开销,批处理聚合了多次数据更新,传输的数据量变大,传输等待延迟仍然较大。
发明内容
本申请实施例提供了一种数据更新方法及设备,用以实现分布式存储系统中的数据更新。
为此,本申请采用以下技术手段:
本申请实施例提供了一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,包括:
发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;
发送端将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中建立所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。
其中,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端之前,所述方法还包括:所述发送端将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
其中,所述发送端将所述数据通过数据更新请求消息发送给接收端,进一步包括;
所述数据包括多个子数据,所述发送端将所述多个子数据通过多个数据请求消息发送给接收端;
所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识。
其中,所述发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息,具体包括:
所述更新请求消息中包含数据块标识,当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
本申请实施例提供了一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,包括:
接收端接收来自发送端的数据更新请求消息;
所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;
所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
其中,所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新,具体包括:
所述接收端将所述控制信息更新请求以及查找到的更新数据还原为更新请求消息,根据所述更新请求消息进行数据更新。
其中,所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系之后,所述方法还包括:
所述接收端为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系;和/或
所述接收端为所述对应关系设置老化定时器,当接收端在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
本申请实施例提供了一种发送端,应用于包含有发送端和接收端的分布式存储系统中,包括:
获得模块,用于获得更新请求消息,并获得更新请求消息中的数据和控制信息;
发送模块,用于将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述发送模块,还用于将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。
其中,所述发送端进一步包括:
保存模块,用于将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,并从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
其中,所述数据包括多个子数据;
所述发送模块,还用于将所述多个子数据通过多个数据请求消息发送给接收端;
所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识。
其中,所述更新请求消息中包含数据块标识,
所述获得模块,具体用于:当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
本申请实施例提供了一种接收端,应用于包含有发送端和接收端的分布式存储系统中,包括:
接收模块,用于接收来自发送端的数据更新请求消息;
设置模块,用于在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述接收模块,还用于接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息;
查找模块,用于从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;
更新模块,用于根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
其中,所述更新模块,具体用于:将所述控制信息更新请求以及查找到的更新数据还原为更新请求,根据所述更新请求进行数据更新。
其中,所述设置模块,还用于:为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系;和/或
所述设置模块,还用于:为所述对应关系设置老化定时器,在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
与现有技术相比,本申请的上述实施例具有以下有益技术效果:
本申请实施例中,发送端获得更新请求消息中的数据和控制信息后,通过数据更新请求消息和控制信息更新请求消息将数据和控制信息分别发送给接收端,接收端接收来自发送端的数据更新请求消息,在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;进而利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。
附图说明
图1为本申请实施例提供的数据更新方法流程示意图;
图2为本申请实施例提供另一种数据更新方法流程示意图;
图3为本申请实施例提供的一种发送端的结构示意图;
图4为本申请实施例提供的另一种发送端的结构示意图。
具体实施方式
下面结合附图对本申请的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请的保护范围。
参见图1所示,为本申请实施例的数据更新方法流程图,包括以下步骤:
步骤S101、发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;
更新请求消息中包含数据块标识,当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
具体地,需要注意的是,数据和控制信息都来自相同的更新请求消息,即对应相同的数据块标识。更新请求中包含数据块标识,即要进行数据更新的数据块的标识,发送端获得的所有更新请求消息都存储在等待队列中,当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,即数据块标识对应的数据块正在进行数据更新,而且,等待队列中对该数据块进行更新的更新请求数量已经达到阈值,则获得所述更新请求消息中的数据和控制信息。
步骤S102、发送端将所述数据通过数据更新请求消息发送给接收端。
所述数据包括:数据块标识、更新数据列表标识以及更新数据,其中,更新数据列表标识是发送端设置的用于唯一标识本次数据更新请求消息。
发送端将数据更新请求消息携带的更新数据列表标识保存到已发送列表,从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
发送端在发送完数据更新请求消息后,将设置的更新数据列表标识保存到已发送列表,用于后续的发送控制信息请求消息时从已发送列表获得更新数据列表标识。
数据可以包括多个子数据,所述发送端将所述多个子数据通过多个数据请求消息发送给接收端,所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识;其中,发送端获得的数据可以包括多个子数据,每个子数据均包含相同的数据块标识和各自的更新数据,当多个子数据通过多个数据更新请求发送时,每个数据更新请求携带的更新数据列表标识和更新数据都不同,发送端在发送完数据更新请求消息后,将所有的更新数据列表标识都保存到已发送列表。例如:发送端发送的所述多个数据更新请求消息中携带数据块标识、更新数据列表标识和更新数据可以如下表所示(数据更新请求消息的编号只是为了陈述方便):
表1
数据更新请求消息 数据块标识 更新数据列表标识 更新数据
数据更新请求消息1 数据块1 1.0 更新数据1
数据更新请求消息2 数据块1 1.1 更新数据2
数据更新请求消息3 数据块1 1.2 更新数据3
数据更新请求消息4 数据块1 1.3 更新数据4
其中,由上表可知,发送端发送的第一条数据更新请求消息携带了数据块标识1、更新数据列表标识1.0、和更新数据1,第二条数据更新请求消息携带了数据块标识1、更新数据列表标识1.1、和更新数据2,第三条数据更新请求消息携带了数据块标识1、更新数据列表标识1.2、和更新数据3,第二条数据更新请求消息携带了数据块标识1、更新数据列表标识1.3、和更新数据4,其中,每条数据更新请求消息中携带的数据块标识都相同,而更新数据列列表标识和更新数据都不同,而所有数据更新请求消息中携带的更新数据列表标识都保存在已发送列表,即已发送列表中保存了更新数据列表标识1.0、1.1、1.2、1.3。
步骤S103、所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端。
所述控制信息包括:数据块标识、更新数据列表标识以及新版本等信息。
其中,更新数据列表标识从已发送列表中获得,如果已发送列表中是多个更新数据列表标识,就获得所述多个更新数据列表标识。例如,上面例子,已发送列表中保存的是更新数据列表标识1.0、1.1、1.2、1.3,发送端在控制信息请求消息中携带的更新数据列表标识就为更新数据列表标识1.0、1.1、1.2、1.3。例如,发送端发送的控制信息更新请求消息中携带数据块标识、更新数据列表标识如下表所示:
表2
控制信息更新请求消息 数据块标识 更新数据列表标识
控制信息更新请求消息 1 1.0、1.1、1.2、1.3
需要提醒注意的是,发送端接收到数据块标识所对应的数据块完成数据更新的响应消息时,如果数据更新请求消息没有发送完,那么,可以继续将未发送完的数据更新请求消息发送给接收端,按照本申请的技术方案继续处理;也可以按照现有技术的方案,将剩下的数据更新请求消息和控制信息更新请求消息合并还原为更新请求消息,发送给接收端。
与现有技术相比,本申请的上述实施例具有以下有益技术效果:
本申请实施例中,发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;发送端将所述数据通过数据更新请求消息发送给接收端,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,通过数据更新请求消息和控制信息更新请求消息将数据和控制信息分别发送给接收端,利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。
参见图2所示,为本申请实施例的另一种数据更新方法流程图,包括以下步骤:
S201、接收端接收来自发送端的数据更新请求消息。
S202、所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
具体地,数据更新请求消息中携带数据块标识、更新数据列表标识和更新数据,其中,更新数据列表标识为发送端在发送数据更新请求消息时设置的,用于唯一标识本次数据更新请求消息;如下面的更新数据关系表,记录了数据块标识、更新数据列表标识和更新数据的对应关系:
表3
数据块标识 更新数据列表标识 更新数据
1 1.0 更新数据1
1 1.1 更新数据2
1 1.2 更新数据3
1 1.3 更新数据4
由上表可知,接收端在更新数据关系表中设置了第一条数据更新请求消息携带了数据块标识1、更新数据列表标识1.0、和更新数据1的对应关系,设置了第二条数据更新请求消息携带了数据块标识1、更新数据列表标识1.1、和更新数据2的对应关系,设置了第三条数据更新请求消息携带了数据块标识1、更新数据列表标识1.2、和更新数据3的对应关系,设置了第二条数据更新请求消息携带了数据块标识1、更新数据列表标识1.3、和更新数据4的对应关系。
优选地,接收端还可以在更新数据关系表中对设置的对应关系进行删除处理,以及时清理无效的更新数据。接收端在更新数据关系表中对设置的对应关系进行删除包括以下三种方式:
方式一、接收端在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为该对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系。
方式二、接收端在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为该对应关系设置老化定时器,当接收端在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
方式三、接收端在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为该对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系,和当接收端在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
S203、接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据。
控制信息通过控制信息更新请求消息发送给接收端,数据更新请求消息对应的控制信息更新请求消息即与数据更新请求消息中的数据来自同一个更新请求消息的控制信息对应的控制信息更新请求消息,其中控制信息更新请求消息中携带的数据块标识即为数据更新请求消息中携带的数据块标识,更新数据列表标识为数据更新请求消息中携带的更新数据列表标识,发送端在发送数据更新请求消息后,将设置的数据更新列表标识保存到已发送列表,在发送控制信息更新请求消息时,从已发送列表获得数据更新列表标识。例如,控制信息更新请求携带的更新数据列表标识1.0、1.1、1.2、1.3,数据块标识1,则接收端根据更新数据列表标识和数据块标识查找到的更新数据为更新数据1、更新数据2、更新数据3、更新数据4。
需要注意的是,一条控制信息更新请求消息可能会对应多个数据更新请求消息,一个控制信息更新请求消息中可以包含多个更新数据列表标识,因此,根据一个控制信息更新请求消息中的数据块标识和更新数据列表标识,会查找到多个更新数据。
S104、所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
所述接收端将所述控制信息更新请求以及查找到的更新数据还原为更新请求消息,根据所述更新请求消息进行数据更新。
优选地,接收端进行完数据更新后,对发送端进行响应。
与现有技术相比,本申请的上述实施例具有以下有益技术效果:
本申请实施例中,接收端接收来自发送端的数据更新请求消息;所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;所述接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新,利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。
本申请实施例还提供一种发送端,参见图3所示,为本申请实施例提供的发送端的结构示意图,该发送端应用于分布式存储系统,包括:
获得模块31,用于获得更新请求消息,并获得更新请求消息中的数据和控制信息。
所述更新请求消息中包含数据块标识,
所述获得模块,具体用于:当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
发送模块32,用于将所述数据通过数据更新请求消息发送给接收端。
发送模块32,还用于将所述控制信息通过控制信息更新请求消息发送给所述接收端。
保存模块33,用于将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,并从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
本申请实施例中,发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;发送端将所述数据通过数据更新请求消息发送给接收端,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,通过数据更新请求消息和控制信息更新请求消息将数据和控制信息分别发送给接收端,利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。
本申请实施例还提供一种接收端,参见图4所示,为本申请实施例提供的接收端的结构示意图,该发送端应用于分布式存储系统,包括:
接收模块41,用于接收来自发送端的数据更新请求消息。
设置模块42,用于在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系。
所述设置模块42还可以在更新数据关系表中对设置的对应关系进行删除处理,以及时清理无效的更新数据。所述设置模块在更新数据关系表中对设置的对应关系进行删除包括以下三种方式:
方式一:所述设置模块42在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系。
方式二:所述设置模块42在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为所述对应关系设置老化定时器,在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
方式三:所述设置模块42在设置数据块标识、更新数据列表标识和更新数据的对应关系时,为该对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系,和当接收端在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
所述接收模块41,还用于接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息。
查找模块43,用于从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据。
更新模块44,用于根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
所述更新模块44,具体用于:将所述控制信息更新请求以及查找到的更新数据还原为更新请求,根据所述更新请求进行数据更新。
与现有技术相比,本申请的上述实施例具有以下有益技术效果:
本申请实施例中,接收端接收来自发送端的数据更新请求消息;所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;所述接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新,利用接收端进行数据更新的时间传输更新请求消息中的数据,大幅降低数据更新过程中数据传输的等待时间,从而降低数据更新延迟,提高系统性能。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
本领域技术人员可以理解,实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本申请的保护范围。

Claims (14)

1.一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,该方法包括:
发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息;
发送端将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中建立所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。
2.如权利要求1所述的方法,其特征在于,所述发送端将所述控制信息通过控制信息更新请求消息发送给所述接收端之前,所述方法还包括:
所述发送端将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
3.如权利要求1或2所述的方法,其特征在于,所述发送端将所述数据通过数据更新请求消息发送给接收端,进一步包括;
所述数据包括多个子数据,所述发送端将所述多个子数据通过多个数据请求消息发送给接收端;
所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识。
4.如权利要求1所述的方法,其特征在于,所述发送端获得更新请求消息,并获得所述更新请求消息中的数据和控制信息,具体包括:
所述更新请求消息中包含数据块标识,当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
5.一种数据更新的方法,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,该方法包括:
接收端接收来自发送端的数据更新请求消息;
所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述接收端接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息,从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;
所述接收端根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
6.如权利要求5所述的方法,其特征在于,所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新,具体包括:
所述接收端将所述控制信息更新请求以及查找到的更新数据还原为更新请求消息,根据所述更新请求消息进行数据更新。
7.如权利要求5所述的方法,其特征在于,所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系之后,所述方法还包括:
所述接收端为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系;和/或
所述接收端为所述对应关系设置老化定时器,当接收端在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
8.一种发送端,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,包括:
获得模块,用于获得更新请求消息,并获得更新请求消息中的数据和控制信息;
发送模块,用于将所述数据通过数据更新请求消息发送给接收端,由所述接收端在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述发送模块,还用于将所述控制信息通过控制信息更新请求消息发送给所述接收端,由所述接收端根据所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识查找到所述更新数据列表,并由所述接收端根据所述控制信息更新请求消息以及查找到的更新数据进行数据更新。
9.如权利要求8所述的发送端,其特征在于,所述发送端进一步包括:
保存模块,用于将所述数据更新请求消息携带的更新数据列表标识保存到已发送列表,并从所述已发送列表中获取所述数据更新请求消息携带的更新数据列表标识。
10.如权利要求8或9所述的发送端,其特征在于,
所述数据包括多个子数据;
所述发送模块,还用于将所述多个子数据通过多个数据请求消息发送给接收端;
所述更新数据列表标识是所述多个数据更新请求消息携带的所有更新数据列表标识。
11.如权利要求8所述的发送端,其特征在于,
所述更新请求消息中包含数据块标识,
所述获得模块,具体用于:当发送端判断数据块标识所对应的更新请求消息数量达到设定的阈值时,获得所述更新请求消息中的数据和控制信息。
12.一种接收端,应用于包含有发送端和接收端的分布式存储系统中,其特征在于,包括:
接收模块,用于接收来自发送端的数据更新请求消息;
设置模块,用于在更新数据关系表中设置所述数据更新请求消息携带的数据块标识、更新数据列表标识和更新数据的对应关系;
所述接收模块,还用于接收来自所述发送端的所述数据更新请求消息对应的控制信息更新请求消息;
查找模块,用于从所述更新数据关系表中查找到所述控制信息更新请求消息中携带的数据块标识和更新数据列表标识对应的更新数据;
更新模块,用于根据所述控制信息更新请求以及查找到的更新数据进行数据更新。
13.如权利要求12所述的接收端,其特征在于,
所述更新模块,具体用于:将所述控制信息更新请求以及查找到的更新数据还原为更新请求,根据所述更新请求进行数据更新。
14.如权利要求12所述的接收端,其特征在于,
所述设置模块,还用于:为所述对应关系设置老化定时器,当所述老化表超时时,从所述更新数据关系表中删除所述对应关系;和/或
所述设置模块,还用于:为所述对应关系设置老化定时器,在所述更新数据关系表占用的内存超过预设的内存占用阈值时,删除所述更新数据关系表中占用内存最大的对应关系,或者删除建立时间最久的对应关系。
CN201510213538.5A 2015-04-30 2015-04-30 一种数据更新方法和设备 Active CN106209926B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510213538.5A CN106209926B (zh) 2015-04-30 2015-04-30 一种数据更新方法和设备
TW104142100A TWI693547B (zh) 2015-04-30 2015-12-15 一種資料更新方法和設備
PCT/US2016/027322 WO2016176045A1 (en) 2015-04-30 2016-04-13 System, method, and apparatus for updating data in a distributed storage system
US15/098,132 US10761724B2 (en) 2015-04-30 2016-04-13 System, method, and apparatus for updating data in a distributed storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510213538.5A CN106209926B (zh) 2015-04-30 2015-04-30 一种数据更新方法和设备

Publications (2)

Publication Number Publication Date
CN106209926A true CN106209926A (zh) 2016-12-07
CN106209926B CN106209926B (zh) 2019-06-21

Family

ID=57199324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510213538.5A Active CN106209926B (zh) 2015-04-30 2015-04-30 一种数据更新方法和设备

Country Status (4)

Country Link
US (1) US10761724B2 (zh)
CN (1) CN106209926B (zh)
TW (1) TWI693547B (zh)
WO (1) WO2016176045A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096295A (zh) * 2019-05-08 2019-08-06 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108255848B (zh) * 2016-12-29 2022-06-24 阿里巴巴集团控股有限公司 实现条件更新的方法、设备及系统
DE102019217035B4 (de) 2019-11-05 2021-11-25 Continental Automotive Gmbh Verfahren zur Sicherung der Zeitsynchronisation in einem Netzwerk gegen unautorisierte Änderungen

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233442A1 (en) * 2002-06-14 2003-12-18 Canon Kabushiki Kaisha Communicating method of information sharing network, information processing apparatus, and its control method
US20060149740A1 (en) * 2005-01-06 2006-07-06 Nec Corporation List management server for managing updating of list by third-party terminal, list management system, list managing method, and program
US20110289058A1 (en) * 2009-05-26 2011-11-24 Hitachi, Ltd, Information processing system and data backup method in information processing system
CN103036717A (zh) * 2012-12-12 2013-04-10 北京邮电大学 分布式数据的一致性维护系统和方法
CN103294675A (zh) * 2012-02-23 2013-09-11 上海盛霄云计算技术有限公司 一种分布式存储系统中的数据更新方法及装置
CN103379129A (zh) * 2012-04-12 2013-10-30 阿里巴巴集团控股有限公司 一种数据同步方法、服务器及分布式系统
US20140207913A1 (en) * 2011-03-31 2014-07-24 Alcatel-Lucent Usa Inc. System and method for managing distribution of network information

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3787535B2 (ja) * 2002-06-18 2006-06-21 キヤノン株式会社 画像処理装置及びその制御方法
JP2004126716A (ja) * 2002-09-30 2004-04-22 Fujitsu Ltd 広域分散ストレージシステムを利用したデータ格納方法、その方法をコンピュータに実現させるプログラム、記録媒体、及び広域分散ストレージシステムにおける制御装置
US20110179057A1 (en) * 2010-01-18 2011-07-21 Microsoft Corporation Database engine throttling

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233442A1 (en) * 2002-06-14 2003-12-18 Canon Kabushiki Kaisha Communicating method of information sharing network, information processing apparatus, and its control method
US20060149740A1 (en) * 2005-01-06 2006-07-06 Nec Corporation List management server for managing updating of list by third-party terminal, list management system, list managing method, and program
US20110289058A1 (en) * 2009-05-26 2011-11-24 Hitachi, Ltd, Information processing system and data backup method in information processing system
US20140207913A1 (en) * 2011-03-31 2014-07-24 Alcatel-Lucent Usa Inc. System and method for managing distribution of network information
CN103294675A (zh) * 2012-02-23 2013-09-11 上海盛霄云计算技术有限公司 一种分布式存储系统中的数据更新方法及装置
CN103379129A (zh) * 2012-04-12 2013-10-30 阿里巴巴集团控股有限公司 一种数据同步方法、服务器及分布式系统
CN103036717A (zh) * 2012-12-12 2013-04-10 北京邮电大学 分布式数据的一致性维护系统和方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096295A (zh) * 2019-05-08 2019-08-06 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统
CN110096295B (zh) * 2019-05-08 2023-08-08 吉旗(成都)科技有限公司 基于ReactNative的多模块移动应用的热更新方法及系统

Also Published As

Publication number Publication date
TW201702858A (zh) 2017-01-16
TWI693547B (zh) 2020-05-11
WO2016176045A1 (en) 2016-11-03
US10761724B2 (en) 2020-09-01
US20160320974A1 (en) 2016-11-03
CN106209926B (zh) 2019-06-21

Similar Documents

Publication Publication Date Title
CN107332876B (zh) 区块链状态的同步方法及装置
US9582387B2 (en) Server, backup system and backup method
CN103164202A (zh) 一种灰度发布方法和装置
KR20150111952A (ko) 계층적 데이터 구조의 노드 상에서 재귀적 이벤트 리스너를 사용하기 위한 방법 및 시스템
CN104902444A (zh) 一种集群系统的动态重组方法及系统
CN110888735A (zh) 基于一致性哈希的分布式消息分发方法、装置和调度节点
CN106209926A (zh) 一种数据更新方法和设备
US10841750B2 (en) Method, apparatus, and system for changing association relationship between MCPTT user and MCPTT group
US10332569B2 (en) System and method for dynamic caching
EP3355549A1 (en) Data storage method, nonvolatile computer storage medium, electronic equipment, open capability entity, and base station
CN112860953A (zh) 图数据库的数据导入方法、装置、设备及存储介质
CN112492030B (zh) 数据存储方法、装置、计算机设备和存储介质
US9767023B2 (en) Method of controlling data writing to persistent storage device
CN110798349B (zh) 一种配置分发、接收方法、设备及计算机可读存储介质
CN107094238A (zh) 智能电视的按键分配处理方法及智能电视
CN105391758B (zh) 一种局域网中资源分配的方法和装置
CN103747484A (zh) 一种rim流程系统信息处理方法和服务节点设备
CN111343220B (zh) 转发器、分布式文件传输方法、系统、介质及电子设备
CN111815339B (zh) 一种营销信息推送方法及设备
WO2021082538A1 (zh) 会话控制处理方法、装置、设备及介质
US9742927B2 (en) Online charging method for always on IP connectivity
CN103152245A (zh) 一种巡航路线控制方法及系统
CN116028196A (zh) 数据处理方法、装置及存储介质
CN105991450A (zh) Mac地址表更新方法及装置
CN110177125B (zh) 一种中间件平台迁移方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant