WO2016180168A1 - 一种数据复制方法和设备 - Google Patents
一种数据复制方法和设备 Download PDFInfo
- Publication number
- WO2016180168A1 WO2016180168A1 PCT/CN2016/079552 CN2016079552W WO2016180168A1 WO 2016180168 A1 WO2016180168 A1 WO 2016180168A1 CN 2016079552 W CN2016079552 W CN 2016079552W WO 2016180168 A1 WO2016180168 A1 WO 2016180168A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- data block
- information
- hole
- destination server
- 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.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Definitions
- the present application relates to the field of communications technologies, and in particular, to a data replication method and device applied to a distributed storage system.
- data blocks are stored in multiple copies. Each time a block update requires agreement between multiple copies. When the number of copies is insufficient, or the copy lacks some version of update data, it is required. Data replication from other copies.
- the premise of the data replication of the existing solution is that the source server or the destination server needs to be able to calculate the data increment or difference according to the version of the data to be copied and the version of the data to be copied maintained by the peer end. It is possible to perform data copy or delta copying from the peer to obtain data to be copied.
- the prior art adopts a mode of pushing data from a source server to a destination server, and the source server needs to push the full data of the existing data block to the destination server, adding The amount of data copied, especially when the data update speed is faster than the data copy speed, also causes the data copy process to be incomplete during the data copy time of the preset value.
- the present application provides a data replication method and device for implementing data replication of a distributed storage system with random read and write.
- the present invention provides a method for data copying, comprising at least the following steps:
- the destination server obtains the data block identifier, version information, and hole information.
- the destination server sends the data block identifier, the version information, and the hole information to the source server, so that the source server searches for the corresponding data according to the data block identifier, the version information, and the hole information.
- the destination server receives the response message that is sent by the source server and carries the data, and copies the data to the hole corresponding to the data block identifier, the version information, and the hole information according to the response message.
- the destination server obtains the data block identifier, the version information, and the hole information, and specifically includes:
- the destination server obtains a data replication request, where the data replication request includes: a data block identifier, version information, and hole information.
- the data copy request further includes: a data block copy start version number
- the version information is specifically: a data copy termination version number
- the destination server After obtaining the data block identifier, the version information, and the hole information, the destination server further includes:
- the response message further includes: a current version number of the data block corresponding to the data of the source server;
- the destination server determines, when the current data block version number of the destination server is greater than or equal to the current version number of the data block corresponding to the data of the source server, the data block of the destination server The current data block version number of the corresponding data block is updated to the latest version number of the data block.
- the method further includes:
- the method further includes:
- the destination server deletes the data block identifier, version information, and hole information.
- the hole information specifically includes: a data offset position and a data offset length.
- the source server receives the data block identifier, version information, and hole information sent by the destination server.
- the source server sends a response message carrying the data to the destination server, so that the destination server copies the data to the data block identifier, version information, and hole information according to the response message.
- the void The void.
- the response message further includes: a current version number of the data block corresponding to the data of the source server, where the destination server determines that the current data block version number of the destination server is greater than When the current version number of the data block corresponding to the data of the source server is equal to, the current data block version number of the data block corresponding to the data block identifier of the destination server is updated to be the latest of the data block. version number.
- the hole information specifically includes: a data offset position and a data offset length.
- the embodiment of the present application further provides a destination server, which is applied to a distributed storage system that includes a destination server and a source server.
- the destination server includes:
- Obtaining a module configured to obtain a data block identifier, version information, and hole information
- a sending module configured to send the data block identifier, the version information, and the hole information to the source server, so that the source server searches for the corresponding data according to the data block identifier, the version information, and the hole information;
- a copying module configured to receive a response message that is sent by the source server and that carries the data, and copy the data to a data block corresponding to the data block identifier according to the response message.
- the obtaining module is specifically configured to obtain a data copy request, where the data copy request includes: a data block identifier, version information, and hole information.
- the data copy request further includes: a data block copy start version number
- the version information is specifically: a data copy termination version number
- the sending module is further configured to: determine that a data copy termination version number of the data block corresponding to the data block identifier is greater than a data block copy start version number of the data block corresponding to the data block identifier, and the data block identifier When the data block copy start version number of the corresponding data block is consistent with the current data block version number of the data block corresponding to the data block identifier of the destination server, the data block identifier, version information, and hole information are sent to Source server.
- the response message further includes: a current version number of the data block corresponding to the data of the source server;
- the copying module is further configured to: when determining that the current data block version number of the destination server is greater than or equal to the current version number of the data block corresponding to the data of the source server, the destination server The current data block version number of the data block corresponding to the data block identifier is updated to the latest version number of the data block.
- the obtaining module is further configured to: determine a hole of the data to be copied according to the data block identifier, the version information, and the hole information, and after the data copy request that overlaps with the hole is queried, there is a coincident hole. Synthesize a new hole.
- the copy module is further configured to delete the data block identifier, version information, and hole information.
- the hole information specifically includes: a data offset position and a data offset length.
- the embodiment of the present application further provides a source server, which is applied to a distributed storage system that includes a destination server and a source server, and includes:
- a receiving module configured to receive a data block identifier, version information, and hole information sent by the destination server
- Obtaining a module configured to obtain the data block identifier according to the data block identifier, the version information, and the hole information when determining that the current version number of the data block corresponding to the data of the source server is greater than or equal to the version information
- the version information and the hole information correspond to the data corresponding to the hole;
- the response message further includes: a current version number of the data block corresponding to the data of the source server, where the destination server determines that the current data block version number of the destination server is greater than When the current version number of the data block corresponding to the data of the source server is equal to, the current data block version number of the data block corresponding to the data block identifier of the destination server is updated to be the latest of the data block. version number.
- FIG. 5 is a schematic structural diagram of a source server according to an embodiment of the present application.
- the method specifically includes the following steps:
- Step S101 The destination server obtains a data block identifier, version information, and hole information.
- the data block identifier, the version information, and the hole information are invalid, and the data block identifier, the version information, the hole information is no longer processed, or the hole information is deleted.
- the hole information specifically includes: a data offset position and a data offset length
- the destination server determines a hole of the data to be copied according to the data block identifier, the version information, and the hole information, and queries the hole and the hole After a coincident data replication request, the overlapping holes are merged into a new hole.
- the destination server After the destination server obtains the data replication request, the destination server determines the hole of the data to be copied according to the data block identifier, the version information, and the hole information in the data replication request, and queries whether there is a data replication that overlaps with the hole.
- the request is to query whether there is data in which the data block identifier in the data copy request is the same, the version information is smaller than the version information in the data copy request, and the data offset position and the data offset length in the hole information have overlapping intervals.
- the overlapping holes are integrated into one cavity, which includes: partial coverage, intermediate coverage, and full coverage.
- the hole of the data to be copied can be determined.
- the destination server obtains the data block identifier as 1
- the version information is 16
- the hole determined by the hole information is V2
- the data block identifier is found
- the version information is 13
- the hole determined by the hole information is V1
- V2 and V1 are coincident
- V2 and V1 are integrated into one hole
- the hole information corresponding to the hole is updated to the hole with the original hole V2.
- the information, the hole that will be integrated into is updated to the hole in the newly received data replication request.
- V2 and V1 are integrated into one hole, which is “V2 intersection V1”, as described in FIG. 2 .
- Step S102 The destination server sends the data block identifier, the version information, and the hole information to the source server, so that the source server searches for the corresponding data according to the data block identifier, the version information, and the hole information.
- the source server may find the data block corresponding to the data block identifier according to the data block identifier, the version information, and the hole information.
- the data corresponding to the hole information in the corresponding version may be found.
- Step S103 The destination server receives the response message that is sent by the source server and carries the data, and copies the data to the hole corresponding to the data block identifier, the version information, and the hole information according to the response message.
- the destination server receives the response message that is sent by the source server and carries the data, where the response message includes: the data block identifier, the version information, the hole information, and the data, and the destination server according to the The data block identifier, the version information, and the hole information copy the data to the hole corresponding to the hole information.
- the destination server After copying the data to the hole corresponding to the hole information according to the response message, the destination server deletes the data block identifier, version information, and hole information.
- the response message further includes: a current version number of the data block corresponding to the data of the source server, for example, a current version number of the data block corresponding to the data of the source server is 17, the purpose If the current version number of the data block corresponding to the data of the end server is 18, the version number of the data block is updated to 18, and the data copying process is completed. If the current version number of the data block corresponding to the data of the destination server is 16, the data replication request is received again, and after the determination request is valid, the data replication needs to be sent to the source server. Requested block ID, version information, and hole information.
- the destination server obtains the data block identifier, the version information, and the hole information; the destination server sends the data block identifier, the version information, and the hole information to the source server, so that the source server And searching, according to the data block identifier, the version information, and the hole information, the corresponding data; the destination server receives the response message that is sent by the source server and carries the data, and copies the data according to the response message.
- Data block identification, version information, and hole information The corresponding holes enable data copying only for the holes in the random read/write mode, and do not need to perform full copying of the data, thereby reducing the amount of data to be copied and the copying time, and improving the data copying efficiency.
- FIG. 3 is a schematic flowchart diagram of another method for data update according to Embodiment 2, where the method is applied to a distributed storage system including random read and write including an active server and a destination server, This method will be described in detail on the source server side.
- the method specifically includes the following steps:
- Step S201 The source server receives the data block identifier, version information, and hole information sent by the destination server.
- the hole information specifically includes: a data offset position and a data offset length.
- Step S202 the source server obtains the data according to the data block identifier, the version information, and the hole information when determining that the current version number of the data block corresponding to the data of the source server is greater than or equal to the version information.
- the data corresponding to the hole corresponding to the data block identifier, the version information, and the hole information is greater than or equal to the version information.
- the source server determines whether the current version number of the data block corresponding to the data block identifier is greater than or equal to the version information, and if the determination result is yes, the data block identifier, version information, and hole information are found. Data, and the data is carried in the response request and sent to the destination server, so that the destination server copies the data to the corresponding hole; when the judgment result is no, the source server does not exist. The copied data sends a failure response to the destination server.
- the response message further includes: a current version number of the data block corresponding to the data of the source server, where the destination server determines that the current data block version number of the destination server is greater than or equal to
- the current data block version number of the data block corresponding to the data block identifier of the destination server is updated to the latest version number of the data block.
- the destination server obtains the data block identifier, the version information, and the hole information; the destination server sends the data block identifier, the version information, and the hole information to the source server, so that the source server And searching, according to the data block identifier, the version information, and the hole information, the corresponding data; the destination server receives the response message that is sent by the source server and carries the data, and copies the data according to the response message.
- the data block identifier, the version information, and the hole corresponding to the hole information are implemented, so that only the data is copied to the hole in the random read/write mode, and the full amount of data is not copied, thereby reducing the amount of data to be copied and the copying time. Improve data replication efficiency.
- the third embodiment of the present invention further provides a destination server, which is applied to a distributed storage system including a source server and a destination server, as shown in FIG. 4 .
- the destination server includes:
- the obtaining module 41 is configured to obtain a data block identifier, version information, and hole information.
- the sending module 42 is configured to send the data block identifier, the version information, and the hole information to the source server, so that the source server searches for the corresponding data according to the data block identifier, the version information, and the hole information.
- the copying module 43 is configured to receive a response message that is sent by the source server and that carries the data, and copy the data to a data block corresponding to the data block identifier according to the response message.
- the obtaining module is specifically configured to obtain a data copy request, where the data copy request includes: a data block identifier, version information, and hole information.
- the data copy request further includes: a data block copy start version number.
- the version information is specifically: a data copy termination version number.
- the sending module is further configured to: determine that a data copy termination version number of the data block corresponding to the data block identifier is greater than a data block copy start version number of the data block corresponding to the data block identifier, and the data block identifier When the data block copy start version number of the corresponding data block is consistent with the current data block version number of the data block corresponding to the data block identifier of the destination server, the data block identifier, version information, and hole information are sent to Source server.
- the response message further includes: a current version number of the data block corresponding to the data of the source server.
- the copying module is further configured to: when determining that the current data block version number of the destination server is greater than or equal to the current version number of the data block corresponding to the data of the source server, the destination server The current data block version number of the data block corresponding to the data block identifier is updated to the latest version number of the data block.
- the obtaining module is further configured to: determine a hole of the data to be copied according to the data block identifier, the version information, and the hole information, and integrate the overlapping holes into a hole after the data copy request that coincides with the hole is queried A new hole.
- the replication module is further configured to delete the data block identifier, version information, and hole information.
- the hole information specifically includes: a data offset position and a data offset length.
- the fourth embodiment of the present invention further provides a destination server, which is applied to a distributed storage system including a source server and a destination server, as shown in FIG. 5.
- the source server includes:
- the receiving module 51 is configured to receive the data block identifier, the version information, and the hole information sent by the destination server.
- the obtaining module 52 is configured to obtain the data block according to the data block identifier, the version information, and the hole information when determining that the current version number of the data block corresponding to the data of the source server is greater than or equal to the version information.
- the identification, version information, and hole information correspond to the data corresponding to the hole.
- the sending module 53 is configured to send, to the destination server, a response message carrying the data, so that the destination server copies the data to the data block identifier, version information, and hole information according to the response message. Corresponding holes.
- the response message further includes: a current version number of the data block corresponding to the data of the source server, where the destination server determines that the current data block version number of the destination server is greater than or equal to
- the current data block version number of the data block corresponding to the data block identifier of the destination server is updated to the latest version number of the data block.
- the hole information specifically includes: a data offset position and a data offset length.
- the destination server obtains the data block identifier, the version information, and the hole information; the destination server sends the data block identifier, the version information, and the hole information to the source server, so that the source server And searching, according to the data block identifier, the version information, and the hole information, the corresponding data; the destination server receives the response message that is sent by the source server and carries the data, and copies the data according to the response message.
- Data block identification, version information, and hole information The corresponding holes enable data copying only for the holes in the random read/write mode, and do not need to perform full copying of the data, thereby reducing the amount of data to be copied and the copying time, and improving the data copying efficiency.
- modules in the apparatus in the implementation scenario may be distributed in the apparatus for implementing the scenario according to the implementation scenario description, or may be correspondingly changed in one or more devices different from the implementation scenario.
- the modules of the above implementation scenarios may be combined into one module, or may be further split into multiple sub-modules.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种数据复制方法和设备,包括:目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
Description
本申请涉及通信技术领域,尤其涉及一种应用于分布式存储系统的数据复制方法和设备。
在分布式存储系统中,会将数据块存储多个副本,每次数据块的更新需要在多个副本之间达成一致,当副本数存在不足,或者副本缺少一些版本的更新数据时,则需要从其它副本进行数据复制。
目前,现有方案实现数据复制的前提是:源端服务器或者目的端服务器需要能够根据本地维护的待复制数据的版本和对端维护的待复制数据的版本计算出数据增量或差量,进而能够进行从对端获得待复制数据的数据增量或差量进行复制。
在支持随机读写的分布式存储系统中,现有技术中采用从源端服务器向目的端服务器推送数据的模式,源端服务器需要将已有的数据块全量数据推送给目的端服务器,增加了复制的数据量,特别是在数据更新速度大于数据复制速度时,还会导致在预设值的数据复制时间内,数据复制过程无法完成的情况。
申请人在实现本发明的过程中发现,在支持随机读写的分布式存储系统中,现有技术存在以下问题,无法直接根据版本号的差值计算出数据增量或差量,只能进行数据的全量复制,增加了待复制的数据量及复制时间。
发明内容
本申请提供了一种数据复制方法及设备,用以实现随机读写的分布式存储系统的数据复制的问题。
为达到上述目的,本发明提供了一种数据复制的方法,至少包括以下步骤:
目的端服务器获得数据块标识、版本信息和空洞信息;
所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;
所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
其中,所述目的端服务器获得数据块标识、版本信息和空洞信息,具体包括:
所述目的端服务器获得数据复制请求,所述数据复制请求中包括:数据块标识、版本信息和空洞信息。
其中,所述数据复制请求还包括:数据块复制起始版本号;
所述版本信息具体为:数据复制终止版本号;
所述目的端服务器获得数据块标识、版本信息和空洞信息之后还包括:
所述目的端服务器在判断所述数据块标识对应的数据块的数据复制终止版本号大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号一致时,执行将所述数据块标识、版本信息和空洞信息发送给源端服务器的步骤。
其中,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号;
所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
其中,所述目的端服务器获得数据块标识、版本信息和空洞信息之后,所述方法还包括:
所述目的端服务器根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
其中,所述根据所述响应消息将所述数据复制到所述空洞信息对应的空洞之后,所述方法还包括:
所述目的端服务器将所述数据块标识、版本信息和空洞信息删除。
其中,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
本申请实施例还提供了一种数据更新的方法,应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,包括:
源端服务器接收到目的端服务器发送的数据块标识、版本信息和空洞信息;
所述源端服务器在判断所述源端服务器的、所述数据块标识对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应的空洞所对应的数据;
所述源端服务器向所述目的端服务器发送携带所述数据的响应消息,以使所述目的端服务器根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
其中,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
其中,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
本申请实施例还提供了一种目的端服务器,应用于包含目的端服务器和源端服务器的随机读写的分布式存储系统中,所述目的端服务器包括:
获得模块,用于获得数据块标识、版本信息和空洞信息;
发送模块,用于将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;
复制模块,用于接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到数据块标识对应的数据块。
其中,所述获得模块,具体用于获得数据复制请求,所述数据复制请求中包括:数据块标识、版本信息和空洞信息。
其中,所述数据复制请求还包括:数据块复制起始版本号;
所述版本信息具体为:数据复制终止版本号;
所述发送模块还用于:在判断所述数据块标识对应的数据块的数据复制终止版本号大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号一致时,将所述数据块标识、版本信息和空洞信息发送给源端服务器。
其中,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号;
所述复制模块还用于,在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
其中,所述获得模块还用于:根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
其中,所述复制模块还用于,将所述数据块标识、版本信息和空洞信息删除。
其中,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
本申请实施例还提供了一种源端服务器,应用于包含目的端服务器和源端服务器的随机读写的分布式存储系统中,包括:
接收模块,用于接收目的端服务器发送的数据块标识、版本信息和空洞信息;
获得模块,用于在判断所述源端服务器的、所述数据对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应空洞所对应的数据;
发送模块,用于向所述目的端服务器发送携带所述数据的响应消息,以使所述目的端服务器根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
其中,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
其中,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
与现有技术相比,本申请的上述实施例具有以下有益技术效果:
本申请实施例中,目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
图1为本申请实施例提供一种数据复制的方法的流程示意图;
图2为本申请实施例提供的有重合空洞的整合示意图;
图3为本申请实施例提供的另一种数据复制的方法的流程示意图;
图4为本申请实施例提供的一种目的端服务器的结构示意图;
图5为本申请实施例提供的一种源端服务器的结构示意图。
下面将结合本发明的实施例中的附图,对本发明的实施例中的技术方案进行清楚、完整的描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明的实施例保护的范围。
如图1所示,为实施例一所提出的一种数据复制的方法的流程示意图,该方法应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,下面将在目的端服务器侧对该方法进行详细说明。
该方法,具体包括以下步骤:
步骤S101、目的端服务器获得数据块标识、版本信息和空洞信息。
在发起数据复制时,目的端服务器会获得数据复制发起端发送的数据复制请求,该数据复制请求中包含:数据块标识,版本信息,空洞信息以及数据块复制起始版本号,其中,版本信息具体为数据复制终止版本号。
所述目的端服务器获得数据块标识、版本信息和空洞信息之后,目的端服务器判断数据块标识对应的数据块的数据复制终止版本号是否大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号是否一致。需要注意的是,如果目的端服务器不存在所述数据块标识对应的信息,则判断目的端服务器当前不存在该数据块标识对应的数据块,则需要对该数据块进行全量复制。
如果判断结果为是,则该数据块标识,版本信息,空洞信息为有效继续执行下面的步骤。
如果判断结果为否,则该数据块标识,版本信息,空洞信息为无效,不再对该数据块标识,版本信息,空洞信息进行处理,或者将其删除。
进一步的,空洞信息具体包括:数据偏移位置和数据偏移长度,所述目的端服务器根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
目的端服务器获得数据复制请求之后,所述目的端服务器根据所述数据复制请求中的数据块标识、版本信息和空洞信息确定待复制数据的空洞,查询是否存在与所述空洞有重合的数据复制请求,就是查询是否存在所述数据复制请求中的数据块标识相同、版本信息小于所述数据复制请求中的版本信息,且空洞信息中的数据偏移位置和数据偏移长度有重合区间的数据复制请求,如果存在,则将有重合的空洞整合成一个空洞,就是将有重合的空洞所对应的数据块标识相同、版本信息和空洞信息合并成一个空洞所对应的数据块标识相同、版本信息和空洞信息。其中,需要注意的是,合并成的空洞所对应的版本信息为最后一个数据复制请求的版本信息对应的版本号。
具体地,如图2所示,将有重合的空洞整合成一个空洞,具体包括:部分覆盖、中间覆盖和全部覆盖。根据数据偏移位置和数据偏移长度可以确定待复制数据的空洞,当目的端服务器获得的数据块标识为1,版本信息为16,空洞信息确定的空洞为V2,如果查询到存在数据块标识为1,版本信息为13,空洞信息确定的空洞为V1,且V2和V1有重合时,则将V2和V1整合成一个空洞,并将该空洞对应的空洞信息更新为原来空洞为V2的空洞信息,即将整合成的空洞更新为新收到的数据复制请求中的空洞。
具体地,如图2所示,由于版本16所对应的空洞比版本13所对应的空洞数据更新,将V2和V1整合成一个空洞,就是“V2交V1”,具体如图2中所述的三种合并方式。
步骤S102、目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据。
目的端将所述数据块标识、版本信息和空洞信息发送给源端服务器后,所述源端服务器根据数据块标识、版本信息和空洞信息,可以查找到数据块标识对应的数据块在版本信息对应的版本下的空洞信息所对应的数据。
步骤S103、目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,所述响应消息中包括:所述数据块标识、版本信息和空洞信息和所述数据,目的端服务器根据所述数据块标识、版本信息和空洞信息将所述数据复制到所述空洞信息对应的空洞。
当根据所述响应消息将所述数据复制到所述空洞信息对应的空洞之后,所述目的端服务器将所述数据块标识、版本信息和空洞信息删除。
其中,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号;所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
具体地,响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,例如源端服务器的、所述数据对应的数据块的当前版本号为17,所述目的端服务器的、所述数据对应的数据块的当前版本号为18,则将该数据块的版本号更新为18,完成本次数据复制过程。如果所述目的端服务器的、所述数据对应的数据块的当前版本号为16,则再次接收到数据复制请求,且经判断请求为有效后,还需要向所述源端服务器发送该数据复制请求的数据块标识、版本信息和空洞信息。
本申请实施例中,目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息
对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
如图3所示,为实施例二所提出另的一种数据更新的方法的流程示意图,该方法应用于包括包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,下面将在源端服务器侧对该方法进行详细说明。
该方法,具体包括以下步骤:
步骤S201、源端服务器接收到目的端服务器发送的数据块标识、版本信息和空洞信息。
其中,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
步骤S202、所述源端服务器在判断所述源端服务器的、所述数据对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应的空洞所对应的数据。
源端服务器判断自身的、所述数据块标识对应的数据块的当前版本号是否大于等于所述版本信息,当判断结果为是,则查找到所述数据块标识、版本信息和空洞信息对应的数据,并将所述数据携带在响应请求中发送给所述目的端服务器,以使所述目的端服务器将该数据复制到对应的空洞;当判断结果为否,则源端服务器并不存在待复制的数据,则向所述目的端服务器发送失败响应。
其中,响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
本申请实施例中,目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
基于上述实施例一同样的发明构思,本发明实施例三中还提供了一种目的端服务器,应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,如图4所示,该目的端服务器包括:
获得模块41,用于获得数据块标识、版本信息和空洞信息。
发送模块42,用于将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据。
复制模块43,用于接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到数据块标识对应的数据块。
所述获得模块,具体用于获得数据复制请求,所述数据复制请求中包括:数据块标识、版本信息和空洞信息。
所述数据复制请求还包括:数据块复制起始版本号。
所述版本信息具体为:数据复制终止版本号。
所述发送模块还用于:在判断所述数据块标识对应的数据块的数据复制终止版本号大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号一致时,将所述数据块标识、版本信息和空洞信息发送给源端服务器。
所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号。
所述复制模块还用于,在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
所述获得模块还用于:根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
所述复制模块还用于,将所述数据块标识、版本信息和空洞信息删除。
所述空洞信息具体包括:数据偏移位置和数据偏移长度。
本申请实施例中,目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
基于上述实施例二同样的发明构思,本发明实施例四中还提供了一种目的端服务器,应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,如图5所示,该源端服务器包括:
接收模块51,用于接收目的端服务器发送的数据块标识、版本信息和空洞信息。
获得模块52,用于在判断所述源端服务器的、所述数据对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应空洞所对应的数据。
发送模块53,用于向所述目的端服务器发送携带所述数据的响应消息,以使所述目的端服务器根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。所述空洞信息具体包括:数据偏移位置和数据偏移长度。
本申请实施例中,目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息
对应的空洞,从而实现了随机读写方式下只对空洞进行数据复制,不需要进行数据的全量复制从而减少了待复制的数据量及复制时间,提高了数据复制效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (20)
- 一种数据复制的方法,应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,其特征在于,该方法包括:目的端服务器获得数据块标识、版本信息和空洞信息;所述目的端服务器将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;所述目的端服务器接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
- 如权利要求1所述的方法,其特征在于,所述目的端服务器获得数据块标识、版本信息和空洞信息,具体包括:所述目的端服务器获得数据复制请求,所述数据复制请求中包括:数据块标识、版本信息和空洞信息。
- 如权利要求2所述的方法,其特征在于,所述数据复制请求还包括:数据块复制起始版本号;所述版本信息具体为:数据复制终止版本号;所述目的端服务器获得数据块标识、版本信息和空洞信息之后还包括:所述目的端服务器在判断所述数据块标识对应的数据块的数据复制终止版本号大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号一致时,执行将所述数据块标识、版本信息和空洞信息发送给源端服务器的步骤。
- 如权利要求3所述的方法,其特征在于,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号;所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
- 如权利要求2所述的方法,其特征在于,所述目的端服务器获得数据块标识、版本信息和空洞信息之后,所述方法还包括:所述目的端服务器根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
- 如权利要求1所述的方法,其特征在于,所述根据所述响应消息将所述数据复制到所述空洞信息对应的空洞之后,所述方法还包括:所述目的端服务器将所述数据块标识、版本信息和空洞信息删除。
- 如权利要求1-6任一项所述的方法,其特征在于,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
- 一种数据更新的方法,应用于包含有源端服务器和目的端服务器的随机读写的分布式存储系统中,其特征在于,该方法包括:源端服务器接收到目的端服务器发送的数据块标识、版本信息和空洞信息;所述源端服务器在判断所述源端服务器的、所述数据块标识对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应的空洞所对应的数据;所述源端服务器向所述目的端服务器发送携带所述数据的响应消息,以使所述目的端服务器根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
- 如权利要求7所述的方法,其特征在于,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本 号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
- 如权利要求7-9任一项所述的方法,其特征在于,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
- 一种目的端服务器,应用于包含目的端服务器和源端服务器的随机读写的分布式存储系统中,所述目的端服务器包括:获得模块,用于获得数据块标识、版本信息和空洞信息;发送模块,用于将所述数据块标识、版本信息和空洞信息发送给源端服务器,以使所述源端服务器根据所述数据块标识、版本信息和空洞信息查找到对应的数据;复制模块,用于接收所述源端服务器发送的携带所述数据的响应消息,并根据所述响应消息将所述数据复制到数据块标识对应的数据块。
- 如权利要求11所述的目的端服务器,其特征在于,所述获得模块,具体用于获得数据复制请求,所述数据复制请求中包括:数据块标识、版本信息和空洞信息。
- 如权利要求12所述的目的端服务器,其特征在于,所述数据复制请求还包括:数据块复制起始版本号;所述版本信息具体为:数据复制终止版本号;所述发送模块还用于:在判断所述数据块标识对应的数据块的数据复制终止版本号大于所述数据块标识对应的数据块的数据块复制起始版本号,且所述数据块标识对应的数据块的数据块复制起始版本号与目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号一致时,将所述数据块标识、版本信息和空洞信息发送给源端服务器。
- 如权利要求13所述的方法,其特征在于,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号;所述复制模块还用于,在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
- 如权利要求12所述的目的端服务器,其特征在于,所述获得模块还用于:根据所述数据块标识、版本信息和空洞信息确定待复制数据的空洞,并在查询到与所述空洞有重合的数据复制请求后,将有重合的空洞整合成一个新的空洞。
- 如权利要求11所述的方法,其特征在于,所述复制模块还用于,将所述数据块标识、版本信息和空洞信息删除。
- 如权利要求11-16任一项所述的目的端服务器,其特征在于,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
- 一种源端服务器,应用于包含目的端服务器和源端服务器的随机读写的分布式存储系统中,其特征在于,所述源端服务器包括:接收模块,用于接收目的端服务器发送的数据块标识、版本信息和空洞信息;获得模块,用于在判断所述源端服务器的、所述数据对应的数据块的当前版本号大于等于所述版本信息时,根据数据块标识、版本信息和空洞信息,获得所述数据块标识、版本信息和空洞信息对应空洞所对应的数据;发送模块,用于向所述目的端服务器发送携带所述数据的响应消息,以使所述目的端服务器根据所述响应消息将所述数据复制到所述数据块标识、版本信息和空洞信息对应的空洞。
- 如权利要求18所述的源端服务器,其特征在于,所述响应消息还包括:所述源端服务器的、所述数据对应的数据块的当前版本号,用于使所述目的端服务器在判断目的端服务器的、当前的数据块版本号大于等于所述源端服务器的、所述数据对应的数据块的当前版本号时,将目的端服务器的、所述数据块标识对应的数据块当前的数据块版本号更新为所述数据块的最新版本号。
- 如权利要求18-19任一项所述的源端服务器,其特征在于,所述空洞信息具体包括:数据偏移位置和数据偏移长度。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017559062A JP6700308B2 (ja) | 2015-05-11 | 2016-04-18 | データ・コピー方法及びデバイス |
| EP16792018.0A EP3297250B1 (en) | 2015-05-11 | 2016-04-18 | Data copy method and device |
| US15/809,910 US11263231B2 (en) | 2015-05-11 | 2017-11-10 | Data copy method and device |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510236871.8 | 2015-05-11 | ||
| CN201510236871.8A CN106302559B (zh) | 2015-05-11 | 2015-05-11 | 一种数据复制方法和设备 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US15/809,910 Continuation US11263231B2 (en) | 2015-05-11 | 2017-11-10 | Data copy method and device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2016180168A1 true WO2016180168A1 (zh) | 2016-11-17 |
Family
ID=57247732
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2016/079552 Ceased WO2016180168A1 (zh) | 2015-05-11 | 2016-04-18 | 一种数据复制方法和设备 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US11263231B2 (zh) |
| EP (1) | EP3297250B1 (zh) |
| JP (1) | JP6700308B2 (zh) |
| CN (1) | CN106302559B (zh) |
| WO (1) | WO2016180168A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107682431A (zh) * | 2017-09-28 | 2018-02-09 | 成都路行通信息技术有限公司 | 一种多设备间数据同步优化方法及系统 |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10938863B2 (en) * | 2018-03-15 | 2021-03-02 | Fuji Xerox Co., Ltd. | Secure document management through verification of security states of information processing apparatuses in the peer-to-peer transmission of encrypted documents |
| US10917408B2 (en) * | 2018-03-15 | 2021-02-09 | Fuji Xerox Co., Ltd. | Secure document management through verification of security states of information processing apparatuses in peer-to-peer transmission of encrypted documents |
| CN108737535B (zh) * | 2018-05-14 | 2021-10-29 | 平安科技(深圳)有限公司 | 一种消息推送方法、存储介质和服务器 |
| CN110855737B (zh) * | 2019-09-24 | 2020-11-06 | 中国科学院软件研究所 | 一种一致性级别可控的自适应数据同步方法和系统 |
| CN113778320B (zh) * | 2020-06-09 | 2024-11-29 | 华为技术有限公司 | 网卡以及网卡处理数据的方法 |
| US11733920B2 (en) | 2020-09-10 | 2023-08-22 | Western Digital Technologies, Inc. | NVMe simple copy command support using dummy virtual function |
| US11556268B2 (en) | 2021-04-22 | 2023-01-17 | Western Digital Technologies, Inc. | Cache based flow for a simple copy command |
| US12436680B2 (en) | 2022-09-22 | 2025-10-07 | SanDisk Technologies, Inc. | NVMe copy command acceleration |
| CN120929438A (zh) * | 2024-05-08 | 2025-11-11 | 阿里云计算有限公司 | 数据处理方法、计算设备、存储介质及计算机程序产品 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030158869A1 (en) * | 2002-02-20 | 2003-08-21 | International Business Machines Corporation | Incremental update control for remote copy |
| CN102508835A (zh) * | 2011-09-22 | 2012-06-20 | 用友软件股份有限公司 | 基于日志管理包的增量数据实时同步装置和方法 |
| CN102541461A (zh) * | 2010-12-31 | 2012-07-04 | 阿里巴巴集团控股有限公司 | 远程数据存储的数据读写方法、装置及其系统 |
| CN103795754A (zh) * | 2012-10-31 | 2014-05-14 | 中国电信股份有限公司 | 多系统间的数据同步方法和系统 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6578054B1 (en) * | 1999-10-04 | 2003-06-10 | Microsoft Corporation | Method and system for supporting off-line mode of operation and synchronization using resource state information |
| JP2002116939A (ja) * | 2000-10-06 | 2002-04-19 | Telecommunication Advancement Organization Of Japan | 分散型データベースシステム |
| JP4131514B2 (ja) * | 2003-04-21 | 2008-08-13 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ネットワークシステム、サーバ、データ処理方法及びプログラム |
| US8275815B2 (en) * | 2008-08-25 | 2012-09-25 | International Business Machines Corporation | Transactional processing for clustered file systems |
| JP5382546B2 (ja) * | 2009-01-08 | 2014-01-08 | 日本電気株式会社 | 分散ファイル名前解決システム、分散ファイル名前解決方法、及び分散ファイル名前解決用プログラム |
| US8799367B1 (en) * | 2009-10-30 | 2014-08-05 | Netapp, Inc. | Using logical block addresses with generation numbers as data fingerprints for network deduplication |
| US9311327B1 (en) * | 2011-06-30 | 2016-04-12 | Emc Corporation | Updating key value databases for virtual backups |
| US9116726B2 (en) * | 2012-09-28 | 2015-08-25 | Vmware, Inc. | Virtual disk snapshot consolidation using block merge |
| US9378370B2 (en) * | 2013-06-17 | 2016-06-28 | Microsoft Technology Licensing, Llc | Scanning files for inappropriate content during synchronization |
-
2015
- 2015-05-11 CN CN201510236871.8A patent/CN106302559B/zh active Active
-
2016
- 2016-04-18 JP JP2017559062A patent/JP6700308B2/ja active Active
- 2016-04-18 WO PCT/CN2016/079552 patent/WO2016180168A1/zh not_active Ceased
- 2016-04-18 EP EP16792018.0A patent/EP3297250B1/en active Active
-
2017
- 2017-11-10 US US15/809,910 patent/US11263231B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030158869A1 (en) * | 2002-02-20 | 2003-08-21 | International Business Machines Corporation | Incremental update control for remote copy |
| CN102541461A (zh) * | 2010-12-31 | 2012-07-04 | 阿里巴巴集团控股有限公司 | 远程数据存储的数据读写方法、装置及其系统 |
| CN102508835A (zh) * | 2011-09-22 | 2012-06-20 | 用友软件股份有限公司 | 基于日志管理包的增量数据实时同步装置和方法 |
| CN103795754A (zh) * | 2012-10-31 | 2014-05-14 | 中国电信股份有限公司 | 多系统间的数据同步方法和系统 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107682431A (zh) * | 2017-09-28 | 2018-02-09 | 成都路行通信息技术有限公司 | 一种多设备间数据同步优化方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3297250B1 (en) | 2020-08-05 |
| JP2018515850A (ja) | 2018-06-14 |
| EP3297250A4 (en) | 2018-10-03 |
| CN106302559A (zh) | 2017-01-04 |
| EP3297250A1 (en) | 2018-03-21 |
| CN106302559B (zh) | 2019-07-05 |
| JP6700308B2 (ja) | 2020-05-27 |
| US20180089297A1 (en) | 2018-03-29 |
| US11263231B2 (en) | 2022-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2016180168A1 (zh) | 一种数据复制方法和设备 | |
| CN102982141B (zh) | 一种实现分布式数据库代理的方法及装置 | |
| JP6255138B2 (ja) | 分散データの同期および対立解消のための方法、システム、およびコンピュータ可読記憶媒体 | |
| CN107181686B (zh) | 路由表的同步方法、装置及系统 | |
| CN110858194A (zh) | 一种数据库扩容的方法和装置 | |
| WO2020063763A1 (zh) | 数据存储方法、装置、系统、服务器、控制节点及介质 | |
| CN104636437B (zh) | 一种事件通知方法、监听器的处理方法及装置 | |
| CN106649600B (zh) | 一种迁移文件权限的方法、装置以及系统 | |
| WO2015110062A1 (zh) | 一种分布式数据存储方法、装置和系统 | |
| CN107391033B (zh) | 数据迁移方法及装置、计算设备、计算机存储介质 | |
| CN114816225B (zh) | 存储集群的管理方法、装置、电子设备及存储介质 | |
| CN105550306A (zh) | 多副本数据的读写方法及系统 | |
| CN114564446B (zh) | 一种文件存储的方法、装置、系统及存储介质 | |
| WO2020199711A1 (zh) | 数据存储方法、系统、装置及设备 | |
| CN103580918B (zh) | 一种配置数据处理方法及装置 | |
| CN113348454A (zh) | 一种集群管理方法、装置、电子设备及存储介质 | |
| CN106528876B (zh) | 分布式系统的信息处理方法及分布式信息处理系统 | |
| CN115167769B (zh) | 一种写入数据的方法、装置及系统 | |
| WO2012162969A1 (zh) | 一种分布式队列消息读取方法及设备、系统 | |
| CN107704596A (zh) | 一种读取文件的方法、装置及设备 | |
| CN108712505B (zh) | 数据同步方法、装置、设备、系统及存储介质 | |
| WO2017028517A1 (zh) | 一种云中数据文件的管理方法、云管理点和系统 | |
| CN103067496B (zh) | 客户端缓存机制管理方法和服务器 | |
| CN110297598B (zh) | 一种数据同步方法及存储系统 | |
| CN112948052B (zh) | 跨数据中心的虚拟机迁移方法、数据中心及计算机介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16792018 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2017559062 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |