Data downloading method and device

By receiving the mirror download request at the target edge computing node in the edge site, sending a request to the mirror acquisition node, the mirror acquisition node downloads the mirror file, and using it as the source data node. Other target edge computing nodes obtain mirror data from this node, solving the problem of multiple edge computing nodes downloading mirror data at the same time, improving download speed and reducing traffic usage.

CN112165523BActive Publication Date: 2025-03-28TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011042381.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-09-28
Publication Date
2025-03-28
Estimated Expiration
2040-09-28

AI Technical Summary

Technical Problem

In the edge computing scenario, when multiple edge computing nodes start the same service container, all nodes access the public network at the same time to download the same mirror data, resulting in slowdown in downloading, slowdown in the startup of the business container application, and wasting public network traffic.

Method used

By receiving the mirror download request in the edge site, sending a request to the mirror acquisition node, the mirror acquisition node downloads the mirror file, and using it as the source data node, other target edge computing nodes obtain mirror data from the node, forming a mutual acquisition mechanism.

Benefits of technology

It realizes that multiple edge computing nodes only need to download one copy of mirror data, and obtain mirror data from each other, which improves the download speed of mirror data and reduces the occupation and demand of external network resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112165523B_ABST
    Figure CN112165523B_ABST
Patent Text Reader

Abstract

The present invention discloses a data downloading method and device, which can be used for data transmission of edge sites in a cloud system. The method can receive an image download request through at least two target edge computing nodes in the edge site; send an image download request to an image acquisition node through at least one target edge computing node among the target edge computing nodes; download a target image file according to download information through the image acquisition node; determine the image acquisition node as a source data node, control at least one target edge computing node, and obtain data of the target image file from the source data node; determine the target edge computing node that has obtained part of the data of the target image file as a newly added source data node; select respective source data nodes from existing source data nodes through each target edge computing node to download data of the target image file, thereby improving the download speed of the image data and reducing the traffic resources required for downloading.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communications, and in particular to a data downloading method and device. Background Art

[0002] In edge computing scenarios, such as Figure 1 As shown in the figure, an edge cluster manages multiple edge sites, each of which has multiple edge computing nodes. These edge computing nodes must have the ability to access the external network, such as configuring a separate public IP (Internet Protocol) address for the edge computing node. When the cloud management starts the edge service, one or more edge computing nodes in an edge site start a business container, or when several edge computing nodes in an edge site have deployed business container services, other edge computing nodes in the edge site need to expand the same business container service. These edge computing nodes need to download container image data concurrently, such as Figure 2 shown.

[0003] In the process of research and practice of the prior art, the inventors of the present invention found that when multiple edge computing nodes start the same business container, all edge computing nodes will simultaneously access the public network to download the same image data. Especially when all edge computing nodes share a public network exit, the speed of downloading the image data will be slower, the startup of the business container application will also be slower, and a large amount of public network traffic will be wasted. Summary of the invention

[0004] The embodiments of the present invention provide a data downloading method, apparatus, computer equipment and storage medium, so that when multiple edge computing nodes start the same business container, they only need to download one copy of mirror data and obtain mirror data from each other, thereby improving the download speed of the mirror data and reducing the traffic resources required for downloading.

[0005] An embodiment of the present invention provides a data download method, which is applicable to an edge site, wherein one edge site includes at least two edge computing nodes, wherein the at least two edge computing nodes include an image acquisition node, and the image acquisition node is a node in the edge computing node that has an image file download function, and the method includes:

[0006] Receiving an image download request through at least two target edge computing nodes in an edge site, wherein the image download request includes download information of a target image file;

[0007] Sending the image download request to an image acquisition node in the edge site through at least one of the target edge computing nodes;

[0008] Downloading the target image file according to the download information through the image acquisition node;

[0009] Determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and obtain data of the target image file from the source data node;

[0010] Determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node;

[0011] Each of the target edge computing nodes selects a respective source data node from the existing source data nodes to download the data of the target image file.

[0012] Accordingly, an embodiment of the present invention further provides a data downloading device, which is applicable to an edge site, wherein one edge site includes at least two edge computing nodes, wherein the at least two edge computing nodes include an image acquisition node, and the image acquisition node is a node in the edge computing node that has an image file downloading function, and the device includes:

[0013] A download request receiving unit, configured to receive an image download request through at least two target edge computing nodes in an edge site;

[0014] A download request sending unit, configured to send the image download request to the image acquisition node in the edge site through at least one of the target edge computing nodes, wherein the image download request includes download information of the target image file;

[0015] A downloading unit, configured to download the target image file according to the download information through the image acquisition node;

[0016] A data acquisition unit, configured to determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and acquire data of the target image file from the source data node;

[0017] A node adding unit, used to determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node;

[0018] The selection unit is used to select respective source data nodes from existing source data nodes through each target edge computing node to download data of the target image file.

[0019] Optionally, in some embodiments of the present invention, the at least two edge computing nodes further include a state retrieval node;

[0020] The data acquisition unit is further configured to add the image acquisition node as the source data node to the download control list of the target image file through the status retrieval node;

[0021] Sending the download control list to the target edge computing node through the status retrieval node;

[0022] The node location information of the source data node is obtained based on the download control list through at least one target edge computing node, and the data of the target image file is obtained from the source data node according to the node location information.

[0023] Optionally, in some embodiments of the present invention, the node adding unit is further used to use the state retrieval node to take the target edge computing node that has obtained part of the data of the target image file as a newly added source data node, and update the download control list based on the newly added source data node;

[0024] Sending the updated download control list to the target edge computing node through the status retrieval node;

[0025] The selection unit is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through each of the target edge computing nodes to download the data of the target image file.

[0026] Optionally, in some embodiments of the present invention, the data acquisition unit is further used to divide the target image file into multiple file blocks through the image acquisition node, and generate a seed file of the target image file based on the file blocks, wherein the seed file includes attribute information of the file blocks;

[0027] Sending the seed file to the target edge computing node through the image acquisition node;

[0028] The selection unit is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through the target edge computing nodes, and download the file blocks of the target image file from the respective source data nodes based on the seed file.

[0029] Optionally, in some embodiments of the present invention, the selection unit is further configured to select, through each of the target edge computing nodes, a source data node from existing source data nodes that continues to download data of the target image file as a data download node;

[0030] Obtain downloaded file block information of the corresponding data download node through the target edge computing node, and determine the target download file block of the target edge computing node in the downloaded file block of the data download node based on the seed file and the downloaded file block information;

[0031] The target edge computing node obtains its own target download file block from the corresponding data download node based on the seed file.

[0032] Optionally, in some embodiments of the present invention, the download control list further includes available bandwidth information of each source data node;

[0033] The selection unit is further configured to obtain the available bandwidth information of each of the source data nodes through the status retrieval node, add the available bandwidth information to the download control list, and send the download control list to the target edge computing node;

[0034] Selecting the data download node through the target edge computing node based on the available bandwidth information of each existing source data node in the download control list;

