Data replication topology method and device and related product
By building a shared information table and a multi-node selection strategy, the problems of excessive synchronization pressure on the master node and insufficient robustness of the disaster recovery system are solved. The slave node can directly pull data from the synchronized node, reducing the pressure on the master node and improving system stability.
Patent Information
- Application Number
- CN202510779511.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-11
- Publication Date
- 2025-09-16
AI Technical Summary
In the prior art, the master node is under too much pressure to be synchronized, and the robustness of the disaster recovery system is insufficient, which easily leads to synchronization failure, especially when a key node fails.
By building a shared information table to record the synchronization information of the slave nodes, responding to the pull operation of the slave nodes, judging whether there are synchronized slave nodes, and controlling the slave nodes to pull data directly from the synchronized slave nodes, the synchronization pressure on the master node is reduced, and multi-node selection strategies such as random or polling strategies are adopted to select the target slave nodes.
It effectively reduces the synchronization pressure on the master node, improves the robustness of the disaster recovery system, and avoids synchronization failures caused by key node failures.
Smart Images

Figure CN120653489A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a data replication topology method, device, and related products. Background Art
[0002] A disaster recovery system involves establishing multiple sets of information technology (IT) systems with the same functionality. These IT systems can monitor each other's status and switch functions to improve the stability of the entire application system. For example, if one IT system stops working due to an unexpected event like a fire or earthquake, the entire application system can be switched to another IT system to resume normal operation.
[0003] In practice, these IT systems are referred to as nodes and are divided into master and slave nodes. Slave nodes must pull and synchronize the latest version of data from the master node to ensure that both master and slave nodes meet disaster recovery requirements. This requirement places excessive pressure on the master node if all slave nodes must pull and synchronize the latest version of data from the master node. Alternatively, multiple slave nodes are connected according to a pre-defined topology, with lower-level slave nodes synchronizing with higher-level slave nodes. This decentralizes data synchronization from the master node, but synchronization failures can often occur due to failures in key nodes, significantly reducing the robustness of the disaster recovery system.
[0004] In summary, how to reduce the pressure on the master node to be synchronized and at the same time improve the robustness of the disaster recovery system is an urgent problem that needs to be solved by those skilled in the art. Summary of the Invention
[0005] In view of this, the present application provides a data replication topology method, device and related products, aiming to reduce the pressure on the master node to be pulled for synchronization and at the same time improve the robustness of the disaster recovery system.
[0006] In a first aspect, the present application provides a data replication topology method, comprising:
[0007] In response to a pull operation of the first slave node on the version data to be synchronized, determining whether there is a slave node that has synchronized the version data to be synchronized according to the shared information table; the shared information table is used to record synchronization information of the slave node;
[0008] If so, the first slave node is controlled to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
[0009] Optionally, in response to the first slave node pulling the version data to be synchronized, before determining, according to the shared information table, whether there is a slave node that has synchronized the version data to be synchronized, the method further includes:
[0010] The shared information table is set.
[0011] Optionally, after controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized, the method further includes:
[0012] The synchronization information of the first slave node is recorded in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0013] Optionally, in response to the first slave node pulling the version data to be synchronized, after determining, according to the shared information table, whether there is a slave node that has synchronized the version data to be synchronized, the method further includes:
[0014] If not, control the first slave node to pull and synchronize the version data to be synchronized from the master node.
[0015] Optionally, after controlling the first slave node to pull and synchronize the to-be-synchronized version data from the master node, the method further includes:
[0016] The synchronization information of the first slave node is recorded in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0017] Optionally, controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized includes:
[0018] Determine whether there are multiple slave nodes that have synchronized the version data to be synchronized;
[0019] If not, controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized;
[0020] If so, selecting a target slave node from the plurality of slave nodes that have synchronized the version data to be synchronized;
[0021] Controlling the first slave node to pull and synchronize the to-be-synchronized version data from the target slave node;
[0022] Optionally, controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized includes:
[0023] Control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized according to the multi-node selection strategy;
[0024] The multi-node selection strategy is one of a random strategy, a polling strategy, a weighted random strategy, a weighted polling strategy and a first preset strategy;
[0025] The first preset strategy is to calculate the access delay or maximum bandwidth speed of the slave node through information obtained randomly or polling, and determine the pulled slave node according to the access delay or the maximum bandwidth speed. In a second aspect, the present application provides a data replication topology device, including:
[0026] A first judgment module is configured to, in response to a pull operation of the first slave node on the version data to be synchronized, determine whether there is a slave node that has synchronized the version data to be synchronized according to a shared information table; the shared information table is configured to record synchronization information of the slave node;
[0027] The first pull synchronization module is configured to control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
[0028] In a third aspect, an embodiment of the present application provides a computer device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, it implements the data replication topology method described in any one of the implementation methods in the first aspect of the embodiment of the present application.
[0029] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which instructions are stored. When the instructions are executed on a terminal device, the terminal device executes the data replication topology method described in any one of the implementation methods in the first aspect of the embodiment of the present application.
[0030] The present application provides a data replication topology method. When executing the method, in response to the pull operation of the first slave node on the version data to be synchronized, it is determined whether there is a slave node with synchronized version data to be synchronized according to the shared information table, wherein the shared information table is used to record the synchronization information of the slave node, and if there is a slave node with synchronized version data to be synchronized, the first slave node is controlled to pull the synchronized version data to be synchronized from the slave node with synchronized version data to be synchronized. In this way, the slave node with synchronized version data to be synchronized can be queried through the shared information table, and the first slave node can directly pull the synchronized version data to be synchronized from the slave node with synchronized version data to be synchronized, without the need to pull the synchronized version data to be synchronized from the master node. In this way, the pressure on the master node to be pulled for synchronization can be reduced, and the robustness of the disaster recovery system can be improved at the same time. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in this embodiment or the prior art, the following briefly introduces the drawings required for use in the embodiment or the prior art description. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0032] Figure 1 A schematic diagram of pull synchronization in the prior art;
[0033] Figure 2 A flowchart of a data replication topology method provided in an embodiment of the present application;
[0034] Figure 3 A flowchart of another data replication topology method provided in an embodiment of the present application;
[0035] Figure 4 A schematic diagram of the structure of a data replication topology device provided in an embodiment of the present application;
[0036] Figure 5 A schematic diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0037] The following, in conjunction with the accompanying drawings, provides a clear and complete description of the technical solutions in the embodiments of this application. This application provides a data replication topology method, device, and related products, relating to the field of computer technology. The foregoing is merely illustrative and does not limit the application areas of the methods and devices provided herein.
[0038] A disaster recovery system involves establishing multiple sets of information technology (IT) systems with the same functionality. These IT systems can monitor each other's status and switch functions to improve the stability of the entire application system. For example, if one IT system stops working due to an unexpected event like a fire or earthquake, the entire application system can be switched to another IT system to resume normal operation.
[0039] In practical applications, these IT systems can be called nodes and divided into master nodes and slave nodes. Slave nodes need to pull the latest version data from the master node to synchronize the data, so that the master and slave nodes can meet the disaster recovery requirements. Figure 1 As shown, Figure 1This is a schematic diagram of pull synchronization in the existing technology. All slave nodes need to pull and synchronize the latest version data from the master node, which causes excessive pressure on the master node. Another situation is that multiple slave nodes are connected according to a certain pre-set topology, and the lower-level slave nodes synchronize with the upper-level slave nodes, so that data synchronization is not concentrated on the master node. However, synchronization failure often occurs due to a failure of a key node, which greatly reduces the robustness of the disaster recovery system.
[0040] After research, the inventors proposed the technical solution of the present application. In response to the first slave node pulling the version data to be synchronized, the inventor determines whether there is a slave node with synchronized version data to be synchronized according to the shared information table, wherein the shared information table is used to record the synchronization information of the slave node. If there is a slave node with synchronized version data to be synchronized, the inventor controls the first slave node to pull the synchronized version data to be synchronized from the slave node with synchronized version data to be synchronized. In this way, the slave node with synchronized version data to be synchronized can be queried through the shared information table, and the first slave node can directly pull the synchronized version data to be synchronized from the slave node with synchronized version data to be synchronized, without having to pull the synchronized version data to be synchronized from the master node. In this way, the pressure on the master node to be pulled for synchronization can be reduced, and the robustness of the disaster recovery system can be improved at the same time.
[0041] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below in conjunction with the accompanying drawings and specific embodiments. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application. It should be noted that, for ease of description, only the parts related to the relevant invention are shown in the accompanying drawings. In the absence of conflict, the embodiments in the present application and the features in the embodiments can be combined with each other.
[0042] See also Figure 2 , Figure 2 A flowchart of a data replication topology method provided in an embodiment of the present application includes:
[0043] S201: In response to a pull operation of the first slave node on the version data to be synchronized, it is determined according to the shared information table whether there is a slave node that has synchronized the version data to be synchronized.
[0044] Before executing step S201, it is necessary to first construct a shared information table. The shared information table can be stored in the memory of the master node and is used to record the synchronization information of the slave node. The synchronization information of the slave node includes the node information of the slave node and the version number of the version data synchronized by the slave node. According to the shared information table, it can be accurately determined whether there is a slave node that has completed the synchronization of a certain version of version data.
[0045] When the first slave node pulls the data of the version to be synchronized, it needs to first determine whether there is a slave node that has synchronized the data of the version to be synchronized based on the shared information table. If so, the implementation method in step S202 is executed; if not, the implementation method in step S203 is executed.
[0046] S202: Control the first slave node to pull the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
[0047] First, the first slave node cannot pull the synchronized version data to be synchronized from the slave nodes that are not allowed to be accessed. It is necessary to first determine whether the slave node that has synchronized the version data to be synchronized is allowed to be accessed. If there is no slave node that has synchronized the version data to be synchronized that is allowed to be accessed, then it is necessary to control the first slave node to pull the synchronized version data to be synchronized from the master node. If there are slave nodes that have synchronized the version data to be synchronized and are allowed to be accessed, then determine the number of slave nodes that have synchronized the version data to be synchronized and are allowed to be accessed. If the number is 1, then directly use the slave node to complete the pull synchronization of the first slave node; if there are multiple slave nodes that have synchronized the version data to be synchronized and are allowed to be accessed, then select one from the multiple as the target slave node, and use the target slave node to complete the pull synchronization of the first slave node.
[0048] In some embodiments, the first slave node can be controlled to pull the synchronized version data to be synchronized from the slave node that has synchronized the version data to be synchronized according to the multi-node selection strategy. Among them, the multi-node selection strategy is one of the random strategy, polling strategy, weighted random strategy, weighted polling strategy and the first preset strategy. The weights in the weighted random strategy and the weighted polling strategy are set by those skilled in the art according to specific circumstances. The first preset strategy is to calculate the access delay or maximum bandwidth speed of the slave node through information obtained randomly or by polling, and determine the slave node to be pulled according to the access delay or the maximum bandwidth speed. Figure 3 As shown, Figure 3 A flowchart of another data replication topology method provided in an embodiment of the present application. When slave node 4 wants to initiate a pull synchronization operation, it is determined according to the shared information table that slave node 1, slave node 2, and slave node 3 are all slave nodes that have synchronized the version data to be synchronized. Slave node 4 can pull the synchronized version data to be synchronized from slave node 1, slave node 2, or slave node 3.
[0049] After the first slave node pulls the synchronized version data to be synchronized from the slave node that has synchronized the version data to be synchronized, the synchronization information of the first slave node needs to be recorded in the shared information table, wherein the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0050] S203: Control the first slave node to pull the version data to be synchronized from the master node.
[0051] If there is no slave node that has synchronized the version data to be synchronized and is allowed to be accessed, the first slave node pulls the version data to be synchronized from the master node.
[0052] After the first slave node pulls the synchronized version data from the master node, the synchronization information of the first slave node needs to be recorded in the shared information table, wherein the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0053] In addition, a status bit can be set in the shared information table. The status bit is used to indicate that the master node is being pulled to synchronize the latest version of the version data. When the master node is being pulled to synchronize the latest version of the version data, other slave nodes observe the flag bit and wait, and obtain the synchronization progress according to a certain strategy. When the synchronization is completed, other slave nodes can pull and synchronize the latest version of the version data from the slave node that has pulled and synchronized the latest version of the version data.
[0054] In the embodiment provided by the present application, in response to the first slave node's pull operation on the version data to be synchronized, it is determined whether there is a slave node with the synchronized version data to be synchronized according to the shared information table, wherein the shared information table is used to record the synchronization information of the slave node, and if there is a slave node with the synchronized version data to be synchronized, the first slave node is controlled to pull the synchronized version data to be synchronized from the slave node with the synchronized version data to be synchronized. In this way, the slave node with the synchronized version data to be synchronized can be queried through the shared information table, and the first slave node can directly pull the synchronized version data to be synchronized from the slave node with the synchronized version data to be synchronized, without having to pull the synchronized version data to be synchronized from the master node. In this way, the pressure on the master node to be pulled for synchronization can be reduced, and the robustness of the disaster recovery system can be improved at the same time.
[0055] The data replication topology method provided in the embodiment of the present application is introduced above. The data replication topology method is exemplarily described below in combination with specific application scenarios.
[0056] First, you need to build a shared information table. For example, this shared information table can be a hash table. In the hash table, the key is the version number of the synchronized data, and the value is the information about the synchronized slave node, such as the slave node's IP address and port. This shared information table is used to record the synchronization information of the slave node, namely the synchronized data version number and slave node related information.
[0057] When the target slave node needs to synchronize version data, it queries the shared information table to see if other nodes have completed synchronization of the version data. If a slave node that has completed synchronization already exists and the slave node can be accessed normally, the synchronization is transferred to the corresponding slave node. If there are multiple slave nodes that allow synchronization, one of them can be selected for synchronization according to a certain algorithm, such as an algorithm for selecting synchronization nodes based on bandwidth or delay. Among them, the algorithm for selecting synchronization nodes based on bandwidth or delay includes but is not limited to a random algorithm, a polling algorithm, or an algorithm for weighted selection based on information provided by the node.
[0058] If there is no slave node that has completed synchronization and can be accessed normally, the target slave node pulls and synchronizes the version data from the master node.
[0059] After the target slave node completes synchronization of the version data, it is necessary to write the node information of the target slave node and the version number of the version data into the shared information table.
[0060] The above are some specific implementations of the data replication topology method provided in the embodiment of the present application. Based on this, the present application also provides a corresponding device. The device provided in the embodiment of the present application will be introduced from the perspective of functional modularization.
[0061] like Figure 4 As shown, Figure 4 This is a schematic diagram of the structure of a data replication topology device provided in an embodiment of the present application. The data replication topology device 400 includes:
[0062] A first determination module 410 is configured to, in response to a pull operation of the first slave node on the version data to be synchronized, determine, based on a shared information table, whether there is a slave node that has synchronized the version data to be synchronized; the shared information table is configured to record synchronization information of the slave node;
[0063] The first pull synchronization module 420 is configured to control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
[0064] Optionally, the apparatus 400 further includes:
[0065] A setting module is used to set the shared information table.
[0066] Optionally, the apparatus 400 further includes:
[0067] The first recording module is configured to record the synchronization information of the first slave node in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0068] Optionally, the apparatus 400 further includes:
[0069] The second pull synchronization module is used to control the first slave node to pull and synchronize the version data to be synchronized from the master node if no.
[0070] Optionally, the apparatus 400 further includes:
[0071] The second recording module is used to record the synchronization information of the first slave node in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
[0072] Optionally, the first pull synchronization module 420 includes:
[0073] A first judging unit, configured to judge whether the number of slave nodes that have synchronized the version data to be synchronized is multiple;
[0074] a first pull synchronization unit, configured to, if not, control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized;
[0075] A selection unit, configured to, if yes, select a target slave node from the plurality of slave nodes that have synchronized the version data to be synchronized;
[0076] A second pull synchronization unit, configured to control the first slave node to pull and synchronize the to-be-synchronized version data from the target slave node;
[0077] Optionally, the first pull synchronization module 420 includes:
[0078] A third pull synchronization unit is configured to control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized according to a multi-node selection strategy;
[0079] The multi-node selection strategy is one of a random strategy, a polling strategy, a weighted random strategy, a weighted polling strategy and a first preset strategy;
[0080] The first preset strategy is to calculate the access delay or maximum bandwidth speed of the slave node through information obtained randomly or by polling, and determine the pulled slave node according to the access delay or the maximum bandwidth speed.
[0081] The embodiments of the present application also provide corresponding devices and computer storage media for implementing the solutions provided by the embodiments of the present application.
[0082] like Figure 5As shown, computer device 01 is a general-purpose computing device. Components of computer device 01 may include, but are not limited to, one or more processors or processor units 03, system memory 08, and bus 04 connecting various system components (including system memory 08 and processor unit 03).
[0083] Bus 04 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures. Examples of these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MAC) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.
[0084] The computer device 01 typically includes a variety of computer system readable media, which can be any available media that can be accessed by the computer device 01, including volatile and non-volatile media, removable and non-removable media.
[0085] System memory 08 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 09 and / or cache memory 10. Computer device 01 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 11 may be used to read and write non-removable, non-volatile magnetic media ( Figure 5 Not shown, often called a "hard drive"). Although Figure 5 Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to the bus 04 via one or more data medium interfaces. The system memory 08 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of various embodiments of the present invention.
[0086] A program / utility 12 having a set (at least one) of program modules 13 may be stored, for example, in system memory 08. Such program modules 13 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may include an implementation of a network environment. Program modules 13 generally perform the functions and / or methods of the embodiments described herein.
[0087] The computer device 01 may also communicate with one or more external devices 02 (e.g., a keyboard, a pointing device, a display 07, etc.), one or more devices that enable a user to interact with the computer device 01, and / or any device that enables the computer device 01 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface 06. Furthermore, the computer device 01 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) via a network adapter 05. Figure 5 As shown, the network adapter 05 communicates with other modules of the computer device 01 via the bus 04. Figure 5 Not shown, other hardware and / or software modules may be used in conjunction with the computer device 01, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0088] The processor unit 03 executes various functional applications and data processing by running programs stored in the system memory 08, such as implementing a data replication topology method provided in an embodiment of the present application.
[0089] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0090] Through the description of the above embodiments, it can be known that those skilled in the art can clearly understand that all or part of the steps in the above embodiment methods can be implemented by means of software plus a general hardware platform. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a storage medium, such as a read-only memory (ROM) / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network communication device such as a router) to execute the methods described in each embodiment or certain parts of the embodiments of the present application.
[0091] Each embodiment in this specification is described in a progressive manner. The same or similar parts between the embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple. For the relevant parts, refer to the partial description of the method embodiment. Some or all of the modules can be selected according to actual needs to achieve the purpose of the embodiment. Those of ordinary skill in the art can understand and implement it without paying any creative work.
[0092] The above description is merely an exemplary embodiment of the present application and is not intended to limit the scope of protection of the present application.
Claims
1. A data replication topology method, characterized in that: include: In response to a pull operation of the first slave node on the version data to be synchronized, determining whether there is a slave node that has synchronized the version data to be synchronized according to the shared information table; the shared information table is used to record synchronization information of the slave node; If so, the first slave node is controlled to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
2. The method according to claim 1, characterized in that Before determining, in response to the first slave node pulling the version data to be synchronized, according to the shared information table, whether there is a slave node that has synchronized the version data to be synchronized, the method further includes: The shared information table is set.
3. The method according to claim 2, characterized in that After controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized, the method further includes: The synchronization information of the first slave node is recorded in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
4. The method according to claim 2, characterized in that After determining, in response to the first slave node pulling the version data to be synchronized, according to the shared information table, whether there is a slave node that has synchronized the version data to be synchronized, the method further includes: If not, control the first slave node to pull and synchronize the version data to be synchronized from the master node.
5. The method according to claim 4, characterized in that After controlling the first slave node to pull and synchronize the to-be-synchronized version data from the master node, the method further includes: The synchronization information of the first slave node is recorded in the shared information table; the synchronization information of the first slave node includes the node information of the first slave node and the version number corresponding to the version data to be synchronized.
6. The method according to claim 1, characterized in that The controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized includes: Determine whether there are multiple slave nodes that have synchronized the version data to be synchronized; If not, controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized; If so, selecting a target slave node from the plurality of slave nodes that have synchronized the version data to be synchronized; The first slave node is controlled to pull and synchronize the to-be-synchronized version data from the target slave node.
7. The method according to claim 1, characterized in that The controlling the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized includes: Control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized according to the multi-node selection strategy; The multi-node selection strategy is one of a random strategy, a polling strategy, a weighted random strategy, a weighted polling strategy and a first preset strategy; The first preset strategy is to calculate the access delay or maximum bandwidth speed of the slave node through information obtained randomly or by polling, and determine the pulled slave node according to the access delay or the maximum bandwidth speed.
8. A data replication topology device, characterized in that: include: A first judgment module is configured to, in response to a pull operation of the first slave node on the version data to be synchronized, determine whether there is a slave node that has synchronized the version data to be synchronized according to a shared information table; the shared information table is configured to record synchronization information of the slave node; The first pull synchronization module is configured to control the first slave node to pull and synchronize the version data to be synchronized from the slave node that has synchronized the version data to be synchronized.
9. A computer device, characterized in that: include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the data replication topology method according to any one of claims 1 to 7 is implemented.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores instructions, and when the instructions are executed on a terminal device, the terminal device executes the data replication topology method according to any one of claims 1 to 7.