Data migration method, device, apparatus, and storage medium

By coordinating data migration requests from edge nodes through a central node, and combining storage resources and SD-WAN channels, the system failures caused by insufficient edge node resources in the distributed storage architecture are resolved, enabling efficient and secure data migration and ensuring service continuity.

CN117097786BActive Publication Date: 2026-08-04CHINA TELECOM CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210524833.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-13
Publication Date
2026-08-04
Estimated Expiration
2042-05-13

AI Technical Summary

Technical Problem

In a distributed storage architecture, when edge nodes experience system failures due to insufficient computing or storage resources, existing technologies have poor data migration efficiency, which cannot effectively alleviate the operational pressure on nodes and affect the normal operation of services.

Method used

The central node receives migration requests from edge nodes, combines the location information and storage resources of the edge nodes to determine the target node, sends a permission certificate to confirm the data migration, and uses the SD-WAN channel to perform data migration, achieving dynamic matching and optimization.

Benefits of technology

It improves the efficiency and security of data migration, ensures that the system selects the optimal data migration node in complex network environments, dynamically matches data migration requirements, and ensures the normal operation of services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117097786B_ABST
    Figure CN117097786B_ABST
Patent Text Reader

Abstract

The present disclosure provides a data migration method, device and equipment and storage medium, and relates to the technical field of data processing. The method comprises the following steps: receiving a first migration request sent by a request node, wherein the first migration request comprises position information of the request node and the size of data to be migrated, and the request node is an edge node; determining a target node from a plurality of edge nodes according to the position information of the request node and the size of data to be migrated in combination with storage resource information of the plurality of edge nodes; sending the position information of the target node to the request node, so that the request node sends a second migration request to the target node based on the position information of the target node; and sending a permission proof to the target node, so that the target node sends a confirmation message of accepting migration to the request node in the case that information carried by the second migration request meets the permission proof.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of data processing technology, and in particular to a data migration method, apparatus, device and storage medium. Background Technology

[0002] In a distributed storage architecture, when an edge node malfunctions due to insufficient computing or storage resources, leading to system failure and inability to operate normally, there is a need to expand the edge node's capacity. In this case, the edge node needs to migrate some of its data to other edge nodes or data center nodes for storage to alleviate its own operational pressure and ensure normal service operation.

[0003] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention

[0004] This disclosure provides a data migration method, apparatus, device, and storage medium, which at least partially solves the problem of poor data migration efficiency in related technologies.

[0005] Other features and advantages of this disclosure will become apparent from the following detailed description, or may be learned in part from practice of this disclosure.

[0006] According to one aspect of this disclosure, a data migration method is provided, applied to a central node, the method comprising:

[0007] Receive the first migration request sent by the requesting node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node.

[0008] Based on the location information of the requesting node and the size of the data to be migrated, and combined with the storage resource information of multiple edge nodes, the target node is determined among multiple edge nodes.

[0009] The location information of the target node is sent to the requesting node, so that the requesting node can send a second migration request to the target node based on the location information of the target node;

[0010] The license certificate is sent to the target node so that, if the information carried in the second migration request conforms to the license certificate, the target node sends a confirmation message accepting the migration to the requesting node.

[0011] In one embodiment of this disclosure, the license specification includes the size of the migration data to be received, the location information of the requesting node, and the central node's signature confirming the legitimacy of the data migration.

[0012] In one embodiment of this disclosure, the target node is determined among multiple edge nodes based on the location information of the requesting node, the size of the data to be migrated, the time period of data migration, and the storage resource information of multiple edge nodes, including:

[0013] Based on the network topology and the location information of the requesting node, calculate the distance from each edge node to the requesting node among multiple edge nodes;

[0014] Based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge nodes to the requesting node, candidate nodes are determined from multiple edge nodes;

[0015] The priority weight of the candidate nodes is determined based on their storage resource information and activity level.

[0016] The target node is determined from the candidate nodes based on their priority weights.

[0017] In one embodiment of this disclosure, candidate nodes are determined from a plurality of edge nodes based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge node to the requesting node, including:

[0018] The remaining free storage space in the edge nodes corresponding to the end point of the path is accumulated and calculated in ascending order of distance from the edge nodes to the requesting node.

[0019] When the ratio of the sum of free storage space to the size of the data to be migrated is not less than a preset threshold, the edge nodes that have already been traversed are identified as candidate nodes.

[0020] In one embodiment of this disclosure, the target node is determined among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes, including:

[0021] Based on the location information of the requesting node and the size of the data to be migrated, and combining the storage resource information of multiple edge nodes and the central storage node, the target node is determined among multiple edge nodes and the central storage node.

[0022] According to another aspect of this disclosure, a data migration method is provided, applied to a request node, the method comprising:

[0023] Send a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node. This allows the central node to determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes. The central node also sends the network address of the target node to the requesting node and a permission certificate to the target node.

[0024] Receive the location information of the target node sent by the central node;

[0025] A second migration request is sent to the target node, so that if the information carried in the second migration request meets the permission requirements, the target node sends a confirmation message to the requesting node accepting the migration.

[0026] In one embodiment of this disclosure, the second migration request further includes a data migration time period; the data migration time period is used to negotiate with the target node to obtain a target migration time period.

[0027] In one embodiment of this disclosure, the method further includes:

[0028] Data migration information is sent to the SD-WAN orchestrator and controller so that the SD-WAN orchestrator and controller can establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period;

[0029] The data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

[0030] In one embodiment of this disclosure, before sending the first migration request to the central node, the method further includes:

[0031] Monitor the utilization rate of computing resources and storage resources of the monitoring nodes;

[0032] Send the first migration request to the central node, including:

[0033] When the utilization rate of computing resources exceeds a preset threshold and / or the utilization rate of storage resources exceeds a preset threshold, a first migration request is sent to the central node.

[0034] According to another aspect of this disclosure, a data migration apparatus is provided for use in a central node, the apparatus comprising:

[0035] The request receiving module is used to receive the first migration request sent by the requesting node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node.

[0036] The node determination module is used to determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes.

[0037] The information sending module is used to send the location information of the target node to the requesting node, so that the requesting node can send a second migration request to the target node based on the location information of the target node;

[0038] The license certificate sending module is used to send the license certificate to the target node, so that if the information carried in the second migration request conforms to the license certificate, the target node will send a confirmation message accepting the migration to the requesting node.

[0039] According to another aspect of this disclosure, a data migration apparatus is provided, applied to a requesting node, the apparatus comprising:

[0040] The first request sending module is used to send a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node, so that the central node can determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes, and send the network address of the target node to the requesting node and the license certificate to the target node.

[0041] The location receiving module is used to receive the location information of the target node sent by the central node;

[0042] The second request sending module is used to send a second migration request to the target node, so that if the information carried in the second migration request meets the permission requirements, the target node will send a confirmation message accepting the migration to the requesting node.

[0043] According to another aspect of this disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the data migration method described above by executing the executable instructions.

[0044] According to another aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the data migration method described above.

[0045] The data migration method provided in this disclosure involves a central node receiving a first migration request from a requesting node. Based on the location information of the requesting node, the size of the data to be migrated, and the storage resource information of multiple edge nodes, the central node determines a target node among these edge nodes. The central node then sends the target node's location information and a permission certificate to the requesting node. Subsequently, the requesting node can send a second migration request to the target node based on the target node's location information. If the information carried in the second migration request conforms to the permission certificate, the target node sends a confirmation message accepting the migration to the requesting node. In this way, the entire data migration process is uniformly scheduled by the central node, enabling dynamic matching of data migration nodes in complex network and resource environments, based on different data migration needs and the network status and storage resource conditions of the edge nodes.

[0046] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0047] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0048] Figure 1 One of the schematic diagrams of a data processing system in this disclosure;

[0049] Figure 2 A schematic diagram of a data acquisition layer in an embodiment of this disclosure;

[0050] Figure 3 A second schematic diagram of a data processing system according to an embodiment of this disclosure;

[0051] Figure 4 A schematic diagram of a data processing system in one embodiment of this disclosure is shown in Figure 3.

[0052] Figure 5 This disclosure includes a schematic diagram of the blockchain infrastructure of the data processing system in an embodiment.

[0053] Figure 6 One of the schematic diagrams of a data migration method in this disclosure;

[0054] Figure 7 A second schematic diagram of a data migration method in this disclosure embodiment;

[0055] Figure 8A schematic diagram of a data migration method in one embodiment of this disclosure is shown in Figure 3.

[0056] Figure 9 A fourth schematic diagram of a data migration method in this disclosure embodiment;

[0057] Figure 10 A schematic diagram of a data migration device according to an embodiment of this disclosure;

[0058] Figure 11 A schematic diagram of another data migration device in this disclosure embodiment; and

[0059] Figure 12 A structural block diagram of a computer device according to an embodiment of this disclosure. Detailed Implementation

[0060] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided so that this disclosure will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0061] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0062] The data migration method provided in this disclosure can be applied to a data processing system, which can be a distributed data system.

[0063] Figure 1 A schematic diagram of a data processing system is shown. The data processing method provided in this disclosure can be applied to, but is not limited to, other applications. Figure 1 The data processing system shown.

[0064] like Figure 1 As shown, the data processing system 100 provided in this embodiment includes a central layer 120, an edge layer 140, and a data acquisition layer 160.

[0065] The data acquisition layer 160 is used to collect raw data at preset acquisition points 161 according to the needs of each business side, and send the raw data to the edge layer.

[0066] The edge layer 140 includes multiple edge nodes 141; the edge nodes 141 adopt an integrated storage and computing architecture, and each edge node 141 is used to store raw data and send target data in the raw data to the central layer.

[0067] The central layer 120 is used to store target data from the edge node 141, and to schedule the edge nodes 141 of the edge layer 140 to cooperate with the central layer 120 in processing data in response to data processing instructions.

[0068] The above parts are explained in detail below:

[0069] In some embodiments, such as Figure 2 As shown, the data acquisition layer 160 may include IoT data acquisition point 162, professional company data acquisition point 163, government and enterprise gateway data acquisition point 164, and DPI gateway data acquisition point 165.

[0070] In some embodiments, such as Figure 3 As shown, the central layer 120 may include a central node 121; the central node 121 and the edge node 141 are connected via SD-WAN.

[0071] The number of central nodes 121 can be one or more, and is not limited here.

[0072] Big data is the core application and demand scenario of cloud-network convergence. However, the use of big data places higher demands on network and cloud collaboration, requiring flexible and dynamic adjustments to the deployment relationship between the cloud and the network. Therefore, big data requires cloud-network convergence, and a key driving force for cloud-network convergence is the industrialization of big data and the empowerment of big data.

[0073] SD-WAN Network under the Integration of Data, Computing, Cloud, and Network: This integration provides deterministic and reliable connections between edge nodes and between central nodes and edge nodes, enabling secure, agile, and high-quality data transmission. It represents a new cloud-network convergence architecture. SD-WAN offers flexible networking, connecting central nodes, edge nodes, and between central and edge nodes to achieve secure, agile, and high-quality data transmission, facilitating unified management of data associated with different physical locations. In terms of security, encryption enhances security. Through unified orchestration, business language is translated into network requirements and security specifications based on data service / application characteristics. Regarding the security engine, security commands are generated to perform security hardening on links and network elements, such as tunnel encryption and traffic scrubbing. Network commands are generated to configure and adjust various physical / logical links, thereby enabling network control. This results in a "four-layer" + "one-control" + "one-code" architecture in network relationships.

[0074] This embodiment of the disclosure utilizes SDWAN control orchestration to leverage network advantages, match computing resources and data resources, and solve the problems of mismatched computing resources and data transmission bottlenecks in centralized architectures.

[0075] In some embodiments, the raw data includes at least one of the following:

[0076] Traffic data, call detail records (CDRs), user experience data, and service usage data.