[0035] The device also includes:

[0036] The target edge computing node sends information of the data download node selected by the state retrieval node to trigger the state retrieval node to update the available bandwidth information of the source data node.

[0037] Optionally, in some embodiments of the present invention, the selection unit is further used to determine the order of adding each of the source data nodes in the download control list through each of the target edge computing nodes;

[0038] Through each of the target edge computing nodes, a source data node that is located before itself in the adding order and adjacent to itself is selected in the download control list as the data download node.

[0039] Optionally, in some embodiments of the present invention, the download control list further includes downloaded file block information of each source data node;

[0040] The selection unit is further configured to determine, through the target edge computing node, the downloaded file block information of the existing source data node from the updated download control list;

[0041] Determine, by the target edge computing node, its own target download file block based on the seed file and its own downloaded file block information;

[0042] Determine, by the target edge computing node, the data download node from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes;

[0043] The target download file block is downloaded from the data download node through the target edge computing node.

[0044] Optionally, in some embodiments of the present invention, the number of the target download file blocks is multiple;

[0045] The selection unit is further configured to select, through the target edge computing node, a data download node for each target download file block from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes;

[0046] The target download file block corresponding to the target download file block is downloaded from the data download node selected for each target download file block through the target edge computing node.

[0047] Optionally, in some embodiments of the present invention, the target edge computing node stores node location information of the mirror acquisition node;

[0048] The data acquisition unit is further configured to acquire node location information of the mirror acquisition node from information stored in the mirror acquisition node through at least one target edge computing node, determine the mirror acquisition node from the edge computing node based on the node location information, and determine the mirror acquisition node as the source data node;

[0049] The data of the target image file is obtained from the image acquisition node through the at least one target edge computing node.

[0050] The embodiment of the present invention provides a data download method and device, the method is applicable to an edge cluster, the edge cluster includes at least one edge site, one edge site includes at least two edge computing nodes, at least two edge computing nodes include an image acquisition node, the image acquisition node is a node in the edge computing node with an image file download function, the method receives an image download request through at least two target edge computing nodes in the edge site, the image download request includes download information of the target image file; then, through at least one target edge computing node among the target edge computing nodes, sends an image download request to the image acquisition node in the edge site; then, through the image acquisition node, downloads the target image file according to the download information; and then The image acquisition node is determined as the source data node, and at least one target edge computing node is controlled to obtain the data of the target image file from the source data node; then, the target edge computing node that has obtained part of the data of the target image file is determined as the newly added source data node; finally, each target edge computing node selects its own source data node from the existing source data nodes to download the data of the target image file, so that when multiple edge computing nodes in the same edge site start the same business container, they only need to download one copy of the image data through the external network, and the image data can be exchanged through communication between the edge computing nodes, thereby reducing the occupation and demand of external network resources, improving the download speed of the image data, and reducing the traffic resources required for downloading. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.

[0052] Figure 1 It is a structural diagram of an edge computing scenario provided by an embodiment of the present invention;

[0053] Figure 2 It is a schematic diagram of a structure in which multiple edge computing nodes download mirror data according to an embodiment of the present invention;

[0054] Figure 3 is a scenario schematic diagram of a data downloading method provided by an embodiment of the present invention;

[0055] Figure 4 is a flow chart of a data downloading method provided by an embodiment of the present invention;

[0056] Figure 5 is another flow chart of the data downloading method provided by an embodiment of the present invention;

[0057] Figure 6is a scenario schematic diagram of a data downloading method provided by an embodiment of the present invention;

[0058] Figure 7 is another scenario schematic diagram of the data downloading method provided by an embodiment of the present invention;

[0059] Figure 8 is a structural schematic diagram of a data downloading device provided by an embodiment of the present invention;

[0060] Fig. 9 It is a schematic diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0061] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0062] An embodiment of the present invention provides a data downloading method, apparatus, computer equipment and storage medium. Specifically, the data downloading method of the embodiment of the present invention can be applicable to edge sites within an edge cluster of a cloud system, wherein the edge cluster includes at least one edge site, an edge site includes at least two edge computing nodes, and the edge computing node can be a terminal or a server device.

[0063] Among them, cloud systems can use cloud computing for data processing. Cloud computing is a computing model that distributes computing tasks on a resource pool composed of a large number of computers, so that various application systems can obtain computing power, storage space and information services as needed. The network that provides resources is called a "cloud". From the user's perspective, the resources in the "cloud" can be infinitely expanded and can be obtained at any time, used on demand, expanded at any time, and paid for by use.

[0064] As a provider of basic cloud computing capabilities, a cloud computing resource pool (referred to as a cloud platform, generally referred to as an IaaS (Infrastructure as a Service) platform) will be established, and various types of virtual resources will be deployed in the resource pool for external customers to choose to use. The cloud computing resource pool mainly includes: computing devices (virtualized machines, including operating systems), storage devices, and network devices. In this embodiment, the edge cluster, the edge site in the edge cluster, and the edge computing node in the edge site can be regarded as different computing resource units in the computing resource pool, which can be called by the cloud system as needed.

[0065] Among them, at least two edge computing nodes of the edge site include an image acquisition node, and the image acquisition node is a node in the edge computing node with an image file download function. The terminal can be a terminal device such as a smart phone, a tablet computer, a laptop, a touch screen, a game console, a personal computer (PC), a personal digital assistant (PDA), etc. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content distribution network services, and big data and artificial intelligence platforms.

[0066] The data download method provided by the present invention involves edge computing technology. Edge computing originated in the field of media. It refers to an open platform that integrates network, computing, storage, and application core capabilities on the side close to the source of objects or data, providing the nearest service nearby. Its application is initiated on the edge side, resulting in a faster network service response, meeting the basic needs of the industry in terms of real-time business, application intelligence, security and privacy protection, etc. Many controls can be implemented through local devices without being handed over to the cloud. The processing process will be completed at the local edge computing layer, which will greatly improve processing efficiency and reduce the load on the cloud. Because it is closer to the user, it can also provide users with faster responses and solve their needs at the edge. Edge computing is between the physical entity and the industrial connection, or at the top of the physical entity. Cloud computing can still access historical data of edge computing.

[0067] It is understandable that the data download method of this embodiment can be executed on the terminal, can be executed on the server, or can be executed by the terminal and the server together. The above examples should not be construed as limiting the present invention.

[0068] See also Figure 3 , Figure 3A schematic diagram of a scenario of a data downloading method provided in an embodiment of the present invention. The data download system includes a cloud management and control device 10, an edge site 20, and an edge site 30. The edge site 20 is used as a target edge site. The target edge site includes at least two edge computing nodes, and the at least two edge computing nodes include an image acquisition node and a status retrieval node. When the target edge site starts a business container, at least two target edge computing nodes in the target edge site receive an image download request sent by a client. The two target edge computing nodes send an image download request to the image acquisition node in the target edge site. The image download request includes download information of the target image file. The image acquisition node downloads the target image file according to the download information, so that the target edge site only downloads one copy of the target image file, reducing the traffic resources and time required for downloading. After that, the image acquisition node is determined as a source data node, and at least one of the target edge computing nodes is controlled to obtain the data of the target image file from the source data node. Then, the target edge computing node that has obtained part of the data of the target image file is determined as a newly added source data node. Each target edge computing node selects its own source data node from the existing source data nodes to download the data of the target image file, so that the speed at which multiple edge computing nodes download the target image file is accelerated.

