WO2019144761A1 - 一种数据同步方法和分布式***、设备 - Google Patents
一种数据同步方法和分布式***、设备 Download PDFInfo
- Publication number
- WO2019144761A1 WO2019144761A1 PCT/CN2018/124451 CN2018124451W WO2019144761A1 WO 2019144761 A1 WO2019144761 A1 WO 2019144761A1 CN 2018124451 W CN2018124451 W CN 2018124451W WO 2019144761 A1 WO2019144761 A1 WO 2019144761A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- local data
- data
- timestamp
- verification
- Prior art date
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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Definitions
- the embodiments of the present invention relate to the field of data synchronization, and in particular, to a data synchronization method, a distributed system, and a device.
- Data synchronization is one of the most important means of resource sharing.
- the data synchronization method has the following advantages: high redundancy, improved data disaster resistance and disaster tolerance, remote data localization, reduced network overhead when accessing data, and improved data access efficiency; and can fully utilize the central processing unit of each server ( Central Processing Unit (CPU) and Input/Output (I/O) improve overall data access efficiency.
- CPU Central Processing Unit
- I/O Input/Output
- the GitLab server is a World Wide Web (WEB) (also known as the World Wide Web) service built using Git as a data management tool.
- WEB World Wide Web
- the advantage of the GitLab server over other servers is that it has a WEB interface. Can make it easy for managers to see the overall situation of the data.
- GitLab servers cannot achieve real-time data synchronization, requiring administrators to manually synchronize data between GitLab servers at specific times. Since the GitLab server can only synchronize data at a specific time, it will cause poor real-time data synchronization between servers.
- the embodiments of the present invention provide a data synchronization method, a distributed system, and a device, which are used to solve the problem of poor real-time data synchronization between servers in the prior art.
- an embodiment of the present invention provides a data synchronization method, including: applying to a distributed system, the system includes at least two servers; the at least two servers include a first server and a second server; The first server receives the first verification information sent by the second server, the first verification information includes a first verification parameter, and the first verification parameter is determined by the second server.
- the local data changes, the local data is generated according to the changed local data; when the first server determines that the received first verification parameter is inconsistent with the locally stored second verification parameter, the local data is synchronized to the local data.
- the data of the second server wherein the second verification parameter is generated by the first server according to current local data.
- the method further includes: the first server generates third verification information after determining that the local data changes; the third verification information includes a third verification parameter; wherein the third The verification parameter is generated by the first server according to the changed local data when determining that the local data changes; the first server sends the third verification information to the second server; The server receives the synchronization update request of the second server, where the synchronization update request is sent by the second server when determining that the received third verification parameter is inconsistent with the locally stored fourth verification parameter, where The fourth verification parameter is generated by the second server according to current local data.
- the first verification information further includes a first timestamp, where the first timestamp is used to indicate a time when the second server local data changes; if the first server determines to receive the received When the first timestamp is earlier than the second timestamp stored locally, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server; The second timestamp is used to indicate a moment when the first server local data changes.
- the local data is first synchronized to the data of the second server, and then And sending the third verification information to the second server, if: determining, by the first server, that the received first timestamp is earlier than a locally stored second timestamp, determining the a file identifier corresponding to the first timestamp and the second timestamp; if the first server determines that the file identifiers corresponding to the first timestamp and the second timestamp are the same, the local data is first synchronized to The data of the second server is sent to the second server.
- the first verification parameter is generated by the second server performing a hash operation on the changed local data; the second verification parameter and the third verification parameter are respectively the A server generates a hash operation on the changed local data; and the fourth verification parameter is generated by the second server hashing the current local data.
- an embodiment of the present invention provides a distributed system for data synchronization, where the system includes at least two servers; the at least two servers include a first server and a second server; wherein the first server includes a receiving unit, configured to receive first verification information sent by the second server, where the first verification information includes a first verification parameter, and the first verification parameter is determined by the second server to be local The data is generated according to the changed local data; the processing unit is configured to synchronize the local data to the local data when determining that the received first verification parameter is inconsistent with the locally stored second verification parameter Data of the second server; wherein the second verification parameter is generated by the first server according to current local data.
- the processing unit is further configured to: after determining that the local data changes, generate third verification information; the third verification information includes a third verification parameter; wherein the third verification The parameter is generated by the first server according to the changed local data when determining that the local data changes;
- a sending unit configured to: send the third verification information to the second server
- the receiving unit is configured to: receive a synchronization update request of the second server, where the synchronization update request is that the second server determines the received third verification parameter and locally stored fourth verification Sent when the parameters are inconsistent, wherein the fourth verification parameter is generated by the second server according to current local data.
- the first check information further includes a first timestamp, where the first timestamp is used to indicate a time when the second server local data changes; the processing unit is configured to: if it is determined to receive When the first timestamp is earlier than the second timestamp stored locally, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server.
- the second timestamp is used to indicate a moment when the first server local data changes.
- the processing unit is configured to: determine, when the received first timestamp is earlier than the locally stored second timestamp, respectively, determining that the first timestamp and the second timestamp correspond to If the file identifier corresponding to the first timestamp and the second timestamp is the same, the local data is first synchronized to the data of the second server, and then the third verification information is sent. To the second server.
- the first verification parameter is generated by the second server performing a hash operation on the changed local data; the second verification parameter and the third verification parameter are respectively the A server generates a hash operation on the changed local data; and the fourth verification parameter is generated by the second server hashing the current local data.
- an embodiment of the present invention provides a computer readable storage medium storing computer executable instructions for causing the computer to perform data synchronization of the first aspect.
- an embodiment of the present invention provides a computer device, including: a memory, configured to store a program instruction; a processor, configured to invoke a program instruction stored in the memory, and execute the first aspect data according to the obtained program.
- the method of synchronization including: a memory, configured to store a program instruction; a processor, configured to invoke a program instruction stored in the memory, and execute the first aspect data according to the obtained program. The method of synchronization.
- an embodiment of the present invention provides a distributed device for data synchronization, which is characterized in that:
- At least one processor and,
- the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the method of data synchronization of the first aspect described above.
- the data synchronization method is applied to a distributed system, where the system includes at least two servers, and the first server receives the first verification information sent by the second server, where the first verification information is
- the second server determines that the local data changes
- the second server generates the first verification information according to the changed data, that is, the second server generates the first verification information according to the changed data, where the first server generates the first verification information.
- the verification information includes a first verification parameter; the first server synchronizes the local data to the data of the second server when it is determined that the received first verification participates in the locally stored second verification parameter is inconsistent.
- the first server compares the first check parameter in the first check message sent by the received second server with the second stored locally.
- the first server synchronizes the local data to the data in the second server, so that the first server and the first server are improved.
- FIG. 1 is a schematic structural diagram of a distributed system according to an embodiment of the present disclosure
- FIG. 2 is a schematic flowchart of a method for data synchronization according to an embodiment of the present invention
- FIG. 3 is a schematic flowchart of a method for another data synchronization method according to an embodiment of the present invention.
- FIG. 4 is a schematic structural diagram of a first server according to an embodiment of the present invention.
- FIG. 5 is a schematic structural diagram of a distributed device for data synchronization according to an embodiment of the present invention.
- FIG. 1 is a schematic diagram showing the architecture of a distributed system to which an embodiment of the present invention is applied.
- the system architecture may include at least two servers.
- the first server 101 and the second server 102 are taken as an example; the first server 101 and the second server 102 have the same storage. Data; and the data on the first server 101 and the second server 102 need to remain the same in real time.
- the second server 102 is a server that monitors the change of local data first
- the first server 101 is a server associated with the second server 102.
- the first server 101 and the second server 102 can be connected by wireless or by wire.
- the system can be a distributed open source software code repository system, and the first server 101 and the second server 102 can be GitLab servers.
- the first server 101 and the second server 102 may be network devices for communicating with terminal devices.
- Rsync that is, a data mirror backup tool under the Linux system
- rsync will copy the entire contents, but the next time only the modified data will be transmitted, rsync can perform compression and decompression during the data transmission, so less bandwidth can be used.
- a real-time monitoring script and a real-time synchronization script are deployed on the first server 101 and the second server 102; the real-time monitoring script is used to monitor whether data on the first server 101 and the second server 102 changes; the real-time synchronization script is used for the first The data on the server 101 and the second server 102 are synchronized in real time.
- FIG. 2 exemplarily shows a number provided by an embodiment of the present invention.
- the data synchronization method includes the following steps:
- Step 201 The first server receives the first verification information sent by the second server.
- the first verification information includes a first verification parameter.
- the first verification parameter is when the second server determines that the local data changes, according to the change. Generated by local data;
- Step 202 The first server synchronizes the local data to the data of the second server when the received first check parameter is inconsistent with the locally stored second check parameter, where the second check parameter is the first server. Generated based on current local data.
- the data synchronization method is applied to a distributed system, where the system includes at least two servers, and the first server receives the first verification information sent by the second server, where the first verification information is determined by the second server.
- the second server When the data is changed, according to the changed local data, that is, after the local data of the second server changes, the second server generates first verification information according to the changed data, where the first verification information includes the first verification.
- the first server synchronizes the local data to the data of the second server when it is determined that the received first check participates in the local storage of the second check parameter is inconsistent.
- the first server compares the first check parameter in the first check message sent by the received second server with the second stored locally. If the verification parameters are inconsistent, the data in the first server is different from the data in the second server, and the first server synchronizes the local data to the data in the second server, thereby helping to improve the relationship between the first server and the second server.
- the real-time nature of data synchronization is not limited to:
- the real-time monitoring script deployed on the first server and the second server monitors the data in the first server and the data in the second server in real time.
- the second server when the real-time monitoring script on the second server monitors that the data in the second server changes, the second server generates the first verification information, and saves the first verification information in the locality of the second server.
- the first verification information includes a first verification parameter.
- the first check parameter in the first check information may be a hash value generated by the second server hashing the changed local data.
- the local data in the first server may also change.
- the first server After determining that the local data changes, the first server generates third verification information; the third verification information includes a third verification parameter; wherein the third verification parameter is that the first server determines, when the local data changes, according to the first server The changed local data is generated; the first server sends the third verification information to the second server; the first server receives the synchronization update request of the second server, and the synchronization update request is that the second server determines the third verification received
- the parameter is sent when the parameter is inconsistent with the locally stored fourth check parameter, where the fourth check parameter is generated by the second server according to the current local data.
- the second check parameter and the third check parameter are respectively a hash value generated by the first server hashing the changed local data
- the fourth check parameter is the second server to the current local data.
- the first server generates the second check parameter and the third check parameter
- the second server generates the fourth check parameter and saves the content in the local area, so as to compare with the received check parameter, so as to compare Determine if you need to synchronize local data.
- the second server when the second server determines that the received third verification parameter is inconsistent with the locally stored fourth verification parameter, the local data of the second service needs to be synchronized to the local data of the first server.
- the second server sends a synchronization update request to the first server; after receiving the synchronization update request sent by the second server, the first server sends the changed data to the second server, where the second server The data sent by the first server is updated to the local to implement real-time synchronization of the data in the second server with the data in the first server.
- the first server receives the first verification information sent by the second server, and the first server generates the third verification information for the locally changed data.
- the first verification information further includes a first timestamp, where the first timestamp is used to indicate a time when the local data of the second server changes;
- the server determines that the received first timestamp is earlier than the second timestamp stored locally, the first data is first synchronized to the data of the second server, and then the third verification information is sent to the second server;
- the second timestamp is used to indicate the moment when the first server local data changes.
- the first server determines that the received first timestamp is earlier than the second timestamp stored locally, it indicates that the local data of the first server changes during the process of generating the first verification information by the second server. For this case, in the embodiment of the present invention, the first server first synchronizes the local data and then sends the data.
- the first server determines that the received first timestamp is later than the locally stored second timestamp, the first server does not change the local data before receiving the first verification information. Therefore, the first server synchronizes the local data to the data in the second server.
- the first server determines that the received first timestamp is consistent with the locally stored second timestamp, it is determined whether the first check parameter in the received first check information is consistent with the locally stored second check parameter. If they are consistent, the data in the first server is the same as the data in the second server, and synchronization is not required; if not, the first server synchronizes the local data to the data in the second server.
- the first timestamp and the second timestamp can solve the file conflict problem when different data changes occur in different servers in the same file in a short time, and the first server and the second server can be made according to time.
- the order of the stamps is synchronized with the data. Specifically, if the first server determines that the received first timestamp is earlier than the second timestamp stored locally, determining a file identifier corresponding to the first timestamp and the second timestamp respectively; If the file identifier corresponding to the second timestamp is the same, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server.
- the data synchronization method is applied to the distributed system, the system includes at least two servers, and the first server receives the first verification information sent by the second server.
- the first verification information is generated by the second server according to the changed local data when the local server changes, that is, after the local data of the second server changes, the second server generates the first check according to the changed data.
- the information, wherein the first verification information includes a first verification parameter; the first server synchronizes the local data to the data of the second server when determining that the received first verification participates in the local storage of the second verification parameter is inconsistent.
- the first server compares the first check parameter in the first check message sent by the received second server with the second stored locally. If the verification parameters are inconsistent, the data in the first server is different from the data in the second server, and the first server synchronizes the local data to the data in the second server, thereby helping to improve the relationship between the first server and the second server.
- the real-time nature of data synchronization is not limited to:
- FIG. 3 exemplarily shows another data synchronization method provided by an embodiment of the present invention.
- the first server and the second server may be GitLab servers.
- the GitLab server has a web interface that provides real-time visibility into the data in the server.
- the distributed system includes at least two GitLab servers, and each GitLab server monitors local data in real time; any GitLab server generates first verification information when monitoring local data changes; wherein the first verification information includes the first Check the parameters and the first timestamp.
- the second server first monitors the change of the local data as an example; when the second server monitors that the local data changes, the second server generates the first verification information, and sends the first verification information to And the first server, so that the first server determines whether to update the local data according to the first check information sent by the second server and the second check information stored locally.
- This solution enables real-time synchronization of data between different servers.
- the data synchronization process is as follows.
- the data synchronization method includes:
- Step 301 After determining that the local data changes, the second server generates first verification information.
- the first verification information includes a first verification parameter and a first timestamp.
- the first verification parameter is determined by the second server to be local. When the data changes, it is generated according to the changed local data; the first timestamp is used to indicate the time when the second server local data changes;
- Step 302 The second server sends the first verification information to the first server.
- Step 303 The first server determines whether the first timestamp in the received first check information is consistent with the locally stored second timestamp. The second timestamp is used to indicate that the local data of the first server changes. If yes, step 304 is performed; if not, step 305 is performed, or step 306 is performed;
- Step 304 The first server determines whether the first check parameter in the received first check information is consistent with the locally stored second check parameter, where the second check parameter is the first server according to the current local data. If yes, go to step 307; if they are consistent, go to step 312;
- Step 305 If the first server determines that the first timestamp in the received first verification information is later than the locally stored second timestamp, the first server synchronizes the local data to the data of the second server; ;
- Step 306 If the first server determines that the first timestamp in the received first verification information is earlier than the locally stored second timestamp, the first server synchronizes the local data to the data of the second server; 308;
- Step 307 The first server synchronizes the local data to the data of the second server.
- Step 308 the first server generates third verification information after determining that the local data changes; the third verification information includes a third verification parameter; wherein the third verification parameter is that the first server determines that the local data changes. When generated based on the changed local data;
- Step 309 the first server sends the third verification information to the second server
- Step 310 The second server generates a first update request, and sends an update request to the first server, where the received third check parameter is inconsistent with the locally stored fourth check parameter, where the fourth check parameter is sent. Generated for the second server based on current local data;
- Step 311 The first server receives a synchronization update request of the second server, and sends corresponding data to the second server.
- the data synchronization method is applied to the distributed system, the system includes at least two servers, and the first server receives the first verification information sent by the second server.
- the first verification information is generated by the second server according to the changed local data when the local server changes, that is, after the local data of the second server changes, the second server generates the first check according to the changed data.
- the information, wherein the first verification information includes a first verification parameter; the first server synchronizes the local data to the data of the second server when determining that the received first verification participates in the local storage of the second verification parameter is inconsistent.
- the first server compares the first check parameter in the first check message sent by the received second server with the second stored locally. If the verification parameters are inconsistent, the data in the first server is different from the data in the second server, and the first server synchronizes the local data to the data in the second server, thereby helping to improve the relationship between the first server and the second server.
- the real-time nature of data synchronization is not limited to:
- FIG. 4 is a schematic structural diagram of a first server according to an embodiment of the present invention.
- the first server 400 includes a receiving unit 401 and a processing unit 402.
- the sending unit 403 is further included. among them:
- a receiving unit configured to receive first verification information sent by the second server; the first verification information includes a first verification parameter; and the first verification parameter is determined by the second server when determining that the local data changes, according to the change Generated by local data;
- a processing unit configured to synchronize local data to data of the second server when determining that the received first verification parameter is inconsistent with the locally stored second verification parameter; wherein the second verification parameter is the first server according to the first server The current local data is generated.
- the processing unit is further configured to: after determining that the local data changes, generate third verification information; the third verification information includes a third verification parameter; wherein the third verification parameter is the first server When it is determined that the local data changes, it is generated based on the changed local data;
- a sending unit configured to: send third verification information to the second server
- a receiving unit configured to: receive a synchronization update request of the second server, where the synchronization update request is sent by the second server, when determining that the received third verification parameter is inconsistent with the locally stored fourth verification parameter, where the fourth The verification parameters are generated by the second server based on the current local data.
- the first verification information further includes a first timestamp, where the first timestamp is used to indicate a time when the second server local data changes; and the processing unit is configured to: if it is determined that the received first timestamp is earlier than When the second timestamp is stored locally, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server; wherein the second timestamp is used to indicate that the first server local data is generated. The moment of change.
- the processing unit is configured to: if it is determined that the received first timestamp is earlier than the locally stored second timestamp, determine the file identifier corresponding to the first timestamp and the second timestamp respectively; If the file identifier corresponding to the timestamp and the second timestamp is the same, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server.
- the first verification parameter is generated by the second server hashing the changed local data; the second verification parameter and the third verification parameter are respectively performed by the first server on the changed local data.
- the fourth verification parameter is generated by the second server hashing the current local data.
- the data synchronization method is applied to the distributed system, the system includes at least two servers, and the first server receives the first verification information sent by the second server.
- the first verification information is generated by the second server according to the changed local data when the local server changes, that is, after the local data of the second server changes, the second server generates the first check according to the changed data.
- the information, wherein the first verification information includes a first verification parameter; the first server synchronizes the local data to the data of the second server when determining that the received first verification participates in the local storage of the second verification parameter is inconsistent.
- the first server compares the first check parameter in the first check message sent by the received second server with the second stored locally. If the verification parameters are inconsistent, the data in the first server is different from the data in the second server, and the first server synchronizes the local data to the data in the second server, thereby helping to improve the relationship between the first server and the second server.
- the real-time nature of data synchronization is not limited to:
- an embodiment of the present invention provides a distributed device for data synchronization. At least one processor; and a memory communicatively coupled to the at least one processor; the memory storing instructions executable by the at least one processor, the instructions being executed by the at least one processor such that The at least one processor is capable of performing the method of data synchronization in the above embodiments.
- FIG. 5 is a structure of a distributed device for data synchronization according to an embodiment of the present invention.
- the distributed device 500 for data synchronization includes: a transceiver 501, a processor 502, a memory 503, and a bus system 504;
- the memory 503 is used to store a program.
- the program can include program code, the program code including computer operating instructions.
- the memory 503 may be a random access memory (RAM) or a non-volatile memory, such as at least one disk storage. Only one memory is shown in the figure, of course, the memory can also be set to a plurality as needed. Memory 503 can also be a memory in processor 502.
- the memory 503 stores the following elements, executable modules or data structures, or a subset thereof, or an extended set thereof:
- Operation instructions include various operation instructions for implementing various operations.
- Operating system Includes a variety of system programs for implementing various basic services and handling hardware-based tasks.
- Processor 502 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method of data synchronization may be completed by an integrated logic circuit of hardware in the processor 502 or an instruction in the form of software.
- the processor 502 described above may be a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or discrete hardware. Component.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present invention may be directly implemented by the hardware decoding processor, or may be performed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
- the storage medium is located in the memory 503, and the processor 502 reads the information in the memory 503 and performs the following steps in conjunction with its hardware:
- the transceiver 501 is configured to receive first verification information sent by the second server, where the first verification information includes a first verification parameter, and the first verification parameter is that when the second server determines that the local data changes, Generated after the change of local data;
- the processor 502 is configured to synchronize local data to data of the second server when determining that the received first check parameter is inconsistent with the locally stored second check parameter; wherein the second check parameter is A server is generated based on current local data.
- the processor 502 is further configured to: after determining that the local data changes, generate third verification information; the third verification information includes a third verification parameter; wherein the third verification parameter is the first server When it is determined that the local data changes, it is generated based on the changed local data;
- the transceiver 501 is configured to: send third verification information to the second server; and receive a synchronization update request of the second server, where the synchronization update request is determined by the second server to determine the received third verification parameter and the local storage
- the fourth check parameter is sent when the check parameters are inconsistent, wherein the fourth check parameter is generated by the second server according to the current local data.
- the first check information further includes a first timestamp, where the first timestamp is used to indicate a time when the second server local data changes; the processor 502 is configured to: if it is determined that the received first timestamp is early When the second timestamp is stored locally, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server; wherein the second timestamp is used to indicate the first server local data. The moment of change.
- the processor 502 is configured to: if it is determined that the received first timestamp is earlier than the locally stored second timestamp, determine the file identifier corresponding to the first timestamp and the second timestamp respectively; If the file identifier corresponding to the first timestamp and the second timestamp is the same, the local data is first synchronized to the data of the second server, and then the third verification information is sent to the second server.
- the first verification parameter is generated by the second server hashing the changed local data; the second verification parameter and the third verification parameter are respectively performed by the first server on the changed local data.
- the fourth verification parameter is generated by the second server hashing the current local data.
- the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .
- the present invention also provides a non-transitory computer readable storage medium storing computer instructions for causing the computer to execute the data of any of the above The method of synchronization.
- the present invention also provides a computer program product comprising a computing program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions, when the program instructions are executed by a computer A method of causing the computer to perform the data synchronization described in any of the above.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
- the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了一种数据同步方法和分布式***、设备,以解决现有技术中服务器之间数据数据同步实时性差的问题。本发明实施例中,应用于分布式***,***包括至少两个服务器;至少两个服务器包括第一服务器和第二服务器;方法包括:第一服务器接收第二服务器发送的第一校验信息;第一校验信息包括第一校验参数;第一校验参数为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;第一服务器在确定接收到的第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据;第二校验参数为第一服务器根据当前的本地数据生成的。有助于提高第一服务器和第二服务器之间数据同步的实时性。
Description
本申请要求在2018年01月24日提交中华人民共和国知识产权局、申请号为201810072776.2,发明名称为“一种数据同步方法和分布式***”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明实施例涉及数据同步领域,尤其涉及一种数据同步方法和分布式***、设备。
随着技术的发展,数据共享已成为人们获得最新数据资源不可或缺的方式,数据同步是最主要的资源共享手段之一。数据同步方式有以下优点:高冗余,提高了数据抗灾容灾能力,远程数据本地化,减小了访问数据时网络开销,提高了数据访问效率;可以充分利用每个服务器的中央处理器(Central Processing Unit,简称CPU)和输入/输出端口(Input/Output,简称I/O),提高整体数据访问效率。
如果数据是不断动态变化的,则需要保证最新的数据也能进行实时同步。但是,现有技术中,数据同步的实时性较差。特别是目前备受青睐的用于仓库管理***的开源项目GitLab服务器的。GitLab服务器是使用Git作为数据管理工具,并在此基础上搭建起来的环球信息网(World Wide Web,简称WEB)(又称万维网)服务;GitLab服务器相比于其他的服务器的优势在于有WEB界面,可以便于管理者看到数据的整体情况。但是,GitLab服务器不能实现数据实时同步,需要管理者在特定的时间手动进行GitLab服务器之间数据的同步。由于GitLab服务器只能在特定的时间进行数据同步,因此,会造成服务器之间 数据同步的实时性较差。
发明内容
本发明实施例提供一种数据同步方法和分布式***、设备,用以解决现有技术中服务器之间数据同步实时性差的问题。
第一方面,本发明实施例提供一种数据同步方法,包括:应用于分布式***,所述***包括至少两个服务器;所述至少两个服务器包括第一服务器和第二服务器;所述方法包括:所述第一服务器接收所述第二服务器发送的第一校验信息;所述第一校验信息包括第一校验参数;所述第一校验参数为所述第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;所述第一服务器在确定接收到的所述第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为所述第二服务器的数据;其中,所述第二校验参数为所述第一服务器根据当前的本地数据生成的。
可选地,所述方法还包括:所述第一服务器在确定本地数据发生变化后,生成第三校验信息;所述第三校验信息包括第三校验参数;其中,所述第三校验参数为所述第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;所述第一服务器向所述第二服务器发送所述第三校验信息;所述第一服务器接收所述第二服务器的同步更新请求,所述同步更新请求是所述第二服务器在确定接收到的所述第三校验参数与本地存储的第四校验参数不一致时发送的,其中,所述第四校验参数为所述第二服务器根据当前的本地数据生成的。
可选地,所述第一校验信息还包括第一时间戳,所述第一时间戳用于指示所述第二服务器本地数据发生变化的时刻;若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器;其中,所述第二时间戳用于指示所述第一服务器本地数据发生变化的时刻。
可选地,所述若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器,包括:若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,分别确定所述第一时间戳和所述第二时间戳对应的文件标识;若所述第一服务器在确定所述第一时间戳和所述第二时间戳对应的文件标识相同,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器。
可选地,所述第一校验参数为所述第二服务器对变化后的本地数据进行哈希运算生成的;所述第二校验参数和所述第三校验参数分别为所述第一服务器对变化后的本地数据进行哈希运算生成的;所述第四校验参数为所述第二服务器对当前的本地数据进行哈希运算生成的。
第二方面,本发明实施例提供一种数据同步的分布式***,所述***包括至少两个服务器;所述至少两个服务器包括第一服务器和第二服务器;其中,所述第一服务器包括:接收单元,用于接收所述第二服务器发送的第一校验信息;所述第一校验信息包括第一校验参数;所述第一校验参数为所述第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;处理单元,用于在确定接收到的所述第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为所述第二服务器的数据;其中,所述第二校验参数为所述第一服务器根据当前的本地数据生成的。
可选地,所述处理单元,还用于:在确定本地数据发生变化后,生成第三校验信息;所述第三校验信息包括第三校验参数;其中,所述第三校验参数为所述第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
还包括发送单元,用于:向所述第二服务器发送所述第三校验信息;
所述接收单元,用于:接收所述第二服务器的同步更新请求,所述同步更新请求是所述第二服务器在确定接收到的所述第三校验参数与本地存储的第四校验参数不一致时发送的,其中,所述第四校验参数为所述第二服务器 根据当前的本地数据生成的。
可选地,所述第一校验信息还包括第一时间戳,所述第一时间戳用于指示所述第二服务器本地数据发生变化的时刻;所述处理单元,用于:若确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器;其中,所述第二时间戳用于指示所述第一服务器本地数据发生变化的时刻。
可选地,所述处理单元,用于:若确定接收到的所述第一时间戳早于本地存储的第二时间戳时,分别确定所述第一时间戳和所述第二时间戳对应的文件标识;若确定所述第一时间戳和所述第二时间戳对应的文件标识相同,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器。
可选地,所述第一校验参数为所述第二服务器对变化后的本地数据进行哈希运算生成的;所述第二校验参数和所述第三校验参数分别为所述第一服务器对变化后的本地数据进行哈希运算生成的;所述第四校验参数为所述第二服务器对当前的本地数据进行哈希运算生成的。
第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行第一方面的数据同步的方法。
第四方面,本发明实施例提供一种计算机设备,包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面的数据同步的方法。
第五方面,本发明实施例提供了一种数据同步的分布式设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面的 数据同步的方法。
由于本发明实施例中,数据同步方法应用于分布式***,所述***包括至少两个服务器,第一服务器接收所述第二服务器发送的第一校验信息,所述第一校验信息为所述第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成,即第二服务器的本地数据发生变化后,第二服务器根据变化后的数据生成第一校验信息,其中第一校验信息包括第一校验参数;所述第一服务器在确定接收到的第一校验参与本地存储的第二校验参数不一致时,将本地数据同步为所述第二服务器的数据。可见,当第二服务器的数据发生变化后,会生成第一校验信息;第一服务器通过比较接收到的第二服务器发送的第一校验信中第一校验参数与本地存储的第二校验参数不一致时,说明第一服务器中数据与所述第二服务器中数据不同,则第一服务器将本地数据同步为第二服务器中数据,如此,有助于提高第一服务器和所述第二服务器之间数据同步的实时性。
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1为本发明实施例提供的一种分布式***的架构示意图;
图2为本发明实施例提供的一种数据同步方法的方法流程示意图;
图3为本发明实施例提供的另一种数据同步方法的方法流程示意图;
图4为本发明实施例提供的第一服务器的结构示意图;
图5为本发明实施例提供的一种数据同步的分布式设备的结构示意图。
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施例并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性 的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
图1示出了应用本发明实施例的一种分布式***的架构示意图。如图1所示,该***架构可以包括至少两个服务器,本发明实施例图1中以第一服务器101和第二服务器102为例;第一服务器101和第二服务器102上存储有相同的数据;且第一服务器101和第二服务器102上的数据需要实时保持相同。本发明实施例中,第二服务器102为监控到本地数据先发生变化的服务器,第一服务器101为与第二服务器102关联的服务器。第一服务器101和第二服务器102之间可通过无线或者有线的方式进行连接。该***可以是分布式开源软件代码仓库***,第一服务器101和第二服务器102可以是GitLab服务器。
第一服务器101和第二服务器102可以是用于与终端设备进行通信的网络设备。第一服务器101和第二服务器102上均安装有rsync(即linux***下的数据镜像备份工具),以实现数据的远程同步。第一次同步时rsync会复制全部内容,但是在下一次只传输修改过的数据,rsync在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。第一服务器101和第二服务器102上均部署有实时监控脚本和实时同步脚本;实时监控脚本用于监控第一服务器101和第二服务器102上数据是否发生变化;实时同步脚本用于对第一服务器101和第二服务器102上的数据进行实时同步。
基于图1所示的***架构,图2示例性示出了本发明实施例提供的一种数
据同步方法的方法流程示意图,如图2所示,该数据同步方法包括以下步骤:
步骤201,第一服务器接收第二服务器发送的第一校验信息;第一校验信息包括第一校验参数;第一校验参数为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
步骤202,第一服务器在确定接收到的第一校验参数与本地存储的第二校 验参数不一致时,将本地数据同步为第二服务器的数据;其中,第二校验参数为第一服务器根据当前的本地数据生成的。
由于本发明实施例中,数据同步方法应用于分布式***,***包括至少两个服务器,第一服务器接收第二服务器发送的第一校验信息,第一校验信息为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成,即第二服务器的本地数据发生变化后,第二服务器根据变化后的数据生成第一校验信息,其中第一校验信息包括第一校验参数;第一服务器在确定接收到的第一校验参与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据。可见,当第二服务器的数据发生变化后,会生成第一校验信息;第一服务器通过比较接收到的第二服务器发送的第一校验信中第一校验参数与本地存储的第二校验参数不一致时,说明第一服务器中数据与第二服务器中数据不同,则第一服务器将本地数据同步为第二服务器中数据,如此,有助于提高第一服务器和第二服务器之间数据同步的实时性。
需要说明的是,第一服务器和第二服务器上部署的实时监控脚本实时监控第一服务器中的数据和第二服务器中的数据。在步骤201中,当第二服务器上的实时监控脚本监控到第二服务器中的数据发生变化时,第二服务器生成第一校验信息,并将第一校验信息保存在第二服务器的本地。其中,第一校验信息包括第一校验参数。第一校验信息中的第一校验参数可以是第二服务器对变化后的本地数据进行哈希运算生成的哈希值。
本发明实施例中,在第二服务器生成校验信息的过程,第一服务器中的本地数据可能也发生了变化。第一服务器在确定本地数据发生变化后,生成第三校验信息;第三校验信息包括第三校验参数;其中,第三校验参数为第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;第一服务器向第二服务器发送第三校验信息;第一服务器接收第二服务器的同步更新请求,同步更新请求是第二服务器在确定接收到的第三校验参数与本地存储的第四校验参数不一致时发送的,其中,第四校验参数为第二服务器根据当前的本地数据生成的。
可选地,第二校验参数和第三校验参数分别为第一服务器对变化后的本地数据进行哈希运算生成的哈希值;第四校验参数为第二服务器对当前的本地数据进行哈希运算生成的哈希值。
可选地,第一服务器生成第二校验参数和第三校验参数、第二服务器生成第四校验参数后均本保存在各自的本地,便于和接收到的校验参数进行比较,以确定是否需要对本地数据进行同步。
本发明实施例中,当第二服务器确定接收到的第三校验参数与本地存储的第四校验参数不一致时,需要将第二服务的本地数据同步为第一服务器的本地数据。可选地,第二服务器向第一服务器发送同步更新请求;第一服务器在接收到第二服务器发送的同步更新请求后,第一服务器将变化后的数据发送至第二服务器,第二服务器将第一服务器发送的数据更新至本地,以实现第二服务器中的数据与第一服务器中数据的实时同步。
本发明实施例中,第一服务器接收到了第二服务器发送的第一校验信息,且第一服务器对本地变化后的数据生成了第三校验信息。为了防止出现重复同步数据或者漏同步数据的问题,本发明实施例中,第一校验信息还包括第一时间戳,第一时间戳用于指示第二服务器本地数据发生变化的时刻;若第一服务器在确定接收到的第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器;其中,第二时间戳用于指示第一服务器本地数据发生变化的时刻。
若第一服务器确定接收到的第一时间戳早于本地存储的第二时间戳,说明第二服务器在生成第一校验信息的过程中,第一服务器的本地数据发生了变化。对于此情况,本发明实施例中,第一服务器先对本地数据进行同步后发送。
若第一服务器确定接收到的第一时间戳晚于本地存储的第二时间戳,说明第一服务器在接收到第一校验信息之前,本地数据没有发生变化。因此,第一服务器将本地数据同步为第二服务器中的数据。
若第一服务器确定接收到的第一时间戳与本地存储的第二时间戳一致, 则确定接收到的第一校验信息中第一校验参数与本地存储的第二校验参数是否一致。若一致,则说明第一服务器中的数据和第二服务器中的数据相同,不需要进行同步;若不一致,则第一服务器将本地数据同步为第二服务器中的数据。
本发明实施例中,第一时间戳和第二时间戳可解决同一文件在较短的时间内不同服务器中发生不同数据的变化时文件的冲突问题,可使得第一服务器和第二服务器按照时间戳的先后顺序进行数据的同步。具体地,若第一服务器在确定接收到的第一时间戳早于本地存储的第二时间戳时,分别确定第一时间戳和第二时间戳对应的文件标识;若确定第一时间戳和第二时间戳对应的文件标识相同,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器。
从上述内容可以看出:本发明实施例中,由于本发明实施例中,数据同步方法应用于分布式***,***包括至少两个服务器,第一服务器接收第二服务器发送的第一校验信息,第一校验信息为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成,即第二服务器的本地数据发生变化后,第二服务器根据变化后的数据生成第一校验信息,其中第一校验信息包括第一校验参数;第一服务器在确定接收到的第一校验参与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据。可见,当第二服务器的数据发生变化后,会生成第一校验信息;第一服务器通过比较接收到的第二服务器发送的第一校验信中第一校验参数与本地存储的第二校验参数不一致时,说明第一服务器中数据与第二服务器中数据不同,则第一服务器将本地数据同步为第二服务器中数据,如此,有助于提高第一服务器和第二服务器之间数据同步的实时性。
为了更清楚的介绍上述方法流程,图3示例性示出了本发明实施例提供的另一种数据同步方法。该实施例中第一服务器和第二服务器可为GitLab服务器。GitLab服务器有WEB界面,可以实时了解服务器中数据的情况。分布式***中包括至少两个GitLab服务器,每个GitLab服务器实时监控本地数据; 任一GitLab服务器在监控到本地数据发生变化时,生成第一校验信息;其中,第一校验信息包括第一校验参数和第一时间戳。本发明实施例中以第二服务器先监控到本地数据发生变化为例;在第二服务器监控到本地数据发生变化时,第二服务器生成第一校验信息,并将第一校验信息发送至第一服务器,以便于第一服务器根据第二服务器发送的第一校验信息和本地存储的第二校验信息确定是否更新本地数据。该方案可以实现不同服务器之间数据的实时同步。具体地数据同步过程见下述内容。
如图3所示,该数据同步方法包括:
步骤301,第二服务器在确定本地数据发生变化后,生成第一校验信息;第一校验信息包括第一校验参数和第一时间戳;第一校验参数为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;第一时间戳用于指示第二服务器本地数据发生变化的时刻;
步骤302,第二服务器向第一服务器发送第一校验信息;
步骤303,第一服务器确定接收到的第一校验信息中的第一时间戳与本地存储的第二时间戳是否一致;其中,第二时间戳用于指示第一服务器本地数据发生变化的时刻;若一致,则执行步骤304;若不一致,则执行步骤305,或者执行步骤306;
步骤304,第一服务器确定接收到的第一校验信息中的第一校验参数与本地存储的第二校验参数是否一致;其中,第二校验参数为第一服务器根据当前的本地数据生成的;若不一致,则执行步骤307;若一致,则执行步骤312;
步骤305,若第一服务器确定接收到的第一校验信息中的第一时间戳晚于本地存储的第二时间戳,第一服务器将本地数据同步为第二服务器的数据;之后执行步骤312;
步骤306,若第一服务器确定接收到的第一校验信息中的第一时间戳早于本地存储的第二时间戳,则第一服务器将本地数据同步为第二服务器的数据;之后执行步骤308;
步骤307,第一服务器将本地数据同步为第二服务器的数据;
步骤308,第一服务器在确定本地数据发生变化后,生成第三校验信息;第三校验信息包括第三校验参数;其中,第三校验参数为第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
步骤309,第一服务器将第三校验信息发送至第二服务器;
步骤310,第二服务器在确定接收到的第三校验参数与本地存储的第四校验参数不一致时,生成第一更新请求,并向第一服务器发送更新请求;其中,第四校验参数为第二服务器根据当前的本地数据生成的;
步骤311,第一服务器接收第二服务器的同步更新请求,并将相应的数据发送至第二服务器;
步骤312,流程结束。
从上述内容可以看出:本发明实施例中,由于本发明实施例中,数据同步方法应用于分布式***,***包括至少两个服务器,第一服务器接收第二服务器发送的第一校验信息,第一校验信息为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成,即第二服务器的本地数据发生变化后,第二服务器根据变化后的数据生成第一校验信息,其中第一校验信息包括第一校验参数;第一服务器在确定接收到的第一校验参与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据。可见,当第二服务器的数据发生变化后,会生成第一校验信息;第一服务器通过比较接收到的第二服务器发送的第一校验信中第一校验参数与本地存储的第二校验参数不一致时,说明第一服务器中数据与第二服务器中数据不同,则第一服务器将本地数据同步为第二服务器中数据,如此,有助于提高第一服务器和第二服务器之间数据同步的实时性。
基于相同的技术构思,本发明实施例还提供一种第一服务器,该第一服务器为数据同步的分布式***中的任一服务器;该第一服务器可执行上述方法实施例。图4为本发明实施例提供了一种第一服务器的结构示意图,如图4所示,该第一服务器400包括接收单元401、处理单元402;可选地,还包括发送单元403。其中:
接收单元,用于接收第二服务器发送的第一校验信息;第一校验信息包括第一校验参数;第一校验参数为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
处理单元,用于在确定接收到的第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据;其中,第二校验参数为第一服务器根据当前的本地数据生成的。
可选地,处理单元,还用于:在确定本地数据发生变化后,生成第三校验信息;第三校验信息包括第三校验参数;其中,第三校验参数为第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
还包括发送单元,用于:向第二服务器发送第三校验信息;
接收单元,用于:接收第二服务器的同步更新请求,同步更新请求是第二服务器在确定接收到的第三校验参数与本地存储的第四校验参数不一致时发送的,其中,第四校验参数为第二服务器根据当前的本地数据生成的。
可选地,第一校验信息还包括第一时间戳,第一时间戳用于指示第二服务器本地数据发生变化的时刻;处理单元,用于:若确定接收到的第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器;其中,第二时间戳用于指示第一服务器本地数据发生变化的时刻。
可选地,处理单元,用于:若确定接收到的第一时间戳早于本地存储的第二时间戳时,分别确定第一时间戳和第二时间戳对应的文件标识;若确定第一时间戳和第二时间戳对应的文件标识相同,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器。
可选地,第一校验参数为第二服务器对变化后的本地数据进行哈希运算生成的;第二校验参数和第三校验参数分别为第一服务器对变化后的本地数据进行哈希运算生成的;第四校验参数为第二服务器对当前的本地数据进行哈希运算生成的。
从上述内容可以看出:本发明实施例中,由于本发明实施例中,数据同 步方法应用于分布式***,***包括至少两个服务器,第一服务器接收第二服务器发送的第一校验信息,第一校验信息为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成,即第二服务器的本地数据发生变化后,第二服务器根据变化后的数据生成第一校验信息,其中第一校验信息包括第一校验参数;第一服务器在确定接收到的第一校验参与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据。可见,当第二服务器的数据发生变化后,会生成第一校验信息;第一服务器通过比较接收到的第二服务器发送的第一校验信中第一校验参数与本地存储的第二校验参数不一致时,说明第一服务器中数据与第二服务器中数据不同,则第一服务器将本地数据同步为第二服务器中数据,如此,有助于提高第一服务器和第二服务器之间数据同步的实时性。
基于相同的技术构思,本发明实施例提供一种数据同步的分布式设备。至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述实施例中的数据同步的方法。
以一个处理器为例,图5为本发明实施例提供的数据同步的分布式设备的结构,该数据同步的分布式设备500包括:收发器501、处理器502、存储器503和总线***504;
其中,存储器503,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器503可能为随机存取存储器(random access memory,简称RAM),也可能为非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。图中仅示出了一个存储器,当然,存储器也可以根据需要,设置为多个。存储器503也可以是处理器502中的存储器。
存储器503存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作***:包括各种***程序,用于实现各种基础业务以及处理基于硬件的任务。
上述本发明实施例数据同步的方法可以应用于处理器502中,或者说由处理器502实现。处理器502可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述数据同步的方法的各步骤可以通过处理器502中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器502可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器503,处理器502读取存储器503中的信息,结合其硬件执行以下步骤:
所述收发器501,用于接收第二服务器发送的第一校验信息;第一校验信息包括第一校验参数;第一校验参数为第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
所述处理器502,用于在确定接收到的第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为第二服务器的数据;其中,第二校验参数为第一服务器根据当前的本地数据生成的。
可选地,处理器502,还用于:在确定本地数据发生变化后,生成第三校验信息;第三校验信息包括第三校验参数;其中,第三校验参数为第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;
收发器501,用于:向第二服务器发送第三校验信息;以及接收第二服务器的同步更新请求,同步更新请求是第二服务器在确定接收到的第三校验参数与本地存储的第四校验参数不一致时发送的,其中,第四校验参数为第二 服务器根据当前的本地数据生成的。
可选地,第一校验信息还包括第一时间戳,第一时间戳用于指示第二服务器本地数据发生变化的时刻;处理器502,用于:若确定接收到的第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器;其中,第二时间戳用于指示第一服务器本地数据发生变化的时刻。
可选地,处理器502,用于:若确定接收到的第一时间戳早于本地存储的第二时间戳时,分别确定第一时间戳和第二时间戳对应的文件标识;若确定第一时间戳和第二时间戳对应的文件标识相同,则先将本地数据同步为第二服务器的数据,后将第三校验信息发送至第二服务器。
可选地,第一校验参数为第二服务器对变化后的本地数据进行哈希运算生成的;第二校验参数和第三校验参数分别为第一服务器对变化后的本地数据进行哈希运算生成的;第四校验参数为第二服务器对当前的本地数据进行哈希运算生成的。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另外,本发明还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述任一项所述的数据同步的方法。
另外,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,所述计算机程序包括程序指 令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项所述的数据同步的方法。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (13)
- 一种数据同步方法,其特征在于,应用于分布式***,所述***包括至少两个服务器;所述至少两个服务器包括第一服务器和第二服务器;所述方法包括:所述第一服务器接收所述第二服务器发送的第一校验信息;所述第一校验信息包括第一校验参数;所述第一校验参数为所述第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;所述第一服务器在确定接收到的所述第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为所述第二服务器的数据;其中,所述第二校验参数为所述第一服务器根据当前的本地数据生成的。
- 如权利要求1所述的方法,其特征在于,还包括:所述第一服务器在确定本地数据发生变化后,生成第三校验信息;所述第三校验信息包括第三校验参数;其中,所述第三校验参数为所述第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;所述第一服务器向所述第二服务器发送所述第三校验信息;所述第一服务器接收所述第二服务器的同步更新请求,所述同步更新请求是所述第二服务器在确定接收到的所述第三校验参数与本地存储的第四校验参数不一致时发送的,其中,所述第四校验参数为所述第二服务器根据当前的本地数据生成的。
- 如权利要求2所述的方法,其特征在于,所述第一校验信息还包括第一时间戳,所述第一时间戳用于指示所述第二服务器本地数据发生变化的时刻;若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器;其中,所述第二时间戳用于指示所述第一服务器本地数据发生变化的时刻。
- 如权利要求3所述的方法,其特征在于,所述若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器,包括:若所述第一服务器在确定接收到的所述第一时间戳早于本地存储的第二时间戳时,分别确定所述第一时间戳和所述第二时间戳对应的文件标识;若所述第一服务器在确定所述第一时间戳和所述第二时间戳对应的文件标识相同,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器。
- 如权利要求2所述的方法,其特征在于,所述第一校验参数为所述第二服务器对变化后的本地数据进行哈希运算生成的;所述第二校验参数和所述第三校验参数分别为所述第一服务器对变化后的本地数据进行哈希运算生成的;所述第四校验参数为所述第二服务器对当前的本地数据进行哈希运算生成的。
- 一种数据同步的分布式***,其特征在于,所述***包括至少两个服务器;所述至少两个服务器包括第一服务器和第二服务器;其中,所述第一服务器包括:接收单元,用于接收所述第二服务器发送的第一校验信息;所述第一校验信息包括第一校验参数;所述第一校验参数为所述第二服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;处理单元,用于在确定接收到的所述第一校验参数与本地存储的第二校验参数不一致时,将本地数据同步为所述第二服务器的数据;其中,所述第二校验参数为所述第一服务器根据当前的本地数据生成的。
- 如权利要求6所述的分布式***,其特征在于,所述处理单元,还用于:在确定本地数据发生变化后,生成第三校验信息;所述第三校验信息包 括第三校验参数;其中,所述第三校验参数为所述第一服务器在确定本地数据发生变化时,根据变化后的本地数据生成的;还包括发送单元,用于:向所述第二服务器发送所述第三校验信息;所述接收单元,用于:接收所述第二服务器的同步更新请求,所述同步更新请求是所述第二服务器在确定接收到的所述第三校验参数与本地存储的第四校验参数不一致时发送的,其中,所述第四校验参数为所述第二服务器根据当前的本地数据生成的。
- 如权利要求7所述的分布式***,其特征在于,所述第一校验信息还包括第一时间戳,所述第一时间戳用于指示所述第二服务器本地数据发生变化的时刻;所述处理单元,用于:若确定接收到的所述第一时间戳早于本地存储的第二时间戳时,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器;其中,所述第二时间戳用于指示所述第一服务器本地数据发生变化的时刻。
- 如权利要求8所述的分布式***,其特征在于,所述处理单元,用于:若确定接收到的所述第一时间戳早于本地存储的第二时间戳时,分别确定所述第一时间戳和所述第二时间戳对应的文件标识;若确定所述第一时间戳和所述第二时间戳对应的文件标识相同,则先将本地数据同步为所述第二服务器的数据,后将所述第三校验信息发送至所述第二服务器。
- 如权利要求7所述的分布式***,其特征在于,所述第一校验参数为所述第二服务器对变化后的本地数据进行哈希运算生成的;所述第二校验参数和所述第三校验参数分别为所述第一服务器对变化后的本地数据进行哈希运算生成的;所述第四校验参数为所述第二服务器对当前的本地数据进行哈希运算生 成的。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行权利要求1至5任一权利要求所述的方法。
- 一种计算机设备,其特征在于,包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1至5任一权利要求所述的方法。
- 一种数据同步的分布式设备,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至5任一所述支付方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810072776.2A CN108337303A (zh) | 2018-01-24 | 2018-01-24 | 一种数据同步方法和分布式*** |
CN201810072776.2 | 2018-01-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019144761A1 true WO2019144761A1 (zh) | 2019-08-01 |
Family
ID=62925871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/124451 WO2019144761A1 (zh) | 2018-01-24 | 2018-12-27 | 一种数据同步方法和分布式***、设备 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN108337303A (zh) |
TW (1) | TWI751402B (zh) |
WO (1) | WO2019144761A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704226A (zh) * | 2019-09-19 | 2020-01-17 | 贝壳技术有限公司 | 数据校验方法、装置及存储介质 |
CN111245548A (zh) * | 2020-01-14 | 2020-06-05 | 平安国际智慧城市科技股份有限公司 | 基于时间戳的数据同步方法、装置和计算机设备 |
CN112487470A (zh) * | 2019-09-11 | 2021-03-12 | 浙江宇视科技有限公司 | 信息校验方法、装置、终端设备和计算机可读存储介质 |
CN113312367A (zh) * | 2021-06-25 | 2021-08-27 | 上海致景信息科技有限公司 | 产量效率的重算方法、装置、存储介质及处理器 |
CN113986243A (zh) * | 2021-10-26 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 资源同步方法以及相关设备 |
CN114697346A (zh) * | 2022-04-22 | 2022-07-01 | 厦门飞鱼科技有限公司 | 服务器节点之间数据同步的方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108337303A (zh) * | 2018-01-24 | 2018-07-27 | ***股份有限公司 | 一种数据同步方法和分布式*** |
CN109146417A (zh) * | 2018-08-16 | 2019-01-04 | 安徽云才信息技术有限公司 | 一种基于git的单业务线多项目并行的项目管理方法 |
CN109362236A (zh) * | 2018-08-31 | 2019-02-19 | 深圳大学 | 基于双云端的数据安全存储方法、装置、设备及存储介质 |
CN109525654B (zh) * | 2018-11-02 | 2021-06-04 | 北京奇艺世纪科技有限公司 | 一种数据获取、发送方法、装置、客户端及服务器 |
CN111326035B (zh) * | 2018-12-13 | 2022-11-22 | 腾讯科技(深圳)有限公司 | 任务同步方法、远程教学*** |
CN110602168B (zh) * | 2019-08-13 | 2022-03-01 | 平安科技(深圳)有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN111352749B (zh) * | 2020-03-02 | 2021-02-26 | 珠海必要工业科技股份有限公司 | 一种数据同步方法、装置、设备及存储介质 |
CN114648820A (zh) * | 2020-12-17 | 2022-06-21 | 浙江宇视科技有限公司 | 信息同步方法、装置、电子设备及介质 |
CN113127082A (zh) * | 2021-04-23 | 2021-07-16 | 中国工商银行股份有限公司 | 数据处理方法、服务器、服务节点、***和存储介质 |
CN114553895B (zh) * | 2022-04-24 | 2022-07-22 | 浙江中控技术股份有限公司 | 一种数据同步方法、***、存储介质及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043318A (zh) * | 2007-03-19 | 2007-09-26 | 华为技术有限公司 | 前后台数据同步的方法及用于前后台数据同步的装置 |
US20130073524A1 (en) * | 2010-10-18 | 2013-03-21 | Michael Bentkofsky | Database synchronization and validation |
CN103731452A (zh) * | 2012-10-15 | 2014-04-16 | 鸿富锦精密工业(深圳)有限公司 | 文件同步***及方法 |
CN103997525A (zh) * | 2014-05-21 | 2014-08-20 | 北京紫光天禾软件***技术有限公司 | 一种分布式数据同步方法及*** |
CN104092740A (zh) * | 2014-06-25 | 2014-10-08 | 腾讯科技(深圳)有限公司 | 应用数据同步方法和装置 |
CN105763644A (zh) * | 2016-04-21 | 2016-07-13 | 广州杰赛科技股份有限公司 | 云盘文件同步更新方法与装置 |
CN106254094A (zh) * | 2016-07-19 | 2016-12-21 | ***股份有限公司 | 一种数据同步方法及*** |
CN108337303A (zh) * | 2018-01-24 | 2018-07-27 | ***股份有限公司 | 一种数据同步方法和分布式*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862346A (en) * | 1996-06-28 | 1999-01-19 | Metadigm | Distributed group activity data network system and corresponding method |
CN1249597C (zh) * | 2002-09-03 | 2006-04-05 | 鸿富锦精密工业(深圳)有限公司 | 分布式文件同步***及方法 |
CN104243508A (zh) * | 2013-06-07 | 2014-12-24 | 富鸿康科技(深圳)有限公司 | 服务器、客户端及文件同步方法 |
CN106375362A (zh) * | 2015-07-24 | 2017-02-01 | 广州市百果园信息技术有限公司 | 分布式服务器的缓存同步方法及*** |
CN106980625B (zh) * | 2016-01-18 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置及*** |
TWI569159B (zh) * | 2016-05-31 | 2017-02-01 | 威聯通科技股份有限公司 | 避免多餘的資料複製的資料同步方法及裝置 |
CN106330465B (zh) * | 2016-11-21 | 2020-10-13 | 航天信息股份有限公司 | 一种分布式时间戳的处理方法、服务器及*** |
CN107123045A (zh) * | 2017-04-14 | 2017-09-01 | 北京金融资产交易所有限公司 | 基于债券交易的数据同步***及其数据同步方法 |
-
2018
- 2018-01-24 CN CN201810072776.2A patent/CN108337303A/zh active Pending
- 2018-12-27 WO PCT/CN2018/124451 patent/WO2019144761A1/zh active Application Filing
-
2019
- 2019-01-23 TW TW108102487A patent/TWI751402B/zh active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043318A (zh) * | 2007-03-19 | 2007-09-26 | 华为技术有限公司 | 前后台数据同步的方法及用于前后台数据同步的装置 |
US20130073524A1 (en) * | 2010-10-18 | 2013-03-21 | Michael Bentkofsky | Database synchronization and validation |
CN103731452A (zh) * | 2012-10-15 | 2014-04-16 | 鸿富锦精密工业(深圳)有限公司 | 文件同步***及方法 |
CN103997525A (zh) * | 2014-05-21 | 2014-08-20 | 北京紫光天禾软件***技术有限公司 | 一种分布式数据同步方法及*** |
CN104092740A (zh) * | 2014-06-25 | 2014-10-08 | 腾讯科技(深圳)有限公司 | 应用数据同步方法和装置 |
CN105763644A (zh) * | 2016-04-21 | 2016-07-13 | 广州杰赛科技股份有限公司 | 云盘文件同步更新方法与装置 |
CN106254094A (zh) * | 2016-07-19 | 2016-12-21 | ***股份有限公司 | 一种数据同步方法及*** |
CN108337303A (zh) * | 2018-01-24 | 2018-07-27 | ***股份有限公司 | 一种数据同步方法和分布式*** |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112487470A (zh) * | 2019-09-11 | 2021-03-12 | 浙江宇视科技有限公司 | 信息校验方法、装置、终端设备和计算机可读存储介质 |
CN112487470B (zh) * | 2019-09-11 | 2024-04-05 | 浙江宇视科技有限公司 | 信息校验方法、装置、终端设备和计算机可读存储介质 |
CN110704226A (zh) * | 2019-09-19 | 2020-01-17 | 贝壳技术有限公司 | 数据校验方法、装置及存储介质 |
CN110704226B (zh) * | 2019-09-19 | 2023-02-17 | 贝壳技术有限公司 | 数据校验方法、装置及存储介质 |
CN111245548A (zh) * | 2020-01-14 | 2020-06-05 | 平安国际智慧城市科技股份有限公司 | 基于时间戳的数据同步方法、装置和计算机设备 |
CN113312367A (zh) * | 2021-06-25 | 2021-08-27 | 上海致景信息科技有限公司 | 产量效率的重算方法、装置、存储介质及处理器 |
CN113986243A (zh) * | 2021-10-26 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 资源同步方法以及相关设备 |
CN113986243B (zh) * | 2021-10-26 | 2023-06-13 | 腾讯科技(深圳)有限公司 | 资源同步方法以及相关设备 |
CN114697346A (zh) * | 2022-04-22 | 2022-07-01 | 厦门飞鱼科技有限公司 | 服务器节点之间数据同步的方法 |
CN114697346B (zh) * | 2022-04-22 | 2024-06-11 | 厦门飞鱼科技有限公司 | 服务器节点之间数据同步的方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201933135A (zh) | 2019-08-16 |
CN108337303A (zh) | 2018-07-27 |
TWI751402B (zh) | 2022-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019144761A1 (zh) | 一种数据同步方法和分布式***、设备 | |
US11599350B2 (en) | Blockchain computer data distribution | |
US11501533B2 (en) | Media authentication using distributed ledger | |
US10606738B2 (en) | Application testing on a blockchain | |
US20180240114A1 (en) | Transaction verification in a consensus network | |
US10719260B2 (en) | Techniques for storing and retrieving data from a computing device | |
EP2834759B1 (en) | Telemetry system for a cloud synchronization system | |
CN109522363B (zh) | 基于区块链的云平台同步方法、***、设备及存储介质 | |
WO2017162032A1 (zh) | 执行数据恢复操作的方法及装置 | |
WO2019201039A1 (zh) | 一种更新应用程序的方法、***及应用服务器 | |
US10069942B2 (en) | Method and apparatus for changing configurations | |
CN110597918B (zh) | 一种账户管理方法、装置及计算机可读存储介质 | |
US9589153B2 (en) | Securing integrity and consistency of a cloud storage service with efficient client operations | |
US20210019418A1 (en) | Technique for authentication and prerequisite checks for software updates | |
US20210097476A1 (en) | Container Management Method, Apparatus, and Device | |
CN112965945A (zh) | 数据存储方法、装置、电子设备及计算机可读介质 | |
CN111338834B (zh) | 数据存储方法和装置 | |
CN114491656A (zh) | 区块链网络中的方法和设备 | |
CN110442601B (zh) | 一种Openstack镜像数据并行加速的方法和装置 | |
CN113610527B (zh) | 联盟链的交易方法、装置、***、终端设备及存储介质 | |
CN113032477B (zh) | 基于gtid的长距离数据同步方法、装置及计算设备 | |
US20200348927A1 (en) | Data file partition and replication | |
US10769586B2 (en) | Implementation of rolling key to identify systems inventories | |
US9880904B2 (en) | Supporting multiple backup applications using a single change tracker | |
US11537463B1 (en) | Data integrity verification optimized at unit level |
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: 18902121 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18902121 Country of ref document: EP Kind code of ref document: A1 |