[0077] As an example, the data acquisition layer 161 is responsible for near-end data acquisition and preprocessing, including internal DPI (Data Point Injection) data, data collection points from professional companies, and industry data collection. After acquisition, the data is aggregated to the edge layer 104 for storage and processing. DPI acquisition devices are deployed on the network side to achieve traffic parsing and identification of links such as the mobile core network, metropolitan area network, and IDC (Internet Data Center) to generate raw data such as xDR (Call Detail Records). Test probes are deployed on home gateways, IPTV set-top boxes, the Internet, and IDCs to collect perception data and business usage data. Industry data, including environmental data, temperature data, and some industry application data, is collected through IoT devices. In addition, internal data such as CRM and network management systems also need to be aggregated to the edge layer via open interfaces for further analysis and processing.

[0078] In some embodiments, the data acquisition layer is also used to preprocess the raw data;

[0079] Preprocessing includes at least one of the following processes:

[0080] Perform statistical analysis on the raw data, identify the traffic in the raw data, and perform traffic splitting on the raw data.

[0081] In some embodiments, the edge layer is used to perform the following steps:

[0082] Cache raw data from the data acquisition layer;

[0083] The original data is encapsulated to obtain multiple data packets;

[0084] Data packets are hierarchically categorized and stored on edge nodes.

[0085] In some embodiments, before encapsulating the raw data, the method further includes:

[0086] Perform at least one of the following processing steps on the cached raw data:

[0087] The process involves cleaning the raw data, desensitizing the raw data, assigning ownership to the raw data, and identifying the raw data.

[0088] As an example, edge layer 140 is used to store, compute, and process local data for local needs, while also undertaking off-site computing tasks from the central layer.

[0089] Edge nodes employ an integrated storage and computing architecture. As a core component of the integrated data and computing network architecture, they combine local network, computing, storage, and application capabilities to perform localized, specific business processing. The integrated storage and computing design of edge nodes facilitates data processing locally, significantly reducing the risk of data leakage and network load.

[0090] An edge node can consist of several parts, including a local data engine, edge storage resources, a computing power resource platform, and a resource scheduling platform.

[0091] The local data engine possesses the capabilities to cleanse, encrypt, interact with, and analyze data to meet local needs, enabling local data analysis and external empowerment. On the other hand, serving the central layer, for cross-provincial data analysis requests, edge nodes in various regions need to simplify and refine local data to form intermediate data that is then aggregated to the central layer for intelligent data fusion analysis.

[0092] Edge storage resources include data storage, preserving raw data after collection and cleaning; intermediate and final results of data analysis; and a repository of algorithm models for training. In this architecture, data is stored in edge cloud storage as much as possible for easy local allocation and use, minimizing data travel and ensuring computing power is as close to the edge as possible, reducing the load on centralized big data storage centers.

[0093] The computing resource platform enables local computation of data, including edge data intelligence fusion and edge federated learning. At the same time, for data that requires central-layer privacy computation, a privacy computation TEE channel is configured to communicate with the central node privacy computation platform.

[0094] The resource scheduling platform has two responsibilities: on the one hand, it undertakes the resource scheduling needs of the central layer resource scheduling center and provides the necessary storage and computing power and other joint scheduling services for the central node and other edge nodes; on the other hand, it is responsible for the resource scheduling of local data processing and analysis.

[0095] In this embodiment of the disclosure, the local data engine and computing resource platform, together with AI model algorithms, analyze and process local needs, and achieve computing power that moves with data through distributed edge computing deployment.

[0096] Edge resource scheduling centers handle local data analysis and processing, and work in conjunction with central resource scheduling to optimize resources across the entire network, effectively reducing latency and improving performance.

[0097] In some embodiments, the target data in the above embodiments may include at least one of the following raw data:

[0098] Core network data, non-core data at the edge layer, intermediate edge data that needs to be computed and processed by the central layer, and central layer analysis results data.

[0099] In some embodiments, the target data may also include raw data with a privacy level greater than a preset level.

[0100] As an example, such as Figure 4 As shown, the central layer 106 can be responsible for the computation and processing of data from the entire network or edge data that requires central layer computing, and provide services to the outside world.

[0101] The central layer can include a central storage node, a computing power center, a privacy computing center, a data sharing and exchange center, a data intelligence fusion center, a federated learning center, a data platform, and a resource scheduling center, forming a regional configuration of "data in the east and computing in the west".

[0102] Central storage: Compared to the edge side, central storage nodes have a larger storage capacity and mainly store core network data, non-core data of the edge layer, intermediate edge data that needs to be calculated and processed by the central layer, and central layer analysis results data, etc.

[0103] Privacy Computing Center: Provides data analysis and computing capabilities for high-performance or privacy-protected data computing requests, and achieves privacy-protected data analysis and mining capabilities through technologies such as TEE and multi-party secure computation.

[0104] Data Sharing and Exchange Center: Based on blockchain technology, this center enables peer-to-peer data sharing and exchange among provincial / branch companies. It features data tracking, data ownership analysis, and data pricing capabilities, and forms a unified data catalog tracking view across the entire telecommunications group. Based on consortium blockchain technology, it builds a collaborative trust foundation among multiple parties (provincial companies, specialized companies, etc.) to achieve data ownership confirmation, transactions, and supervision. Simultaneously, it establishes a data sharing consortium blockchain with industry data nodes to achieve interconnection and sharing of internal and external data.

[0105] Data and Intelligence Fusion Center: It gathers data from the entire network, takes people as the core, generates global IDs, aggregates all personal behaviors, and builds a global data model based on the large-scale data aggregation technology of interpersonal relationships and graph computing, providing data support and algorithm capabilities for the data platform and other centers.

[0106] Federated Learning Center: Centrally manages edge federated nodes, coordinating and scheduling federated learning tasks, models, and capabilities. At the execution level, it distributes model parameters to each participating node and performs gradient aggregation calculations to obtain the optimal solution, continuously repeating the parameter distribution and aggregation process until the model converges.