[0069] Above Figure 3 The example is only an example of a system architecture for implementing the embodiment of the present invention. The embodiment of the present invention is not limited to the above Figure 3 The system structure shown is based on Figure 3 Based on the system architecture, various embodiments of the present invention are proposed.

[0070] It should be noted that the description order of the following embodiments is not intended to limit the preferred order of the embodiments.

[0071] This embodiment will be described from the perspective of a data downloading device. The data downloading device may be integrated into an electronic device, which may be a server or a terminal.

[0072] An embodiment of the present invention provides a data download method, which is applicable to an edge cluster, wherein the edge cluster includes at least one edge site, wherein one edge site includes at least two edge computing nodes, wherein at least two edge computing nodes include an image acquisition node, and the image acquisition node is a node in the edge computing node that has an image file download function. The method can be executed by a processor of an electronic device, such as Figure 4 As shown, the specific process of the data download method can be as follows:

[0073] Step 201: Receive an image download request through at least two target edge computing nodes in an edge site, where the image download request includes download information of a target image file.

[0074] In some embodiments, all edge computing nodes within the edge site act as target edge computing nodes and receive image download requests sent by the client, so that all edge computing nodes within the edge site download the same target image file according to the received image download requests.

[0075] In one implementation, some edge computing nodes within the edge site serve as target edge computing nodes and receive image download requests sent by the client, so that some edge computing nodes within the edge site download the same target image file according to the received image download requests.

[0076] The image download request includes download information of the target image file. For example, the download information includes name information and tags of the target image file, index information of layers included in the target image file, and hash values ​​of data of each layer.

[0077] Among them, mirroring is a form of file storage and a type of redundancy. The data on one disk has an identical copy on another disk, which is called a mirror. Similar to a compressed package, a mirror file converts a specific series of files into a single file in a certain format to facilitate users to download and use, such as an operating system, game, etc. Its most important feature is that it can be recognized by specific software and can be directly burned to a disc. More information can be included in the mirror file, such as system files, boot files, partition table information, etc., so that the mirror file can contain all the information of a partition or even a hard disk.

[0078] Step 202: Send the image download request to the image acquisition node in the edge site through at least one of the target edge computing nodes.

[0079] In some embodiments, the target edge computing node within the edge site includes an image acquisition node, and other target edge computing nodes except the target edge computing node including the image acquisition node send image download requests to the target edge computing node with the image acquisition node, and then the target edge computing node including the image acquisition node sends the image download requests sent by other target edge computing nodes to the image acquisition node, and the target edge computing node including the image acquisition node also sends the image download requests it has received to the image acquisition node.

[0080] In one embodiment, the target edge computing node in the edge site includes more than two image acquisition nodes, one of the image acquisition nodes is used as the main image acquisition node, and the other image acquisition nodes are used as auxiliary image acquisition nodes. The other target edge computing nodes except the target edge computing node including the main image acquisition node send image download requests to the target edge computing node with the main image acquisition node, and then the target edge computing node including the main image acquisition node sends the image download requests sent by other target edge computing nodes to the main image acquisition node, and the target edge computing node including the main image acquisition node also sends the image download request received by itself to the main image acquisition node. If the main image acquisition node fails, one of the other auxiliary image acquisition nodes is selected as the main image acquisition node.

[0081] In one implementation, all target edge computing nodes directly send image download requests to the image acquisition node.

[0082] In some embodiments, all edge computing nodes within the edge site are pre-configured with the mirror node location information of the mirror acquisition node, such as the IP address, physical address, etc., wherein the primary mirror acquisition node and the secondary mirror acquisition node are identified so that the edge computing node can distinguish between the primary mirror acquisition node and the secondary mirror acquisition node.

[0083] In some embodiments, the target edge computing node does not include an image acquisition node, and the image acquisition node is located in other edge computing nodes in the edge site except the target edge computing node. The target edge computing node determines the location of the image acquisition node based on the image node positioning information of the pre-configured image acquisition node, and sends an image download request to the image acquisition node.

[0084] Step 203: Download the target image file according to the download information through the image acquisition node.

[0085] In some embodiments, the image acquisition node has a public IP address. After receiving the image download request, the image acquisition node obtains the index information of the layer of the target image file and the hash value of the specific layer data from the image download request. The image acquisition node downloads all data of the target image file from the public network based on the layer index information and the hash value of each layer data, and stores the data of the target image file in the back-end storage.

[0086] In one implementation, the image acquisition node obtains the hash value of the specific layer of data of the target image file that the target edge computing node requests to download from the image download request, the image acquisition node downloads the data of this layer from the public network, and then sends the data of this layer to the target edge computing node. If the image acquisition node receives download information of other layers of data of the target image file again, the image acquisition node downloads the data of this layer from the public network again and sends it to other target edge computing nodes.

[0087] Step 204: determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and obtain data of the target image file from the source data node.

[0088] In some embodiments, the target edge computing node in the edge site includes a state retrieval node, and all edge computing nodes in the edge site are pre-configured with node location information of the state retrieval node, such as IP address information. The image acquisition node communicates with the state retrieval node according to the node location information of the state retrieval node, and sends its own node location information, such as IP address, and the label of the downloaded target image file to the state retrieval node. The state retrieval node uses the image acquisition node as a source data node and adds the image acquisition node to the download control list. At least one target edge computing node communicates with the state retrieval node according to the pre-configured node location information of the state retrieval node, and sends the label of the target image file to be downloaded to the state retrieval node. The state retrieval node sends the download control list corresponding to the target image file to the target edge computing node. The target edge computing node obtains the node location information of the source data node according to the download control list, and obtains the data of the target image file from the source data node.

[0089] In one embodiment, a target edge computing node in an edge site includes a state retrieval node, node location information of the state retrieval node is pre-configured in the image acquisition node, the image acquisition node divides the target image file into multiple file blocks, generates a seed file of the target image file based on the file blocks and the node location information of the state retrieval node, sends the seed file to the target edge computing node, the target edge computing node obtains the node location information of the state retrieval node according to the seed file, and communicates with the state retrieval node.

[0090] Among them, the seed file (BitTorrent, BT) is also called BT download, abnormal download, is a multi-point download source code open P2P (Peer to Peer, peer-to-peer network) software, which is very convenient to use, similar to a browser plug-in, suitable for newly released popular downloads. Its characteristics are: the more devices download, the faster the speed is generally.

[0091] Optionally, the sizes of the multiple file blocks may all be equal, may all be unequal, or the sizes of some of the multiple file blocks may be equal. The size setting of the file blocks is not restricted and may be flexibly set according to actual conditions.

[0092] In some embodiments, node location information of the image acquisition node is pre-configured in all edge computing nodes within the edge site, and at least one target edge computing node communicates with the image acquisition node according to the pre-configured node location information of the image acquisition node to obtain data of the target image file from the image acquisition node, i.e., the source data node.

[0093] In one embodiment, the target edge computing node in the edge site does not include a state retrieval node, and only the node location information of the state retrieval node is configured in the image acquisition node. The target edge computing node obtains the node location information of the state retrieval node according to the seed file sent by the image acquisition node, or the node location information of the state retrieval node is pre-configured in all edge computing nodes in the edge site. The image acquisition node communicates with the state retrieval node according to the node location information of the state retrieval node. The state retrieval node adds the image acquisition node as source data to the download control list. The target edge acquisition node communicates with the state retrieval node according to the node location information of the state retrieval node, receives the download control list sent by the state retrieval node, and the target edge acquisition node obtains the data of the target image file from the source data node based on the download control list.

[0094] Optionally, the image acquisition node and the state retrieval node may belong to the same edge computing node in the edge station, or may not belong to the same edge computing node.

[0095] In one embodiment, all edge computing nodes within the edge site include at least one status retrieval node, and each status retrieval node sets a download control list corresponding to a different status retrieval node according to the label of the target image file, thereby managing the source data node that has downloaded part of the target image file data.

[0096] Step 205: Determine the target edge computing node that has obtained part of the data of the target image file as a newly added source data node.

[0097] In some embodiments, the target edge computing node that has obtained partial data of the target image file communicates with the status retrieval node, the status retrieval node uses the target edge computing node that has obtained partial data of the target image file as a newly added source data node, the status retrieval node adds the newly added source data node to the download control list, thereby updating the download control list, the status retrieval node sends the updated download control list to the target edge computing node, and the target computing node selects its own source data node according to the existing source data node in the download control list to download the data of the target image file.

[0098] In one embodiment, a target edge computing node that has not obtained the target image file communicates with a status retrieval node and sends a label of the target image file that it is about to download to the status retrieval node. The status retrieval node adds the target edge computing node that has not obtained the target image file to a download control list based on the label of the target image file. The status retrieval node sends the updated download control list to the target edge computing node that communicates with the status retrieval node. The target edge computing node downloads data of the target image file obtained from an existing source data node based on the download control list and communicates with the status retrieval node regularly. The status retrieval node uses the target edge computing node that has obtained part of the target image file data as a newly added source data node.

[0099] Among them, the newly added source data node can be a target edge computing node for obtaining at least one minimum unit of data of the target image file, for example, a target edge computing node for obtaining 1 bit of target image file data, or a target edge computing node for obtaining at least one file block, or a target edge computing node for obtaining data of any proportion of the size of the target image file, for example, a target edge computing node for obtaining 10% of the target image file data.

[0100] Step 206: Select a respective source data node from the existing source data nodes through each of the target edge computing nodes to download data of the target image file.

[0101] In some embodiments, the status retrieval node sends the updated download control list to each target edge computing node, and each target edge computing node selects a source data node from the existing source data nodes in the download control list to continue downloading the data of the target image file as a data download node. Each target edge computing node obtains the node positioning information of its corresponding data download node through the download control list, communicates with its corresponding data download node according to the node positioning information, obtains the downloaded file blocks of the data download node selected by itself, and the target edge computing node obtains the file blocks that it has not downloaded according to the seed file, determines the file blocks that it has not downloaded contained in the downloaded file blocks of the data download node, and uses them as the target download file blocks of the target edge computing node. After that, the target edge computing node downloads its own target download file blocks from the data download node corresponding to itself.

[0102] In one embodiment, when the status retrieval node adds each source data node to the download control list, it obtains the current available bandwidth information of each source data node, and adds the current available bandwidth information of each source data node to the download control list, and sends it to each target edge computing node. After each target edge computing node receives the download control list sent by the status retrieval node, it obtains the available bandwidth information of each source data node in the download control list, and determines the source data node with the largest available bandwidth among the existing source data nodes as the data download node according to the available bandwidth information.

[0103] In some embodiments, each target edge computing node periodically communicates with the status retrieval node and sends to the status retrieval node information of the data download node currently selected by each of them, such as the node location information of the data download node, the bandwidth information occupied when downloading data from the data download node, etc. The status retrieval node updates the available bandwidth information of each source data node in the download control list according to the information of the data download node sent by the target edge computing node.

[0104] In one embodiment, the status retrieval node periodically communicates with each source data node to obtain the current bandwidth information of each source data node, for example, the used bandwidth information of each source data node sending data to the target edge computing node, the number of target edge computing nodes to which each source data node is sending data, the total used and unused bandwidth of each source data node, etc. The status retrieval node updates the available bandwidth information of each source data node in the download control list based on the obtained current bandwidth information.

[0105] In one implementation, after each target edge computing node obtains the download control list, it communicates with the existing source data nodes in the download control list to obtain the available bandwidth information of each existing source data node. The target edge computing node selects a data download node based on the available bandwidth information of each existing source data node.

[0106] In one embodiment, the state retrieval node adds each source data node to the download control list in a certain adding order, and each target edge computing node obtains the adding order of the source data nodes, determines its own position in the adding order, and thus selects the source data node that is before and adjacent to itself as the data download node according to the adding order.

[0107] Among them, the status retrieval node can determine the order of adding each source data node according to the time sequence in which each source data node joins the download control list, and / or determine the order of adding each source data node according to the available bandwidth information of each source data node, and / or determine the order of adding each source data node according to the amount of data of the target mirror file included in each source data node, and so on.

[0108] In one embodiment, if each target edge computing node communicates with the selected data download node and confirms that the selected data download node does not include its own target download file block, then each target edge computing node reselects a new data download node according to the same rules and confirms whether the newly selected data download node includes its own target download file block until it is confirmed that the selected data download node includes its own target download file block.

[0109] In some embodiments, the download control list may include downloaded file block information of each source data node, and the downloaded file block information is used to identify the specific file blocks of the target image file that each source data node has downloaded, for example, the hash value of the data of the downloaded file block, the number of the downloaded file block in the target image file, etc. The source data node periodically communicates with the status retrieval node and sends its own downloaded file block information to the status retrieval node. The status retrieval node adds the downloaded file block information of each source data node to the download control list. Each target edge computing node determines the corresponding target download file block based on the seed file and its own downloaded file block. Each target edge computing node obtains the downloaded file block information of each source data node in the download control list, and selects at least one data download node based on the downloaded file block information and its own target download file block.

[0110] In one embodiment, each target edge computing node selects at least one data download node based on the downloaded file block information of each source data node and its own target download file block, including: each target edge computing node selects a source data node including all of its own target download file blocks as a data download node, and the target edge computing node sequentially downloads its own target download file blocks from the corresponding data download nodes until all target download file blocks are downloaded; or each target edge computing node selects multiple source data nodes as data download nodes, each data download node includes at least one target download file block, and the target edge computing node simultaneously downloads its own target download file blocks from the corresponding multiple data download nodes, thereby reducing the time for the target edge computing node to download the target download file blocks until all target download file blocks are downloaded.