[0107] Computing Power Center: The computing power center is loosely coupled with the central layer applications. Unlike the privacy computing center, it mainly undertakes general computing tasks for both the central layer and the edge layer. When the edge layer lacks sufficient local computing power, it can rent computing power from the central layer computing power center for massive computing. Central layer applications can call upon the computing power resources of the computing power center to execute computing tasks.

[0108] Data Platform: The data platform empowers internal and external data applications through the DaaS service engine, and at the same time, realizes data asset management based on data weaving technology.

[0109] Resource Scheduling Center: The resource scheduling center is the central brain of the entire integrated cloud-data-network architecture. It is responsible for scheduling the network's storage resources, computing resources, SD-WAN network resources, and data resources. All network service requests are first allocated to matching capability centers based on resource usage through the global scheduling center. Simultaneously, considering the uncertainty of data and algorithms within this network architecture, demand-driven, collaborative scheduling of data and computing resources, along with cloud-edge collaboration, should be implemented to achieve "data + algorithm" collaborative scheduling.

[0110] In this embodiment, the central layer may include several functional modules such as central storage, privacy computing center, federated learning center, data sharing and exchange center, data intelligence fusion center, data platform, computing power center, and resource scheduling center. Each module is connected to the cloud and edge through the resource scheduling center, which acts as the brain. Execution is scheduled to different centers according to different needs, realizing demand-driven algorithms, algorithm-driven data, data-driven collection, data matching resources according to algorithms, optimized distribution, and stimulating the enthusiasm of all parties involved through data value, thus building an internal and external data ecosystem.

[0111] In some embodiments, edge nodes are also used to store data ownership and identification information on the blockchain.

[0112] like Figure 5 As shown, the blockchain structure under the integrated data computing, cloud and network architecture serves as the foundation of the value network infrastructure. Under this integrated architecture, it provides capabilities such as trusted storage, traceability, and consistency verification for data flow, computing, and exchange at all layers, ensuring transparency and trustworthiness throughout the entire data lifecycle through blockchain technology.

[0113] The blockchain structure under the integrated data, computing, cloud, and network architecture serves as the foundation for capabilities within this architecture. By constructing a comprehensive blockchain infrastructure and creating a large-scale network architecture of "main chain + data business sub-chains," it achieves transparent and trustworthy control over the big data industry chain. The main chain, as the core blockchain, aggregates and verifies data hashes from all data business sub-chains, further enhancing the credibility of all data. Simultaneously, the main chain provides cross-chain transaction scheduling and transaction trust verification functions for each data business sub-chain, ensuring secure and compliant transaction scheduling. Through the main chain, bridges are built between various data business sub-chains, helping to break down data silos and achieve interconnectivity between different business chains.

[0114] Subchains are designed for specific data processing tasks and can be deployed in central and edge data centers or cloud servers. They require cross-chain technology and the main chain to achieve data sharing. These business subchains primarily support specific data applications, such as data sharing and exchange, federated learning, privacy computing, and data-driven integration, enabling functions like identity authentication, evidence storage and traceability, resource allocation, and data consistency verification. Data on the subchains needs to be collected and reported to the main chain for easy monitoring.

[0115] In this embodiment of the disclosure, blockchain runs through the entire architecture, providing trusted evidence storage, traceability, and consistency verification capabilities for data flow, computation, and exchange at each layer, and ensuring transparency and trustworthiness throughout the entire data lifecycle through blockchain technology.

[0116] The aforementioned data processing system changes the traditional centralized cloud resource model. By using technologies such as distributed computing, resource migration, and virtualization, it fully utilizes the resource capabilities of the cloud and edge, optimizes resource allocation, and improves resource utilization.

[0117] Among them, the main entities are connected through an SD-WAN network, the entire network achieves global resource scheduling through a global dispatch center, and data assets are managed in a refined manner and data lineage is traced through data identification.

[0118] During the normal operation of the aforementioned data processing system, when an edge node malfunctions due to insufficient computing or storage resources, causing the system to fail, there will be a need to expand the edge node's capacity. In this case, the edge node needs to migrate some of its data to other edge nodes or data center nodes for storage to alleviate its own operational pressure and ensure normal service operation.

[0119] The following detailed description of this exemplary implementation method is provided in conjunction with the accompanying drawings and embodiments.

[0120] Figure 6 This diagram illustrates a data migration method according to an embodiment of the present disclosure, such as... Figure 6 As shown, the data migration method provided in this embodiment includes the following steps:

[0121] Step S602: The requesting node sends a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated.

[0122] Step S604: After receiving the first migration request sent by the requesting node, the central node determines the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes.

[0123] Step S606: The central node sends the location information of the target node to the requesting node and sends the license certificate to the target node;

[0124] Step S608: After receiving the location information of the target node sent by the central node, the requesting node sends a second migration request to the target node.

[0125] In step S610, if the information carried in the second migration request meets the permission requirements, the target node sends a confirmation message accepting the migration to the requesting node.

[0126] The above steps are explained in detail below:

[0127] The request node in the above steps can be an edge node in the data processing system described above, and the central node can be the central node of the central layer of the data processing system described above.

[0128] Furthermore, the target node in the above steps can be an edge node in the data processing system described above, or it can be a central node in the central layer of the data processing system described above.

[0129] The authorization documents in the above steps may include the size of the migration data to be received, the location information of the requesting node, and the central node's signature confirming the legitimacy of this data migration.

[0130] In some embodiments, step S604 above can be specifically implemented as follows:

[0131] Based on the network topology and the location information of the requesting node, calculate the distance from each edge node to the requesting node among multiple edge nodes;

[0132] Based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge nodes to the requesting node, candidate nodes are determined from multiple edge nodes;

[0133] The priority weight of the candidate nodes is determined based on their storage resource information and activity level.

[0134] The target node is determined from the candidate nodes based on their priority weights.

[0135] Here, based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge node to the requesting node, candidate nodes are determined from multiple edge nodes. These can specifically include:

[0136] The remaining free storage space in the edge nodes corresponding to the end point of the path is accumulated and calculated in ascending order of distance from the edge nodes to the requesting node.

[0137] When the ratio of the sum of free storage space to the size of the data to be migrated is not less than a preset threshold, the edge nodes that have already been traversed are identified as candidate nodes.

[0138] In some embodiments, the requesting node in the above steps can be an edge node or a central node. Accordingly, step S604 can be: determining the target node among multiple edge nodes and central storage nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes and the storage resource information of the central storage node.

[0139] The process of determining candidate nodes in the central storage node by combining the storage resource information of the central storage node is similar to the process of determining candidate nodes in the edge nodes described above, and will not be repeated here.

[0140] It should be noted that there can be multiple edge nodes and multiple central storage nodes, and correspondingly, there can be one or more alternative nodes.

[0141] In some special cases, the number of alternative nodes can be zero, in which case data migration cannot be performed.

[0142] In some embodiments, the second migration request may further include a data migration period; the data migration period is used to negotiate with the target node to obtain the target migration period.

[0143] In some embodiments, the above method may further include the following steps:

[0144] Data migration information is sent to the SD-WAN orchestrator and controller so that the SD-WAN orchestrator and controller can establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period;

[0145] The data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

[0146] Before sending the first migration request to the central node, the method may further include:

[0147] Monitor the utilization rate of computing resources and storage resources of the monitoring nodes;

[0148] Send the first migration request to the central node, including:

[0149] When the utilization rate of computing resources exceeds a preset threshold and / or the utilization rate of storage resources exceeds a preset threshold, a first migration request is sent to the central node.

[0150] To facilitate understanding, a specific example is used below to explain in detail the data migration method provided in this disclosure embodiment. Please refer to the appendix. Figure 7 .

[0151] In the data processing system, the central scheduling system is responsible for statistics and monitoring of the data usage of each edge node in the data processing system, and for coordinating with the edge nodes to complete the data migration task when the edge node storage resources are insufficient.

[0152] Specifically, when the data processing system is successfully built, the central scheduling system can maintain a network topology map that records all nodes in the system.

[0153] It should be noted that the central scheduling system here can be the execution entity of the data migration method provided in this embodiment. The central scheduling system can be deployed independently, or it can be deployed on a central node or a request node.

[0154] The vertices in the topology graph represent edge nodes in the data processing system, and the edges represent the connection states between edge nodes. The weight of each edge is calculated by weighting the actual physical distance between edge nodes with the number of hops in the network routing link. i The distance is the weight of the edge from the endpoint node i to the starting node. i For actual physical distance, hop i W represents the hop count of a network routing link. d W represents the weights corresponding to the actual physical distance parameters. h The weight corresponding to the hop count of a network routing link.

[0155] The weight of node i is calculated using the following formula:

[0156] weight i =W d ×distance i +W h ×hop i

[0157] Edge nodes continuously execute pre-set early warning security rules regarding the availability of node computing and storage resources, using these security rules to promptly detect the resource usage of the edge nodes themselves.

[0158] As an example, a warning security rule could be to trigger a warning if the storage resource utilization rate exceeds a certain percentage.

[0159] When an edge node detects excessive resource consumption and a security risk to its own availability, it sends an alert to the data owner of the data stored on the node. The data owner can be an entity or an application.

[0160] The data owner sends a data migration request to the central scheduling system through the edge node where the data is located.

[0161] The following is the process of generating the first migration request from the above steps.

[0162] The first migration request can be generated by the edge node that needs to migrate data. The parameters required in the migration request may include: the location of the edge node (such as IP and MAC address), the size of the data to be migrated, the acceptable time period for data migration for the edge node (which can be calculated from historical data traffic), and the maximum cost that can be paid for the data migration. These information are reported to the central scheduling system. Here, the edge node is the requesting node mentioned earlier; that is, the location information of the requesting node mentioned earlier is the location of the edge node, and the data migration time period mentioned earlier can be the acceptable time period for data migration for that edge node.

[0163] The size of the data to be migrated, as described above, can be determined in the following way:

[0164] (1) Let the storage space capacity of the edge node be S. Divide S into n storage blocks of different sizes. The size of the data block is set according to the amount of data to be stored in the node each time or at a certain time interval. The i-th storage space is denoted as s. i (i = 1, 2, 3…n).

[0165] (2) Data in edge nodes is stored sequentially into data blocks according to arrival time, with each storage block s i It has a field denoted as t to record the most recent access time of the data in this storage block. i .

[0166] (3) Let the current system time be T, calculate the average most recent usage time interval Δt.

[0167]

[0168] (4) Compare the most recent usage time interval Tt for each data block.i Given the value of Δt, the storage block capacity corresponding to the m most recently used data blocks with a time interval greater than Δt is denoted as S. i The required data migration size is the sum of the capacities of m storage blocks:

[0169]

[0170] Here, the acceptable data migration period for this edge node can be calculated based on the node's access history.

[0171] In some examples, the data migration can be performed during the period with the lowest historical data traffic to minimize the impact on the normal operation of the node.

[0172] As mentioned above, the maximum cost that can be paid for data migration can be set by the data owner.

[0173] The central scheduling system can select the optimal data migration target node based on the information uploaded by the edge node requesting data migration, combined with the usage of storage resources of the central storage node and other edge nodes, according to the following process.

[0174] 1) The central scheduling system calculates the distance from each node to the requesting node using Dijkstra's algorithm according to the network topology (distance is the sum of the weights on the path formed by the two nodes, with the starting point of the path being the requesting node and the ending point being the target migration node).

[0175] 2) Check the sum of the remaining free storage space in the edge nodes corresponding to the end point of the path in ascending order of distance, and see if it is greater than a certain percentage (greater than 100%) of the data to be migrated by the migration node.

[0176] This includes the sum of the remaining free storage space in the edge nodes corresponding to the path endpoint:

[0177] S_free total =S_free1 + S_free2 + ... + S_free j