[0111] According to the method described in the previous embodiment, the data downloading device will be further described in detail below by taking the example of being specifically integrated in the server.

[0112] The present application embodiment provides a data download method, such as Figure 5 As shown, the specific process of the data download method can be as follows:

[0113] Step 301: The client executes a download command for a target image file.

[0114] For example, the client uses the docker engine to execute the docker pull 127.0.0.1:5004 / {image name}:{image Tag} command.

[0115] Step 302: The client sends an image download request for the target image file to the target edge computing node according to the download command.

[0116] For example, the client downloads the layer index of the target image file, obtains information of each layer, generates an image download request for the layer data of the target image file according to the hash value of the layer data, and sends the image download request to the target edge computing node.

[0117] Step 303: The target edge computing node receives the image download request and sends a seed file request for the target image file to the image acquisition node.

[0118] For example, the target edge computing node receives the image download request and triggers a seed file acquisition task based on the hash value of the layer data. The target edge computing node executes the task according to the node positioning information of the pre-configured image acquisition node and sends a seed file request for the target image file to the image acquisition node.

[0119] Step 304: The image acquisition node receives the seed file request and downloads the target image file.

[0120] For example, the image acquisition node receives a seed file request, identifies a target image file to be downloaded, downloads the target image file through the public network, and stores it in a backend storage area.

[0121] Step 305: The image acquisition node generates a seed file and sends the seed file to the target edge computing node.

[0122] For example, the image acquisition node sets the length of the file block according to the data of the target image file, divides the target image file into multiple file blocks, generates a hash value of the file block using a hash algorithm, generates a seed file based on the hash value of the file block, and sends the seed file to the target edge computing node.

[0123] Step 306: The status retrieval node adds the image acquisition node as a source data node to the download control list.

[0124] For example, the image acquisition node communicates with the status retrieval node through the node positioning information of the status retrieval node, and sends the data of the target image file downloaded by itself to the status retrieval node. The status retrieval node uses the image acquisition node as the source data node, and adds the node positioning information of the source data node and the data of the target image file downloaded by the source data node to the download control list.

[0125] Step 307: The target edge computing node downloads data of part of the target image file from the source data node.

[0126] Step 308: The state retrieval node adds the target edge computing node for downloading part of the data as a newly added source data node to the download control list.

[0127] For example, the target edge computing node obtains the node location information of the state retrieval node through the seed file, communicates with the state retrieval node through the node location information of the state retrieval node, and sends the data of the target image file downloaded by itself to the state retrieval node. The state retrieval node uses the target edge computing node as a newly added source data node, and adds the node location information of the newly added source data node and the data of the downloaded target image file to the download control list.

[0128] Step 309: The target edge computing node receives data for selecting respective source data nodes from existing source data nodes to download the target image file through the download control list.

[0129] For example, the target edge computing node periodically communicates with the status retrieval node and sends the file blocks of the target image file downloaded by itself. The status retrieval node updates the download control list and sends the updated download control list to the target edge computing node. The target edge computing node determines its own target download file blocks through the seed file, selects at least one source data node whose downloaded file blocks include the target download file blocks from the control list as the data download node, and downloads the target download file blocks from the data download node.

[0130] Please also read Figure 6 At least one client sends an image download request to at least two target edge computing node agents in the edge site. The target edge computing node agent sends the image download request to the image acquisition node proxy. The image acquisition node proxy downloads the target image file from the public network according to the download information included in the image download request, and stores it in the local storage area or cloud storage area stored in the back-end storage of the image acquisition node proxy. The image acquisition node proxy divides the target image file into multiple file blocks to form a seed file containing file block attribute information, node location information of the state retrieval node tracker, and other information. The image acquisition node proxy sends the seed file to the target edge computing node agent and communicates with the state retrieval node tracker. The state retrieval node tracker er adds the image acquisition node proxy as the source data node to the download control list. The target edge computing node agent obtains the node location information of the state retrieval node tracker according to the seed file, and sends a download request for the target image file to the state retrieval node tracker. The state retrieval node tracker sends a download control list to the target edge computing node agent. The target edge computing node agent downloads the data of the target image file from the source data node according to the download control list, and communicates with the state retrieval node tracker regularly. The state retrieval node tracker takes the target edge computing node agent that downloads part of the target image file data as a newly added source data node and adds it to the download control list. The source data nodes in the download control list form a P2P network.

[0131] Each target edge computing node determines its own target download file block based on the seed file and its own downloaded file blocks, selects the corresponding download data node from each existing source data node in the p2p network, and downloads its own target download file block from the download data node.

[0132] Please also read Figure 7 , Figure 7The invention comprises a client 401, a target edge computing node 402, an image acquisition node 403, a backend storage area 404 of the image acquisition node, and a state retrieval node 405. The client sends a download request for a layer of a target image file to the target edge computing node 402. The task manager of the target edge computing node 402 receives the download request for the layer and requests a corresponding seed file. The target edge computing node 402 sends a seed file acquisition request to the image acquisition node 403. The task manager of the image acquisition node 403 receives the seed file acquisition request, reads the backend storage area 404, acquires data of the target image file, generates a seed file, and sends the seed file to the target edge computing node. The target edge computing node 402 is connected to the p2p network, and the image acquisition node 403 communicates with the state retrieval node 405. As a source data node, it joins the p2p network with the data of the target image file. The target edge computing node 402 receives the seed file, communicates with the state retrieval node 405, downloads the data of the target image file from the source data node, and joins the p2p network as a newly added source data node with part of the downloaded target image file. Based on the p2p network interaction data, each target edge computing node 402 selects its own data download node from the existing source data node, downloads the data of the target image file, and returns the downloaded data to the task manager, which is sent to the client 401 through the task manager.

[0133] As can be seen from the above, a data download method provided by an embodiment of the present invention can receive an image download request through at least two target edge computing nodes in an edge site, and the image download request includes download information of a target image file; then, through at least one target edge computing node among the target edge computing nodes, an image download request is sent to an image acquisition node in the edge site; then, the target image file is downloaded according to the download information through the image acquisition node; further, the image acquisition node is determined as a source data node, and at least one target edge computing node is controlled to obtain data of the target image file from the source data node; then, the target edge computing node that has obtained part of the data of the target image file is determined as a newly added source data node; finally, each target edge computing node selects its own source data node from the existing source data nodes to download the data of the target image file, so that when multiple edge computing nodes start the same business container, they only need to download one copy of the image data and obtain the image data from each other, thereby improving the download speed of the image data and reducing the traffic resources required for downloading.

[0134] In order to better implement the above method, the present application embodiment also provides a data downloading device, such as Figure 8As shown, the data download device is suitable for an edge site, one of the edge sites includes at least two edge computing nodes, the at least two edge computing nodes include an image acquisition node, the image acquisition node is a node in the edge computing node that has an image file download function, and can include a download request receiving unit 501, a download request sending unit 502, a download unit 503, a data acquisition unit 504, a node adding unit 505 and a selection unit 506, as follows:

[0135] (1) Download request receiving unit 501;

[0136] The download request receiving unit 501 is used to download the target image file according to the download information through the image acquisition node.

[0137] (2) download request sending unit 502;

[0138] The download request sending unit 502 is used to send the image download request to the image acquisition node in the edge site through at least one of the target edge computing nodes, and the image download request includes download information of the target image file.

[0139] (3) Download unit 503

[0140] The downloading unit 503 is configured to download the target image file according to the download information through the image acquisition node.

[0141] (4) Data acquisition unit 504

[0142] The data acquisition unit 504 is used to determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and acquire the data of the target image file from the source data node.

[0143] (5) Node new unit 505

[0144] The node adding unit 505 is used to determine the target edge computing node that has obtained part of the data of the target image file as a newly added source data node.

[0145] (6) Selection unit 506

[0146] The selection unit 506 is configured to select a respective source data node from the existing source data nodes through each target edge computing node to download the data of the target image file.

[0147] Optionally, in some embodiments of the present invention, the at least two edge computing nodes further include a state retrieval node;

[0148] The data acquisition unit 504 is further configured to add the image acquisition node as the source data node to the download control list of the target image file through the status retrieval node;

[0149] Sending the download control list to the target edge computing node through the status retrieval node;

[0150] The node location information of the source data node is obtained based on the download control list through at least one target edge computing node, and the data of the target image file is obtained from the source data node according to the node location information.

[0151] Optionally, in some embodiments of the present invention, the node adding unit 505 is further used to use the state retrieval node to take the target edge computing node that has obtained part of the data of the target image file as a newly added source data node, and update the download control list based on the newly added source data node;

[0152] Sending the updated download control list to the target edge computing node through the status retrieval node;

[0153] The selection unit 506 is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through each target edge computing node to download the data of the target image file.

[0154] Optionally, in some embodiments of the present invention, the data acquisition unit 504 is further configured to divide the target image file into a plurality of file blocks through the image acquisition node, and generate a seed file of the target image file based on the file blocks, wherein the seed file includes attribute information of the file blocks;

[0155] Sending the seed file to the target edge computing node through the image acquisition node;

[0156] The selection unit 506 is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through the target edge computing nodes, and download the file blocks of the target image file from the respective source data nodes based on the seed file.

[0157] Optionally, in some embodiments of the present invention, the selection unit 506 is further configured to select, through each of the target edge computing nodes, a source data node from existing source data nodes that continues to download data of the target image file as a data download node;

[0158] Obtain downloaded file block information of the corresponding data download node through the target edge computing node, and determine the target download file block of the target edge computing node in the downloaded file block of the data download node based on the seed file and the downloaded file block information;

[0159] The target edge computing node obtains its own target download file block from the corresponding data download node based on the seed file.

[0160] Optionally, in some embodiments of the present invention, the download control list further includes available bandwidth information of each source data node;

[0161] The selection unit 506 is further configured to obtain the available bandwidth information of each of the source data nodes through the status retrieval node, add the available bandwidth information to the download control list, and send the download control list to the target edge computing node;

[0162] Selecting the data download node through the target edge computing node based on the available bandwidth information of each existing source data node in the download control list;

[0163] The device also includes:

[0164] The target edge computing node sends information of the data download node selected by the state retrieval node to trigger the state retrieval node to update the available bandwidth information of the source data node.

[0165] Optionally, in some embodiments of the present invention, the selection unit 506 is further configured to determine the order of adding each of the source data nodes in the download control list through each of the target edge computing nodes;

[0166] Through each of the target edge computing nodes, a source data node that is located before itself in the adding order and adjacent to itself is selected in the download control list as the data download node.

[0167] Optionally, in some embodiments of the present invention, the download control list further includes downloaded file block information of each source data node;

[0168] The selection unit 506 is further configured to determine, through the target edge computing node, the downloaded file block information of the existing source data node from the updated download control list;

[0169] Determine, by the target edge computing node, its own target download file block based on the seed file and its own downloaded file block information;

[0170] Determine, by the target edge computing node, the data download node from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes;

[0171] The target download file block is downloaded from the data download node through the target edge computing node.

[0172] Optionally, in some embodiments of the present invention, the number of the target download file blocks is multiple;

[0173] The selection unit 506 is further configured to select, through the target edge computing node, a data download node for each target download file block from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes;

[0174] The target download file block corresponding to the target download file block is downloaded from the data download node selected for each target download file block through the target edge computing node.

[0175] Optionally, in some embodiments of the present invention, the target edge computing node stores node location information of the mirror acquisition node;

[0176] The data acquisition unit 504 is further configured to acquire node location information of the mirror acquisition node from information stored in the at least one target edge computing node, determine the mirror acquisition node from the edge computing node based on the node location information, and determine the mirror acquisition node as the source data node;

[0177] The data of the target image file is obtained from the image acquisition node through the at least one target edge computing node.

[0178] As can be seen from the above, the embodiment of the present invention can trigger at least two target edge computing nodes in the edge site to receive the image download request through the download request receiving unit, and the image download request includes the download information of the target image file; then, the download request sending unit sends the image download request to the image acquisition node in the edge site through at least one target edge computing node among the target edge computing nodes; then, the download unit downloads the target image file according to the download information through the image acquisition node; further, the data acquisition unit determines the image acquisition node as the source data node, controls at least one target edge computing node, and obtains the data of the target image file from the source data node; then, the node addition unit determines the target edge computing node that has obtained part of the data of the target image file as the newly added source data node; finally, the selection unit selects the respective source data nodes from the existing source data nodes through each target edge computing node to download the data of the target image file, so that when multiple edge computing nodes start the same business container, they only need to download one copy of the image data and obtain the image data from each other, thereby improving the download speed of the image data and reducing the traffic resources required for downloading.

[0179] In addition, an embodiment of the present invention further provides a computer device, which may be a terminal or a server. Fig. 9 As shown, it shows a schematic diagram of the structure of a computer device involved in an embodiment of the present invention, specifically:

[0180] The computer device may include components such as a processor 601 with one or more processing cores, a memory 602 with one or more computer-readable storage media, a power supply 603, and an input unit 604. Those skilled in the art will appreciate that Fig. 9 The computer device structure shown in the figure does not constitute a limitation on the computer device, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. Among them:

[0181] The processor 601 is the control center of the computer device. It uses various interfaces and lines to connect various parts of the entire computer device. By running or executing software programs and / or modules stored in the memory 602 and calling data stored in the memory 602, it executes various functions of the computer device and processes data, thereby performing a comprehensive search of the computer device. Optionally, the processor 601 may include one or more processing cores; preferably, the processor 601 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 601.