[0178] 3) Until the condition is met Then, the nodes that have already been traversed are used as candidate migration nodes, resulting in a set of candidate migration nodes.

[0179] 4) Calculate the percentage of remaining free space of the candidate migration nodes in the set after receiving data. If the percentage of remaining free space is high, the priority is increased.

[0180]

[0181] 5) The central scheduling system calculates the activity level of each candidate migration node, and the candidate migration priority is increased for nodes with higher activity levels.

[0182] The activity level of an edge node is determined by the node's total traffic (uplink and downlink) over the past three months.

[0183] The activity levels of edge nodes are sorted in order of max(Flow). i The result is obtained by calculation (i = 1, 2, 3).

[0184] 6) The central scheduling system returns the network address of the target node and a permission certificate for data migration to the edge node (requesting node) that sent the request, and notifies the target node to prepare to receive the migration data.

[0185] The permission certificate for the migration data includes the size of the migration data to be received, the physical address of the edge node that sent the request, and the legality signature of the data migration by the central scheduling system.

[0186] The target node can verify the requesting node through the following steps:

[0187] 1) After the requesting node obtains the address of the migration node from the central scheduling system, it sends a data migration request to the scheduling system in the migration node.

[0188] 2) The target migration is based on whether the physical address of the requesting node is consistent with the migration data permission certificate sent by the central scheduling system.

[0189] 3) The target migration node selects the storage space to store the received data based on the utilization of the local server or VM virtual machine, and negotiates the data migration period with the requesting node based on historical running data.

[0190] 4) Once authentication and migration data preparation are complete, a confirmation message will be returned to the requesting node.

[0191] After verification and confirmation at the target node, a data migration channel is established.

[0192] Edge nodes send data migration information generated in the scheduling system, such as the physical address information of the requesting node and the migrating node, the data migration time period information, and the required bandwidth information, to the SDWAN orchestrator and controller.

[0193] Before the migration period begins, the SDWAN orchestrator and controller establish SDWAN channels between the requesting node and the migration node. After the channels are established, data migration between edge nodes occurs during the agreed-upon data migration period.

[0194] Compared to traditional data migration schemes, in this embodiment, data migration between edge nodes relies on the coordination of a central scheduling system. The central scheduling system stores and maintains a network topology diagram of the edge nodes in the data processing system and determines the destination node for data migration based on an optimal migration destination node algorithm. The required data to be migrated, the overall size of the migrated data, and the migration time are all calculated using relevant algorithms, achieving efficient, secure, and complete data migration.

[0195] This disclosure applies to data migration process requirements under a distributed storage architecture. It can select the target node for data migration through a central scheduling system. In complex network and resource environments, it can select the optimal data migration node based on different data migration requirements and the network status and storage resource status of edge nodes, thereby achieving dynamic matching of data migration.

[0196] Based on the same inventive concept, this disclosure provides a data migration method applied to a central node, such as... Figure 8 As shown, the data migration method provided in this embodiment includes the following steps:

[0197] Step S802: Receive a first migration request sent by the requesting node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node.

[0198] Step S804: Based on the location information of the requesting node and the size of the data to be migrated, and combined with the storage resource information of multiple edge nodes, determine the target node among multiple edge nodes.

[0199] Step S806: Send the location information of the target node to the requesting node so that the requesting node sends a second migration request to the target node based on the location information of the target node;

[0200] Step S808: Send the license certificate to the target node so that the target node, if the information carried in the second migration request conforms to the license certificate, sends a confirmation message accepting the migration to the requesting node.

[0201] In some embodiments, the permission specification includes the size of the migration data to be received, the location information of the requesting node, and the central node's signature confirming the legitimacy of the data migration.

[0202] In some embodiments, the target node is determined among multiple edge nodes based on the location information of the requesting node, the size of the data to be migrated, the time period of data migration, and the storage resource information of multiple edge nodes, including:

[0203] Based on the network topology and the location information of the requesting node, calculate the distance from each edge node to the requesting node among multiple edge nodes;

[0204] Based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge nodes to the requesting node, candidate nodes are determined from multiple edge nodes;

[0205] The priority weight of the candidate nodes is determined based on their storage resource information and activity level.

[0206] The target node is determined from the candidate nodes based on their priority weights.

[0207] In some embodiments, candidate nodes are determined from a plurality of edge nodes based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge node to the requesting node, including:

[0208] The remaining free storage space in the edge nodes corresponding to the end point of the path is accumulated and calculated in ascending order of distance from the edge nodes to the requesting node.

[0209] When the ratio of the sum of free storage space to the size of the data to be migrated is not less than a preset threshold, the edge nodes that have already been traversed are identified as candidate nodes.

[0210] In some embodiments, determining the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes, includes:

[0211] Based on the location information of the requesting node and the size of the data to be migrated, and combining the storage resource information of multiple edge nodes and the central storage node, the target node is determined among multiple edge nodes and the central storage node.

[0212] Based on the same inventive concept, this disclosure also provides a data migration method, applied to a request node, such as... Figure 9 As shown, this data migration method includes:

[0213] Step S902: Send a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node. This allows the central node to determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes. The central node also sends the network address of the target node to the requesting node and sends a permission certificate to the target node.

[0214] Step S904: Receive the location information of the target node sent by the central node;

[0215] Step S908: Send a second migration request to the target node, so that if the information carried in the second migration request meets the permission requirements, the target node sends a confirmation message accepting the migration to the requesting node.

[0216] In some embodiments, the second migration request further includes a data migration time period; the data migration time period is used to negotiate with the target node to obtain the target migration time period.

[0217] In some embodiments, the method may further include:

[0218] Data migration information is sent to the SD-WAN orchestrator and controller so that the SD-WAN orchestrator and controller can establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period;

[0219] The data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

[0220] In some embodiments, before sending the first migration request to the central node, the method may further include:

[0221] Monitor the utilization rate of computing resources and storage resources of the monitoring nodes;

[0222] Send the first migration request to the central node, including:

[0223] When the utilization rate of computing resources exceeds a preset threshold and / or the utilization rate of storage resources exceeds a preset threshold, a first migration request is sent to the central node.

[0224] Based on the same inventive concept, this disclosure also provides a data migration apparatus, as described in the following embodiments. Since the principle by which this apparatus solves the problem is similar to that of the method embodiments described above, the implementation of this apparatus embodiment can refer to the implementation of the method embodiments described above, and repeated details will not be repeated.

[0225] Figure 10 This disclosure illustrates a data migration apparatus in an embodiment of the present disclosure, which is applied to a central node, such as... Figure 10 As shown, the data migration device 1000 includes:

[0226] The request receiving module 1002 is used to receive a first migration request sent by a requesting node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node.

[0227] The node determination module 1004 is used to determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes.

[0228] The information sending module 1006 is used to send the location information of the target node to the requesting node, so that the requesting node can send a second migration request to the target node based on the location information of the target node;

[0229] The license certificate sending module 1008 is used to send the license certificate to the target node, so that if the information carried in the second migration request conforms to the license certificate, the target node will send a confirmation message accepting the migration to the requesting node.

[0230] In some embodiments, the permission specification includes the size of the migration data to be received, the location information of the requesting node, and the central node's signature confirming the legitimacy of the data migration.

[0231] In some embodiments, the node determination module 1004 is specifically used to perform the following steps:

[0232] Based on the network topology and the location information of the requesting node, calculate the distance from each edge node to the requesting node among multiple edge nodes;

[0233] Based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge nodes to the requesting node, candidate nodes are determined from multiple edge nodes;

[0234] The priority weight of the candidate nodes is determined based on their storage resource information and activity level.

[0235] The target node is determined from the candidate nodes based on their priority weights.

[0236] In some embodiments, candidate nodes are determined from a plurality of edge nodes based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge node to the requesting node, including:

[0237] The remaining free storage space in the edge nodes corresponding to the end point of the path is accumulated and calculated in ascending order of distance from the edge nodes to the requesting node.

[0238] When the ratio of the sum of free storage space to the size of the data to be migrated is not less than a preset threshold, the edge nodes that have already been traversed are identified as candidate nodes.

[0239] In some embodiments, the node determination module 1004 is specifically used to determine the target node among multiple edge nodes and central storage nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes and the storage resource information of the central storage node.

[0240] The data migration apparatus provided in this application embodiment can be used to execute the data migration methods provided in the above method embodiments. The implementation principle and technical effect are similar, and for the sake of brevity, they will not be described in detail here.

[0241] Based on the same inventive concept, this disclosure also provides a data migration device applied to a request node, such as... Figure 11 As shown, the data migration device 1100 includes:

[0242] The first request sending module 1102 is used to send a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node, so that the central node can determine the target node among multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes, and send the network address of the target node to the requesting node and send a license certificate to the target node.

[0243] The location receiving module 1104 is used to receive the location information of the target node sent by the central node;

[0244] The second request sending module 1106 is used to send a second migration request to the target node, so that the target node, if the information carried in the second migration request meets the permission requirements, sends a confirmation message accepting the migration to the requesting node.

[0245] In some embodiments, the second migration request may further include a data migration period; the data migration period is used to negotiate with the target node to obtain the target migration period.

[0246] In some embodiments, the data migration apparatus 1100 may further include:

[0247] The migration information sending module is used to send data migration information to the SD-WAN orchestrator and controller, so that the SD-WAN orchestrator and controller can establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period;

[0248] The data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

[0249] In some embodiments, the data migration apparatus 1100 may further include:

[0250] The monitoring module is used to monitor the utilization rate of node computing resources and storage resources;

[0251] The first request sending module 1102 is specifically used to send a first migration request to the central node when the utilization rate of computing resources is greater than a preset threshold and / or the utilization rate of storage resources is greater than a preset threshold.

[0252] The data migration apparatus provided in this application embodiment can be used to execute the data migration methods provided in the above method embodiments. The implementation principle and technical effect are similar, and for the sake of brevity, they will not be described in detail here.

[0253] Those skilled in the art will understand that various aspects of this disclosure can be implemented as a system, method, or program product. Therefore, various aspects of this disclosure can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, collectively referred to herein as a "circuit," "module," or "system."

[0254] The following reference Figure 12 To describe an electronic device 1200 according to such an embodiment of the present disclosure. Figure 12 The electronic device 1200 shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.

[0255] like Figure 12 As shown, the electronic device 1200 is manifested in the form of a general-purpose computing device. The components of the electronic device 1200 may include, but are not limited to: at least one processing unit 1210, at least one storage unit 1220, and a bus 1230 connecting different system components (including storage unit 1220 and processing unit 1210).

[0256] The storage unit stores program code that can be executed by the processing unit 1210, causing the processing unit 1210 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure. For example, the processing unit 1210 can perform the steps of the above-described method embodiments.

[0257] Storage unit 1220 may include a readable medium in the form of a volatile storage unit, such as random access memory (RAM) 12201 and / or cache memory 12202, and may further include a read-only memory (ROM) 12203.

[0258] Storage unit 1220 may also include a program / utility 12204 having a set (at least one) of program modules 12205, such program modules 12205 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.

[0259] Bus 1230 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.

[0260] Electronic device 1200 can also communicate with one or more external devices 1240 (e.g., keyboard, pointing device, Bluetooth device, etc.), one or more devices that enable a user to interact with electronic device 1200, and / or any device that enables electronic device 1200 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 1250. Furthermore, electronic device 1200 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 1260. As shown, network adapter 1260 communicates with other modules of electronic device 1200 via bus 1230. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 1200, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0261] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0262] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. A program product capable of implementing the methods described above is stored thereon. In some possible implementations, various aspects of this disclosure may also be implemented as a program product including program code, which, when run on a terminal device, causes the terminal device to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure.

[0263] More specific examples of computer-readable storage media in this disclosure may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0264] In this disclosure, a computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of transmitting, propagating, or transmitting a program for use by or in connection with an instruction execution system, apparatus, or device.