[0182] The memory 602 can be used to store software programs and modules. The processor 601 executes various functional applications and data processing by running the software programs and modules stored in the memory 602. The memory 602 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 602 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 602 may also include a memory controller to provide the processor 601 with access to the memory 602.

[0183] The computer device also includes a power supply 603 for supplying power to various components. Preferably, the power supply 603 can be logically connected to the processor 601 through a power management system, so as to manage charging, discharging, and power consumption through the power management system. The power supply 603 can also include any components such as one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, and power status indicators.

[0184] The computer device may further include an input unit 604, which may be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.

[0185] Although not shown, the computer device may further include a display unit, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 601 in the computer device will load the executable files corresponding to the processes of one or more application programs into the memory 602 according to the following instructions, and the processor 601 will run the application programs stored in the memory 602, thereby realizing various functions, as follows:

[0186] Receiving an image download request through at least two target edge computing nodes in an edge site, wherein the image download request includes download information of a target image file;

[0187] Sending the image download request to an image acquisition node in the edge site through at least one of the target edge computing nodes;

[0188] Downloading the target image file according to the download information through the image acquisition node;

[0189] Determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and obtain data of the target image file from the source data node;

[0190] Determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node;

[0191] Each of the target edge computing nodes selects a respective source data node from the existing source data nodes to download the data of the target image file.

[0192] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0193] As can be seen from the above, this embodiment can be applied to an edge cluster, where the edge cluster includes at least one edge site, one edge site includes at least two edge computing nodes, at least two edge computing nodes include an image acquisition node, and the image acquisition node is a node in the edge computing node with an image file download function. The method receives an image download request through at least two target edge computing nodes in the edge site, and the image download request includes download information of the target image file; then, the image download request is sent to the image acquisition node in the edge site through at least one target edge computing node among the target edge computing nodes; then, the target image file is downloaded according to the download information through the image acquisition node; further, the image acquisition node is determined as a source data node, and at least one target edge computing node is controlled to obtain data of the target image file from the source data node; then, the target edge computing node that has obtained part of the data of the target image file is determined as a newly added source data node; finally, each target edge computing node selects its own source data node from the existing source data nodes to download the data of the target image file, so that when multiple edge computing nodes start the same business container, they only need to download one copy of the image data and obtain the image data from each other, thereby improving the download speed of the image data and reducing the traffic resources required for downloading.

[0194] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.

[0195] To this end, an embodiment of the present application provides a storage medium in which a plurality of instructions are stored, and the instructions can be loaded by a processor to execute the steps in any one of the data downloading methods provided in the embodiments of the present application. For example, the instructions can execute the following steps:

[0196] Receiving an image download request through at least two target edge computing nodes in an edge site, wherein the image download request includes download information of a target image file;

[0197] Sending the image download request to an image acquisition node in the edge site through at least one of the target edge computing nodes;

[0198] Downloading the target image file according to the download information through the image acquisition node;

[0199] Determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and obtain data of the target image file from the source data node;

[0200] Determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node;

[0201] Each of the target edge computing nodes selects a respective source data node from the existing source data nodes to download the data of the target image file.

[0202] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0203] The storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0204] Since the instructions stored in the storage medium can execute the steps in any data downloading method provided in the embodiments of the present application, the beneficial effects that can be achieved by any data downloading method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.

[0205] According to one aspect of the present application, a computer program product or a computer program is provided, the computer program product or the computer program comprising computer instructions, the computer instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the method provided in various optional implementations of the above-mentioned data downloading aspect.

[0206] The above is a detailed introduction to a data downloading method, device, computer equipment and storage medium provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for technical personnel in this field, according to the ideas of the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A data downloading method, characterized in that: Applicable to an edge site, one of the edge sites includes at least two edge computing nodes, the at least two edge computing nodes include an image acquisition node, the image acquisition node is a node in the edge computing node that has an image file download function, and the method includes: Receiving an image download request through at least two target edge computing nodes in an edge site, wherein the image download request includes download information of a target image file; Sending the image download request to an image acquisition node in the edge site through at least one of the target edge computing nodes; downloading the target image file through the image acquisition node according to the download information, the image acquisition node comprising a primary image acquisition node and a plurality of secondary image acquisition nodes, the primary image acquisition node being used to download the target image file according to the download information; if the primary image acquisition node sends a fault, selecting one of the plurality of secondary image acquisition nodes to replace the primary image acquisition node that has failed; Determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and obtain data of the target image file from the source data node; Determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node; Each of the target edge computing nodes selects a respective source data node from the existing source data nodes to download the data of the target image file.

2. The method according to claim 1, characterized in that The at least two edge computing nodes also include a state retrieval node; The step of determining the image acquisition node as a source data node, controlling at least one of the target edge computing nodes, and acquiring data of the target image file from the source data node includes: By means of the state retrieval node, the image acquisition node is added as the source data node to the download control list of the target image file; Sending the download control list to the target edge computing node through the status retrieval node; The node location information of the source data node is obtained based on the download control list through at least one target edge computing node, and the data of the target image file is obtained from the source data node according to the node location information.

3. The method according to claim 2, characterized in that The step of determining the target edge computing node that has obtained part of the data of the target image file as a newly added source data node includes: By means of the state retrieval node, the target edge computing node that has obtained part of the data of the target image file is used as a newly added source data node, and the download control list is updated based on the newly added source data node; Sending the updated download control list to the target edge computing node through the status retrieval node; The step of selecting a respective source data node from the existing source data nodes through each of the target edge computing nodes to download the data of the target image file includes: Through each of the target edge computing nodes, respective source data nodes are selected from the existing source data nodes in the updated download control list to download data of the target image file.

4. The method according to claim 3, characterized in that: Before the controlling at least one of the target edge computing nodes to obtain the data of the target image file from the image acquisition node, the method includes: Dividing the target image file into a plurality of file blocks through the image acquisition node, and generating a seed file of the target image file based on the file blocks, wherein the seed file includes attribute information of the file blocks; Sending the seed file to the target edge computing node through the image acquisition node; The step of selecting, through each of the target edge computing nodes, respective source data nodes from the existing source data nodes in the updated download control list to download data of the target image file includes: Through each of the target edge computing nodes, respective source data nodes are selected from the existing source data nodes in the updated download control list, and file blocks of the target image file are downloaded from the respective source data nodes based on the seed file.

5. The method according to claim 4, characterized in that The step of selecting respective source data nodes from existing source data nodes in the updated download control list through the target edge computing nodes, and downloading the file blocks of the target image file from the respective source data nodes based on the seed file includes: Selecting, through each of the target edge computing nodes, a source data node that continues to download data of the target image file from the existing source data nodes as a data download node; Obtain downloaded file block information of the corresponding data download node through the target edge computing node, and determine the target download file block of the target edge computing node in the downloaded file block of the data download node based on the seed file and the downloaded file block information; The target edge computing node obtains its own target download file block from the corresponding data download node based on the seed file.

6. The method according to claim 5, characterized in that The download control list also includes available bandwidth information of each source data node; The step of selecting, through each of the target edge computing nodes, a source data node from existing source data nodes that continues to download data of the target image file as a data download node includes: Obtaining available bandwidth information of each of the source data nodes through the status retrieval node, adding the available bandwidth information to the download control list, and sending the download control list to the target edge computing node; Selecting the data download node through the target edge computing node based on the available bandwidth information of each existing source data node in the download control list; The method further comprises: The target edge computing node sends information of the data download node selected by the state retrieval node to trigger the state retrieval node to update the available bandwidth information of the source data node.

7. The method according to claim 5, characterized in that The step of selecting, through each of the target edge computing nodes, a source data node from existing source data nodes that continues to download data of the target image file as a data download node includes: Determine, through each of the target edge computing nodes, the order in which each of the source data nodes in the download control list is added; Through each of the target edge computing nodes, a source data node that is located before itself in the adding order and adjacent to itself is selected in the download control list as the data download node.

8. The method according to claim 4, characterized in that The download control list also includes downloaded file block information of each source data node; The step of selecting respective source data nodes from existing source data nodes in the updated download control list through the target edge computing nodes, and downloading the file blocks of the target image file from the respective source data nodes based on the seed file includes: Determine, by the target edge computing node, downloaded file block information of the existing source data node from the updated download control list; Determine, by the target edge computing node, its own target download file block based on the seed file and its own downloaded file block information; Determine, by the target edge computing node, the data download node from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes; The target download file block is downloaded from the data download node through the target edge computing node.

9. The method according to claim 8, characterized in that The number of the target download file blocks is multiple; The determining, through the target edge computing node, the data download node from the source data nodes whose downloaded file blocks include the target download file blocks based on the downloaded file block information of the existing source data nodes, includes: By means of the target edge computing node, based on the downloaded file block information of the existing source data node, from the source data nodes whose downloaded file blocks include the target downloaded file block, select a data download node for each target downloaded file block; The downloading the target download file from the data download node through the target edge computing node includes: The target download file block corresponding to the target download file block is downloaded from the data download node selected for each target download file block through the target edge computing node.

10. A data downloading device, characterized in that: Applicable to an edge site, one of the edge sites includes at least two edge computing nodes, the at least two edge computing nodes include an image acquisition node, the image acquisition node is a node in the edge computing node that has an image file download function, and the device includes: A download request receiving unit, configured to receive an image download request through at least two target edge computing nodes in an edge site; A download request sending unit, configured to send the image download request to the image acquisition node in the edge site through at least one of the target edge computing nodes, wherein the image download request includes download information of the target image file; A download unit, configured to download the target image file through the image acquisition node according to the download information, wherein the image acquisition node includes a primary image acquisition node and a plurality of secondary image acquisition nodes, and the primary image acquisition node is configured to download the target image file according to the download information; if the primary image acquisition node fails, one of the secondary image acquisition nodes is selected from the plurality of secondary image acquisition nodes to replace the primary image acquisition node that fails; A data acquisition unit, configured to determine the image acquisition node as a source data node, control at least one of the target edge computing nodes, and acquire data of the target image file from the source data node; A node adding unit, used to determine a target edge computing node that has obtained part of the data of the target image file as a newly added source data node; The selection unit is used to select respective source data nodes from existing source data nodes through each target edge computing node to download data of the target image file.

11. The device according to claim 10, characterized in that The at least two edge computing nodes also include a state retrieval node; The data acquisition unit is further configured to add the image acquisition node as the source data node to the download control list of the target image file through the status retrieval node; Sending the download control list to the target edge computing node through the status retrieval node; The node location information of the source data node is obtained based on the download control list through at least one target edge computing node, and the data of the target image file is obtained from the source data node according to the node location information.

12. The device according to claim 11, characterized in that The node adding unit is further configured to use the target edge computing node that has obtained part of the data of the target image file as a newly added source data node through the state retrieval node, and update the download control list based on the newly added source data node; Sending the updated download control list to the target edge computing node through the status retrieval node; The selection unit is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through each of the target edge computing nodes to download the data of the target image file.

13. The device according to claim 12, characterized in that The data acquisition unit is further configured to divide the target image file into a plurality of file blocks through the image acquisition node, and generate a seed file of the target image file based on the file blocks, wherein the seed file includes attribute information of the file blocks; Sending the seed file to the target edge computing node through the image acquisition node; The selection unit is further configured to select respective source data nodes from the existing source data nodes in the updated download control list through the target edge computing nodes, and download the file blocks of the target image file from the respective source data nodes based on the seed file.

14. The device according to claim 13, characterized in that The selection unit is further configured to select, through each of the target edge computing nodes, a source data node from existing source data nodes that continues to download data of the target image file as a data download node; Obtain downloaded file block information of the corresponding data download node through the target edge computing node, and determine the target download file block of the target edge computing node in the downloaded file block of the data download node based on the seed file and the downloaded file block information; The target edge computing node obtains its own target download file block from the corresponding data download node based on the seed file.

15. The device according to claim 14, characterized in that The download control list also includes available bandwidth information of each source data node; The selection unit is further configured to obtain the available bandwidth information of each of the source data nodes through the status retrieval node, add the available bandwidth information to the download control list, and send the download control list to the target edge computing node; Selecting the data download node through the target edge computing node based on the available bandwidth information of each existing source data node in the download control list; The device also includes: The target edge computing node sends information of the data download node selected by the state retrieval node to trigger the state retrieval node to update the available bandwidth information of the source data node.

16. The device according to claim 14, characterized in that The selection unit is further configured to determine, through each of the target edge computing nodes, an order of adding each of the source data nodes in the download control list; Through each of the target edge computing nodes, a source data node that is located before itself in the adding order and adjacent to itself is selected in the download control list as the data download node.

17. The device according to claim 13, characterized in that The download control list also includes downloaded file block information of each source data node; The selection unit is further configured to determine, through the target edge computing node, the downloaded file block information of the existing source data node from the updated download control list; Determine, by the target edge computing node, its own target download file block based on the seed file and its own downloaded file block information; Determine, by the target edge computing node, the data download node from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes; The target download file block is downloaded from the data download node through the target edge computing node.

18. The device according to claim 17, characterized in that The number of the target download file blocks is multiple; The selection unit is further configured to select, through the target edge computing node, a data download node for each target download file block from the source data nodes whose downloaded file blocks include the target download file block based on the downloaded file block information of the existing source data nodes; The target download file block corresponding to the target download file block is downloaded from the data download node selected for each target download file block through the target edge computing node.

19. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores instructions, and the instructions are suitable for being loaded by a processor to execute the steps in the data downloading method according to any one of claims 1 to 9.

20. A computer program product, characterized in that The method comprises instructions, which, when executed by a processor, implement the steps in the data downloading method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • A method, method and apparatus for downloading a container image file

    CN109005232A

  • Data processing method and device and computing node

    CN110896404A