[0265] Optionally, the program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0266] In practical implementation, program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0267] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0268] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.

[0269] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0270] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the appended claims.

Claims

1. A data migration method applied to a central node, characterized in that, The method includes: Receive a first migration request sent by a requesting node, the first migration request including the location information of the requesting node and the size of the data to be migrated, the requesting node being an edge node; Based on the location information of the requesting node and the size of the data to be migrated, and combined with the storage resource information of multiple edge nodes, the target node is determined among the multiple edge nodes; The location information of the target node is sent to the requesting node, so that the requesting node sends a second migration request to the target node based on the location information of the target node; The permission certificate is sent to the target node, so that if the information carried in the second migration request conforms to the permission certificate, the target node sends a confirmation message to the requesting node to accept the migration; the permission certificate includes the size of the migration data to be received, the location information of the requesting node, and the central node's signature on the legality of this data migration; the second migration request also includes the data migration time period; the data migration time period is used to negotiate with the target node to obtain the target migration time period; The requesting node also sends data migration information to the SD-WAN orchestrator and controller, so that the SD-WAN orchestrator and controller establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period; the data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

2. The method according to claim 1, characterized in that, The step of determining the target node among the multiple edge nodes based on the location information of the requesting node, the size of the data to be migrated, the time period of the data migration, and the storage resource information of multiple edge nodes includes: Based on the network topology map and the location information of the requesting node, calculate the distance from each of the multiple edge nodes to the requesting node; Based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge nodes to the requesting node, candidate nodes are determined from among the multiple edge nodes; The priority weight of the candidate nodes is determined based on the storage resource information and activity level of the candidate nodes. The target node is determined from the candidate nodes based on their priority weights.

3. The method according to claim 2, characterized in that, The step of determining candidate nodes from a plurality of edge nodes based on the storage resource information of the edge nodes, the size of the data to be migrated, and the distance from the edge node to the requesting node includes: The remaining free storage space in the edge nodes corresponding to the path endpoints is accumulated and calculated in ascending order of the distance from the edge nodes to the requesting node. When the ratio of the sum of the free storage spaces to the size of the data to be migrated is not less than a preset threshold, the edge nodes that have already been traversed are identified as candidate nodes.

4. The method according to claim 1, characterized in that, The step of determining the target node among the multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes, includes: Based on the location information of the requesting node and the size of the data to be migrated, and combined with the storage resource information of multiple edge nodes and the central storage node, the target node is determined among the multiple edge nodes and the central storage node.

5. A data migration method applied to a request node, characterized in that, The method includes: A first migration request is sent to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node. The central node determines the target node among the multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes. The central node also sends the network address of the target node to the requesting node and sends a permission certificate to the target node. Receive the location information of the target node sent by the central node; A second migration request is sent to the target node, so that if the information carried in the second migration request meets the permission requirements, the target node sends a confirmation message to the requesting node to accept the migration; the permission requirements include the size of the migration data to be received, the location information of the requesting node, and the central node's signature on the legality of this data migration; the second migration request also includes a data migration time period; the data migration time period is used to negotiate with the target node to obtain the target migration time period; Data migration information is sent to the SD-WAN orchestrator and controller so that the SD-WAN orchestrator and controller establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period; The data migration information includes the location information of the requesting node, the location information of the target node, the target migration time period, and the required bandwidth information.

6. The method according to claim 5, characterized in that, Before sending the first migration request to the central node, the method further includes: Monitor the utilization rate of computing resources and storage resources of the monitoring nodes; Sending the first migration request to the central node includes: When the utilization rate of computing resources exceeds a preset threshold and / or the utilization rate of storage resources exceeds a preset threshold, a first migration request is sent to the central node.

7. A data migration device, applied to a central node, characterized in that, The device includes: The request receiving module is used to receive a first migration request sent by a requesting node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node. The node determination module is used to determine the target node among the multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes. The information sending module is used to send the location information of the target node to the requesting node, so that the requesting node sends a second migration request to the target node based on the location information of the target node; The permission certificate sending module is used to send a permission certificate to the target node, so that the target node, if the information carried in the second migration request conforms to the permission certificate, sends a confirmation message accepting the migration to the requesting node; the permission certificate includes the size of the migration data to be received, the location information of the requesting node, and the legality signature of the central node for this data migration; the second migration request also includes a data migration time period; the data migration time period is used to negotiate with the target node to obtain the target migration time period; The requesting node also sends data migration information to the SD-WAN orchestrator and controller, so that the SD-WAN orchestrator and controller establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period; the data migration information includes the location information of the requesting node, the location information of the target node, the target migration period, and the required bandwidth information.

8. A data migration device applied to a request node, characterized in that, The device includes: The first request sending module is used to send a first migration request to the central node. The first migration request includes the location information of the requesting node and the size of the data to be migrated. The requesting node is an edge node. The central node determines the target node among the multiple edge nodes based on the location information of the requesting node and the size of the data to be migrated, combined with the storage resource information of multiple edge nodes. The central node also sends the network address of the target node to the requesting node and sends a license certificate to the target node. A location receiving module is used to receive the location information of the target node sent by the central node; The second request sending module is used to send a second migration request to the target node, so that the target node sends a confirmation message accepting the migration to the requesting node if the information carried in the second migration request meets the permission certificate; the permission certificate includes the size of the migration data to be received, the location information of the requesting node, and the legality signature of the central node for this data migration; the second migration request also includes a data migration time period; the data migration time period is used to negotiate with the target node to obtain the target migration time period; The migration information sending module is used to send data migration information to the SD-WAN orchestrator and controller, so that the SD-WAN orchestrator and controller establish an SD-WAN channel between the requesting node and the target node before the target migration period, and perform data migration through the SD-WAN channel during the target migration period; The data migration information includes the location information of the requesting node, the location information of the target node, the target migration time period, and the required bandwidth information.

9. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the data migration method of any one of claims 1-6 by executing the executable instructions.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the data migration method according to any one of claims 1-6.