Data resource storage method and device, query method and device, and electronic equipment

By employing distributed hash routing tables and P2P networks in edge computing systems, the dependence of edge computing systems on centralized architectures is resolved, improving system stability and data transmission efficiency, and enabling efficient data storage and retrieval.

CN116368482BActive Publication Date: 2026-05-01BOE TECHNOLOGY GROUP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BOE TECHNOLOGY GROUP CO LTD
Filing Date
2021-10-28
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

In existing edge computing systems, edge nodes and the cloud, as well as the edge computing servers within the edge nodes, heavily rely on a centralized architecture. This leads to critical node issues affecting related nodes, resulting in insufficient system stability and security.

Method used

A distributed hash routing table is used to form a P2P network between edge computing servers and edge nodes. Data resources are identified by hash values ​​and storage target edge computing servers or nodes are located based on logical distance, reducing dependence on centralized architecture.

Benefits of technology

It improves system stability and security, reduces inter-node coupling, enhances data transmission real-time performance and processing speed, and reduces latency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116368482B_ABST
    Figure CN116368482B_ABST
Patent Text Reader

Abstract

This disclosure relates to the field of Internet of Things (IoT) technology, and more particularly to data resource storage methods and apparatus, query methods and apparatus, and electronic devices. The data resource storage method is applied to an edge computing system, the edge computing system including multiple edge nodes, and at least one of the edge nodes including multiple edge computing servers; the data resource storage method includes: in response to the edge computing server obtaining a first data resource, storing the first data resource in at least one edge computing server among the edge nodes to which the edge computing server belongs, based on a first distributed hash routing table maintained by the edge computing server and a hash value used to uniquely identify the first data resource; and in response to the edge node obtaining a second data resource, storing the second data resource in at least one edge node in the edge computing system, based on a second distributed hash routing table maintained by the edge node and a hash value used to uniquely identify the second data resource.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of Internet of Things (IoT) technology, and in particular to a data resource storage method and apparatus, a data resource query method and apparatus, a non-volatile computer-readable storage medium, and an electronic device. Background Technology

[0002] Multi-Access Edge Computing (MEC) is a distributed computing architecture. In this architecture, business requests, such as data services, are distributed to edge computing servers for processing. Because edge computing servers are closer to user terminals, they can accelerate the processing efficiency of business requests, reduce latency, and improve data real-time performance; at the same time, they reduce the pressure on the cloud.

[0003] However, in existing edge computing systems, the relationship between edge nodes and the cloud, as well as the various edge computing servers within the edge nodes, still heavily relies on a centralized architecture. This means that if a critical node encounters a problem, it will affect the nodes connected to it.

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

[0005] This disclosure provides a data resource storage method and apparatus, a data resource query method and apparatus, a non-volatile computer-readable storage medium and electronic device, thereby reducing dependence on centralized architecture to at least a certain extent and improving system stability.

[0006] According to one aspect of this disclosure, a data resource storage method is provided, applied to an edge computing system, the edge computing system including multiple edge nodes and at least one of the edge nodes including multiple edge computing servers, the data resource storage method comprising:

[0007] In response to the edge computing server acquiring the first data resource, based on the first distributed hash routing table maintained by the edge computing server and the hash value used to uniquely identify the first data resource, the first data resource is stored in at least one edge computing server among the edge nodes to which the edge computing server belongs.

[0008] In response to the edge node acquiring the second data resource, based on the second distributed hash routing table maintained by the edge node and the hash value used to uniquely identify the second data resource, the second data resource is stored in at least one edge node of the edge computing system;

[0009] In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

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

[0011] Obtain the association information of the first data resource, the association information including a keyword or keyword generation method that uniquely identifies the first data resource; and calculate a hash value for uniquely identifying the first data resource based on the keyword of the first data resource.

[0012] Obtain the association information of the second data resource, the association information including a keyword or keyword generation method that uniquely identifies the second data resource; and calculate a hash value for uniquely identifying the second data resource based on the keyword of the second data resource.

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

[0014] After the edge computing server acquires the first data resource, in response to the edge node to which the edge computing server belongs being unable to store the first data resource, the edge node to which the edge computing server belongs stores the first data resource to at least one edge node in the edge computing system based on the second distributed hash routing table and the hash value used to uniquely identify the first data resource.

[0015] In one exemplary embodiment of this disclosure, the edge computing server has an edge computing server identifier with the same value range as the hash value used to uniquely identify the first data resource; storing the first data resource to at least one edge computing server among the edge nodes to which the edge computing server belongs includes:

[0016] Obtain the edge computing server identifier of the edge computing server;

[0017] Calculate the first logical distance between the hash value used to uniquely identify the first data resource and the edge computing server identifier;

[0018] The target edge computing server is located based on the first distributed hash routing table and the first logical distance, and the first data resource is stored on the target edge computing server.

[0019] In one exemplary embodiment of this disclosure, the edge node has an edge node identifier with the same value range as the hash value used to uniquely identify the second data resource; storing the second data resource to at least one edge node in the edge computing system includes:

[0020] Obtain the edge node identifier of the aforementioned edge node;

[0021] Calculate the second logical distance between the hash value used to uniquely identify the second data resource and the edge node identifier;

[0022] The target edge node is located based on the second distributed hash routing table and the second logical distance, and the second data resource is stored in the target edge node.

[0023] According to one aspect of this disclosure, a data resource query method is provided, applied to an edge computing system, the edge computing system comprising multiple edge nodes and at least one of the edge nodes comprising multiple edge computing servers, the data resource query method comprising:

[0024] The edge computing server obtains a hash value to uniquely identify the target data resource based on the data query request, and determines the target edge computing server storing the target data resource among the edge nodes to which the edge computing server belongs by combining the hash value obtained from the data query request; and / or

[0025] The edge node obtains a hash value to uniquely identify the target data resource based on the data query request, and determines the target edge node storing the target data resource among the edge nodes of the edge computing system by combining the second distributed hash routing table maintained by the edge node, so as to read the target data resource from the target edge node;

[0026] In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

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

[0028] Obtain the association information of the target data resource, the association information including a keyword or keyword generation method that uniquely identifies the target data resource; and calculate a hash value for uniquely identifying the target data resource based on the keyword of the target data resource.

[0029] In one exemplary embodiment of this disclosure, determining the target edge computing server storing the target data resource includes:

[0030] Obtain the edge computing server identifier of the edge computing server;

[0031] Calculate the first logical distance between the hash value used to uniquely identify the target data resource and the edge computing server identifier;

[0032] Based on the first distributed hash routing table and the first logical distance, the candidate edge computing server is located to determine whether the candidate edge computing server is the target edge computing server that stores the target data resources.

[0033] In one exemplary embodiment of this disclosure, determining the target edge node storing the target data resource includes:

[0034] Obtain the edge node identifier of the aforementioned edge node;

[0035] Calculate the second logical distance between the hash value used to uniquely identify the target data resource and the edge node identifier;

[0036] Based on the second distributed hash routing table and the second logical distance, the candidate edge node is located to determine whether the candidate edge node is the target edge node that stores the target data resource.

[0037] According to one aspect of this disclosure, an edge computing system is provided, the edge computing system comprising a plurality of edge nodes and at least one of the edge nodes comprising a plurality of edge computing servers; wherein:

[0038] The plurality of edge computing servers form a first P2P network based on a first distributed hash routing table, and the edge computing servers store hash values ​​for identifying the data resources stored thereon.

[0039] The multiple edge nodes form a second P2P network based on a second distributed hash routing table, and each edge node stores a hash value used to identify the data resources stored thereon.

[0040] According to one aspect of this disclosure, a data resource storage device is provided for use in an edge computing system, the edge computing system including a plurality of edge nodes and at least one of the edge nodes including a plurality of edge computing servers, the data resource storage device comprising:

[0041] The first storage module is configured to, in response to the edge computing server obtaining the first data resource, store the first data resource in at least one edge computing server among the edge nodes to which the edge computing server belongs, based on the first distributed hash routing table maintained by the edge computing server and the hash value used to uniquely identify the first data resource.

[0042] The second storage module is configured to, in response to the edge node acquiring the second data resource, store the second data resource in at least one edge node of the edge computing system based on the second distributed hash routing table maintained by the edge node and the hash value used to uniquely identify the second data resource;

[0043] In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

[0044] According to one aspect of this disclosure, a data resource query device is provided, applied to an edge computing system, the edge computing system including multiple edge nodes and at least one of the edge nodes including multiple edge computing servers, the data resource query device comprising:

[0045] The first query module is configured to enable the edge computing server to obtain a hash value for uniquely identifying the target data resource based on a data query request, and, in conjunction with a first distributed hash routing table maintained by the edge computing server, determine the target edge computing server storing the target data resource among the edge nodes to which the edge computing server belongs, so as to read the target data resource from the target edge computing server; and / or

[0046] The second query module is used to enable the edge node to obtain a hash value for uniquely identifying the target data resource based on the data query request, and to determine the target edge node storing the target data resource in each edge node of the edge computing system by combining the second distributed hash routing table maintained by the edge node, so as to read the target data resource from the target edge node;

[0047] In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

[0048] According to one aspect of this disclosure, an electronic device is provided, comprising: a processor; and a memory for storing one or more programs that, when executed by the processor, cause the processor to perform the methods provided in some aspects of this disclosure.

[0049] According to one aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the methods provided in some aspects of this disclosure.

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

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

[0052] Figure 1 A schematic diagram of the architecture of an edge computing system in an embodiment of this disclosure is shown.

[0053] Figure 2 A schematic diagram illustrating the process of a new edge node joining a P2P network in an embodiment of this disclosure is shown.

[0054] Figure 3 A schematic diagram illustrating the process of a new edge computing server joining a P2P network in an embodiment of this disclosure is shown.

[0055] Figure 4 A flowchart illustrating a data resource storage method according to an embodiment of this disclosure is shown.

[0056] Figure 5 A schematic diagram of a process for determining the hash value of a data resource is shown in an embodiment of this disclosure.

[0057] Figure 6 A schematic diagram of a process for determining a target edge computing server is shown in an embodiment of this disclosure.

[0058] Figure 7 A schematic diagram of a K-barrel structure according to an embodiment of this disclosure is shown.

[0059] Figure 8 A schematic diagram of a process for determining a target edge node is shown in an embodiment of this disclosure.

[0060] Figure 9 A flowchart illustrating a data resource query method according to an embodiment of this disclosure is shown.

[0061] Figure 10 A schematic diagram of a process for determining a target edge computing server is shown in an embodiment of this disclosure.

[0062] Figure 11 A schematic diagram of a process for determining a target edge node is shown in an embodiment of this disclosure.

[0063] Figure 12 A schematic diagram of a data resource storage device according to an embodiment of the present disclosure is shown.

[0064] Figure 13A schematic diagram of a data resource query device according to an embodiment of this disclosure is shown.

[0065] Figure 14 A schematic diagram of the structure of a computer system for implementing an electronic device according to embodiments of the present disclosure is shown. Detailed Implementation

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

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

[0068] It should be noted that in this disclosure, the terms "including", "configured with", and "set in" are used to indicate an open-ended meaning of inclusion, and refer to the existence of other elements / components / etc. in addition to the listed elements / components / etc.

[0069] Figure 1 A schematic diagram of an exemplary edge computing system to which the data resource storage method of the present disclosure can be applied is shown. In this edge computing system, at least a plurality of edge nodes 110 are included; each edge node 110 may contain a plurality of edge computing servers 111. The edge computing servers 111 can provide a cloud-based service environment and computing capabilities within a wireless access network close to the user terminal. They can be independent servers or other hardware or software modules capable of providing edge computing services or processing edge computing business. For example, the edge computing server 111 can be an edge device management server, an edge data storage server, an edge rule engine server, an edge aggregation server, or other edge computing servers. In some exemplary embodiments, the edge computing server 111 may also include a user terminal, such as a desktop computer, a portable computer, a smartphone, a tablet computer, a camera, or a sensor.

[0070] In some exemplary embodiments, multiple edge nodes 110 can form an edge cloud 100, which can communicate with a management cloud 200 to achieve overall scheduling and management functions. For example, management functions such as edge node registration and activation can be performed on the management cloud 200, and the management cloud 200 can also use Global Server Load Balance (GSLB) technology to direct user service requests to appropriate edge nodes for processing. Furthermore, it should be understood that... Figure 1 The number of edge computing servers and edge nodes shown is merely illustrative. Depending on implementation needs, other numbers of edge computing servers and edge nodes may be required.

[0071] In this example implementation, the edge computing servers 111 in the edge nodes can form a first-layer P2P (Peer-to-Peer) network based on the DHT (Distributed Hash Table) topology algorithm, hereinafter referred to as the first P2P network. Similarly, the edge nodes 110 can form a second-layer P2P network based on the DHT topology algorithm, hereinafter referred to as the second P2P network.

[0072] For example, refer to Figure 2 As shown, new edge nodes can join the P2P network through the following steps S210 to S260. Specifically:

[0073] Step S210: Register the edge instance in the aforementioned management cloud 200.

[0074] Step S220: Deploy the new edge node and start the new edge node.

[0075] In step S230, the management cloud 200 determines whether the new edge node has been activated; if not, the new edge node is activated in step S240 and the initial edge node list is obtained in step S250.

[0076] In step S260, if it is determined in step S230 that the new edge node has been activated, then determine whether the new edge node exists in the initial edge node list; if it does not exist, then obtain the initial edge node list in step S250.

[0077] Step S270: Based on the initialized edge node list, add the new edge node to the P2P network to be joined. For example, first, generate a unique identifier for the new edge node using a hash algorithm. Second, based on the unique identifier of the new edge node and the initialized edge node list, obtain the list of edge nodes near the new edge node and their routing information, and add it to the P2P network to be joined.

[0078] Step S280: Publish the shareable resources to the P2P network.

[0079] For example, refer to Figure 3 As shown, similarly, a new edge computing server can join the P2P network through the following steps S310 to S360. Specifically:

[0080] Step S310: Initialize the new edge computing server to be added to the P2P network.

[0081] Step S320: Configure the newly initialized edge computing server; for example, the configuration information may include information about the edge node where the new edge computing server is located, information about known edge computing servers in the P2P network to be joined, etc.

[0082] Step S330: Configure the resources that the new edge computing server can share.

[0083] Step S340: Start the edge computing node.

[0084] Step S350: Based on the configuration information in step S320, the new edge computing server is added to the P2P network formed by other edge computing servers within its edge node. For example, first, a unique identifier for the new edge computing server is generated using a hash algorithm. Second, based on the unique identifier and the configuration information in step S320, a list of edge computing servers near the new edge computing server and their routing information are obtained, and the server is added to the P2P network. After joining the P2P network, the status of the new edge computing server can be synchronized to the P2P network.

[0085] Step S360: Publish the shareable resources set in step S330 to the P2P network.

[0086] This example implementation provides a data resource storage method, applied to the aforementioned edge computing system. (Refer to...) Figure 4 As shown, the data resource storage method may include the following steps S410 to S420. Wherein:

[0087] Step S410: In response to the edge computing server obtaining the first data resource, based on the first distributed hash routing table maintained by the edge computing server and the hash value used to uniquely identify the first data resource, the first data resource is stored in at least one edge computing server among the edge nodes to which the edge computing server belongs.

[0088] Step S420: In response to the edge node obtaining the second data resource, based on the second distributed hash routing table maintained by the edge node and the hash value used to uniquely identify the second data resource, the second data resource is stored in at least one edge node in the edge computing system.

[0089] Based on the data resource storage method provided in this exemplary embodiment, a first-level P2P digital resource storage based on a distributed hash routing table is implemented using multiple edge computing servers included in the edge nodes, and a second-level P2P digital resource storage based on a distributed hash routing table is implemented using multiple edge nodes. On the one hand, since it does not rely on a centralized architecture, even if a critical node fails, its associated nodes will not be affected; therefore, the stability and security of the system can be improved. On the other hand, the target edge computing server or target edge node used to store the data resource can be located solely by the hash value of the data resource, thus reducing the coupling between nodes and lowering the deployment difficulty. Furthermore, since it does not rely on a centralized architecture, nodes can communicate directly, which can improve the real-time performance of data transmission to a certain extent, thereby reducing latency and increasing computing speed.

[0090] The following will describe in more detail the various steps of the data resource storage method in this exemplary embodiment with reference to the accompanying drawings and embodiments.

[0091] In step S410, in response to the edge computing server obtaining the first data resource, based on the first distributed hash routing table maintained by the edge computing server and the hash value used to uniquely identify the first data resource, the first data resource is stored in at least one edge computing server among the edge nodes to which the edge computing server belongs.

[0092] In this exemplary embodiment, the first data resource may be information related to an edge computing server or an edge node used to indicate the content being provided. When the first data resource is such information, due to the small data volume, it can be directly hashed to obtain a hash value that uniquely identifies the first data resource. For example, in this exemplary embodiment, SHA-1 can be used to hash the first data resource to obtain the corresponding hash value. SHA-1 is a cryptographic hash function with a 160-bit hash space; therefore, the generated hash value that uniquely identifies the first data resource is 160 bits long, or 20 bytes. Of course, in other exemplary embodiments of this disclosure, other hash functions such as MD5 and SHA-2 can also be used to calculate the hash value, and this exemplary embodiment does not impose any special limitations on this. In some exemplary embodiments of this disclosure, the first data resource may also be a static resource; and when the data volume of the static resource is small, a similar method can be used to directly hash the first data resource to obtain a hash value that uniquely identifies the first data resource.

[0093] When the first data resource is a static resource, especially when the amount of data in the first data resource is large, it can also be achieved through methods such as... Figure 5 Steps S510 to S520, as shown, determine the hash value used to uniquely identify the first data resource. Wherein:

[0094] In step S510, the association information of the first data resource is obtained.

[0095] In this exemplary embodiment, the association information of the first data resource may include keyword information that can uniquely identify the first data resource. For example, the keyword information may include the content name, content size, format, and time information of the first data resource. For instance, if the first data resource is a streaming media, the keyword information may specifically include the streaming media name, streaming media size, encoding format, frame rate, or time information; if the first data resource is a file, the keyword information may specifically include the file name, file size, file format, file list, and creation / modification time. In some exemplary embodiments, the association information may also include a keyword generation method that uniquely identifies the first data resource, such as how to extract the summary information of the first data resource as a keyword. This exemplary embodiment does not impose any special limitations on this.

[0096] In some exemplary embodiments, the association information may further include slicing rule information for the first data resource. Slicing rule information describes how a data resource is broken down into smaller data segments; for example, for a video file, it can be sliced ​​according to time, such as slicing each minute of video data into a segment; it can also be sliced ​​according to a fixed size, such as slicing each 4kB segment of video data into a segment, etc. Then, based on the slicing rule information and the filename of the first data resource, a keyword can be determined to uniquely identify each slice of data resource; for example, adding a slice number as a keyword to the aforementioned association information, etc.

[0097] In step S520, a hash value for uniquely identifying the first data resource is calculated based on the keyword of the first data resource.

[0098] In this example implementation, the keyword of the first data resource can be hashed using SHA-1 to obtain the corresponding hash value. SHA-1 is a cryptographic hash function with a 160-bit hash space; therefore, the generated hash value used to uniquely identify the first data resource is 160 bits long, or 20 bytes. Of course, in other exemplary embodiments of this disclosure, other hash functions such as MD5 and SHA-2 can also be used to calculate the hash value, and this exemplary embodiment does not impose any special limitations on this.

[0099] After determining the hash value of the first data resource, refer to Figure 6 As shown, in this example embodiment, the first data resource can be stored in at least one edge computing server among the edge nodes to which the edge computing server belongs through the following steps S610 to S630. Wherein:

[0100] In step S610, the edge computing server identifier of the edge computing server is obtained.

[0101] In this example implementation, the identifier of the edge computing server has the same value range as the hash value of the first data resource. For instance, in the exemplary embodiment described above, the hash value of the first data resource is a 160-bit hash value obtained by hashing the keyword of the first data resource using SHA-1; similarly, the keyword used to uniquely identify the edge computing server also needs to be hashed using SHA-1 to obtain the corresponding 160-bit hash value. If the hash value of the first data resource is obtained using MD5, the hash value of the edge computing server also needs to be obtained using MD5. The keyword used to uniquely identify the edge computing server can be the MAC address of the edge computing server, device serial number, IMEI (International Mobile Equipment Identity), etc.

[0102] In step S620, a first logical distance is calculated between the hash value used to uniquely identify the first data resource and the edge computing server identifier.

[0103] In this example implementation, the first distance value can be obtained by first performing an XOR operation between the first N bits of the hash value of the first data resource and the first N bits of the hash value (i.e., the edge computing service identifier) ​​of the edge computing server (hereinafter referred to as the current edge computing server to distinguish it from other edge computing servers). Here, N is a positive integer, and N is the same as the number of K buckets in the first distributed hash routing table.

[0104] It should be noted that in this example implementation, each edge computing server in the edge node is represented by a corresponding hash value, and the hash value is stored in the first distributed hash routing table. Each edge computing server maintains one first distributed hash routing table; Figure 7 This illustrates a first distributed hash routing representation, where the first distributed hash routing table includes N lists, each of which is called a K-bucket. For example... Figure 7 As shown, the first distributed hash routing table maintained by the edge computing server includes N K buckets, designated K bucket 0 to K bucket N. Each K bucket contains information about edge computing servers with the same logical distance; for example, K bucket 0 contains information about edge computing servers with a logical distance of 0 from their respective edge computing servers, K bucket 1 contains information about edge computing servers with a logical distance of 1 from their respective edge computing servers, and K bucket n contains information about edge computing servers with a logical distance of n from their respective edge computing servers. Each K bucket stores the hash value, IP address, and port number of the corresponding edge computing server. If the number of K buckets in the first distributed hash routing table maintained by the current edge computing server is 16, then the first 16 bits of the hash value of the first data resource are XORed with the first 16 bits of the hash value of the current edge computing server to obtain the first distance value.

[0105] Next, the base-2 logarithm of the first distance value is calculated to obtain the first logarithmic value. Based on the difference between N and the first logarithmic value, the first logical distance between the hash value of the first data resource and the hash value of the current edge computing server is obtained. Specifically, the difference between N and the first logarithmic value is obtained, and the integer or rounded integer of this difference is taken as the first logical distance between the hash value of the first data resource and the hash value of the current edge computing server. The obtained first logical distance is one of the integers in the range [0, N].

[0106] In step S630, the target edge computing server is located according to the first distributed hash routing table and the first logical distance, and the first data resource is stored in the target edge computing server.

[0107] For example, after calculating the first logical distance L1 between the hash value of the first data resource and the hash value of the current edge computing server, this example embodiment can select an edge computing server with a logical distance of the first logical distance L1 from the first distributed hash routing table maintained by the current edge computing server as the target edge computing server. For example, if the calculated first logical distance L1 is 5, then K-bucket 5 is queried from the first distributed hash routing table maintained by the current edge computing server, and the target edge computing server is located based on K-bucket 5.

[0108] Furthermore, if there is no edge computing server with a logical distance of the first logical distance L1 in the first distributed hash routing table maintained by the current edge computing server, then an edge computing server with a logical distance close to the first logical distance L1 can be selected from the first distributed hash routing table maintained by the current edge computing server as the aforementioned current edge computing server, and the above steps S620 to S630 are repeated until the target edge computing server is determined.

[0109] After the target edge computing server is determined, the first data resources can be stored on the target edge computing server.

[0110] In step S420, in response to the edge node acquiring the second data resource, based on the second distributed hash routing table maintained by the edge node and the hash value used to uniquely identify the second data resource, the second data resource is stored in at least one edge node in the edge computing system.

[0111] In this exemplary embodiment, association information of the second data resource can be obtained. This association information includes a keyword uniquely identifying the second data resource or a keyword generation method. Furthermore, a hash value for uniquely identifying the second data resource is calculated based on the keyword. That is, the method for obtaining the hash value of the second data resource is similar to steps S510 to S520 described above, and therefore will not be repeated here. Additionally, it should be noted that the second data resource and the first data resource described above can be the same or different; this exemplary embodiment does not make a special distinction in this regard.

[0112] After determining the hash value of the second data resource, refer to Figure 8 As shown, in this example embodiment, the second data resource can be stored in at least one edge node of the edge computing system through the following steps S810 to S830. Wherein:

[0113] In step S810, the edge node identifier of the edge node is obtained.

[0114] In this example implementation, the identifier of the edge node has the same value range as the hash value of the second data resource. For instance, if the hash value of the second data resource is a 160-bit hash value obtained by hashing the keyword of the second data resource using SHA-1, then the keyword used to uniquely identify the edge node also needs to be hashed using SHA-1 to obtain the corresponding 160-bit hash value. If the hash value of the second data resource is obtained using MD5, the hash value of the edge node also needs to be obtained using MD5. The keyword used to uniquely identify the edge node can be the edge node's sequence number, GUID (Globally Unique Identifier), etc.

[0115] In step S820, a second logical distance is calculated between the hash value used to uniquely identify the second data resource and the edge node identifier.

[0116] In this example implementation, the first N bits of the hash value of the second data resource can be XORed with the first N bits of the hash value (i.e., the edge node identifier) ​​of the edge node (hereinafter referred to as the current edge node to distinguish it from other edge nodes) to obtain the second distance value. Here, N is a positive integer, and N is the same as the number of K buckets in the second distributed hash routing table.

[0117] It should be noted that in this example implementation, each edge node is represented by a corresponding hash value, and the hash value is stored in the second distributed hash routing table. Each edge node maintains a second distributed hash routing table. The second distributed hash routing table maintained by the edge node includes N K buckets, namely K bucket 0 to K bucket N. Each K bucket includes information about edge nodes with the same logical distance; for example, K bucket 0 contains information about edge nodes with a logical distance of 0 from their respective edge nodes, K bucket 1 contains information about edge nodes with a logical distance of 1 from their respective edge nodes, and K bucket n contains information about edge nodes with a logical distance of n from their respective edge nodes; each K bucket stores the corresponding hash value, IP address, and port number of each edge node. If the number of K buckets in the second distributed hash routing table maintained by the current edge node is 16, then the first 16 bits of the hash value of the second data resource are XORed with the first 16 bits of the hash value of the current edge node to obtain the second distance value.

[0118] Next, the base-2 logarithm of the second distance value is calculated to obtain the first logarithmic value. Based on the difference between N and the first logarithmic value, the second logical distance between the hash value of the second data resource and the hash value of the current edge node is obtained. Specifically, the difference between N and the first logarithmic value is obtained, and the integer value of this difference, or the rounded integer, is taken as the second logical distance between the hash value of the second data resource and the hash value of the current edge node. The obtained second logical distance is one of the integers within the range [0, N].

[0119] In step S830, the target edge node is located according to the second distributed hash routing table and the second logical distance, and the second data resource is stored in the target edge node.

[0120] For example, after calculating the second logical distance L2 between the hash value of the second data resource and the hash value of the current edge node, this example implementation can select an edge node with a logical distance of the second logical distance L2 from the second distributed hash routing table maintained by the current edge node as the target edge node. For example, if the calculated second logical distance L2 is 5, then K-bucket 5 is queried from the second distributed hash routing table maintained by the current edge node, and the target edge node is located based on K-bucket 5.

[0121] Furthermore, if there is no edge node with a logical distance of the second logical distance L2 in the second distributed hash routing table maintained by the current edge node, then an edge node with a logical distance close to the second logical distance L2 can be selected from the second distributed hash routing table maintained by the current edge node as the current edge node, and steps S820 to S830 are repeated until the target edge node is determined.

[0122] After the target edge node is determined, the second data resource can be stored at the target edge node.

[0123] In the exemplary embodiments described above, data resources can be stored either on an edge computing server or on an edge node. However, they can be preferentially stored in the P2P network where the receiver is located. For example, data resources acquired by an edge computing server are preferentially stored in a P2P network composed of edge computing servers within the edge node where the edge computing server is located. Data resources acquired by an edge node are preferentially stored in a P2P network composed of edge nodes. Furthermore, after an edge computing server acquires the first data resource, if the edge node to which the edge computing server belongs cannot store the first data resource (e.g., insufficient storage space, low transmission bandwidth, high latency, etc.), the edge node to which the edge computing server belongs can store the first data resource to at least one edge node in the edge computing system based on the second distributed hash routing table and the hash value used to uniquely identify the first data resource. The method for storing data resources to at least one edge node in the edge computing system has been described in detail in step S420 above, and therefore will not be repeated here. That is, the method in this example embodiment can also achieve cross-edge data resource storage.

[0124] This example implementation provides a data resource query method, applied to the aforementioned edge computing system. (Refer to...) Figure 9 As shown, the data resource query method may include the following steps S910 and / or S920. Wherein:

[0125] In step S910, the edge computing server obtains a hash value for uniquely identifying the target data resource based on the data query request, and determines the target edge computing server storing the target data resource in the edge node to which the edge computing server belongs by combining the first distributed hash routing table maintained by the edge computing server, so as to read the target data resource from the target edge computing server.

[0126] In this example implementation, the hash value of the target data resource can be pre-published on a public network or stored in a designated location for query terminals to obtain. After obtaining the hash value of the target data resource, the query terminal can generate the aforementioned data query request carrying the hash value of the target data resource based on the hash value.

[0127] In some exemplary embodiments, the association information of the target data resource may be pre-published on a public network or stored in a designated location for query terminals to obtain; wherein, the association information includes a keyword or keyword generation method that uniquely identifies the target data resource. Furthermore, after obtaining the association information of the target data resource, the query terminal can calculate a hash value to uniquely identify the target data resource based on the keyword of the target data resource. The method for obtaining the hash value of the target data resource is similar to steps S510 to S520 described above, and therefore will not be repeated here.

[0128] After obtaining the hash value of the target data resource, refer to Figure 10 As shown, in this example embodiment, the target edge computing server storing the target data resource can be determined through the following steps S1010 to S1030. Wherein:

[0129] In step S1010, the edge computing server identifier of the edge computing server is obtained. This step is similar to step S610 above, so it will not be repeated here.

[0130] In step S1020, a first logical distance is calculated between the hash value used to uniquely identify the target data resource and the edge computing server identifier. This step is similar to step S620 described above, and therefore will not be repeated here.

[0131] In step S1030, the candidate edge computing server is located based on the first distributed hash routing table and the first logical distance to determine whether the candidate edge computing server is the target edge computing server that stores the target data resources.

[0132] For example, after calculating the first logical distance L1 between the hash value of the target data resource and the hash value of the current edge computing server, this example embodiment can select an edge computing server with a logical distance of the first logical distance L1 from the second distributed hash routing table maintained by the current edge computing server as the candidate edge computing server. For example, if the calculated first logical distance L1 is 5, then K-bucket 5 is queried from the second distributed hash routing table maintained by the current edge computing server, and the candidate edge computing server is located based on K-bucket 5.

[0133] Furthermore, if there is no edge computing server with a logical distance of the first logical distance L1 in the second distributed hash routing table maintained by the current edge computing server, then an edge computing server with a logical distance close to the first logical distance L1 can be selected from the second distributed hash routing table maintained by the current edge computing server as the current edge computing server, and the above steps S1020 to S1030 are repeated until a candidate edge computing server is determined.

[0134] After identifying candidate edge computing servers, it is possible to query whether the candidate edge computing server stores the target data resource; if the candidate edge computing server stores the target resource, then the candidate edge computing server is identified as the target edge computing server.

[0135] In step S920, the edge node obtains a hash value for uniquely identifying the target data resource based on the data query request, and determines the target edge node storing the target data resource among the edge nodes of the edge computing system by combining the second distributed hash routing table maintained by the edge node.

[0136] After obtaining the hash value of the target data resource, refer to Figure 11 As shown, in this example embodiment, the target edge node storing the target data resource can be determined through the following steps S1110 to S1130. Wherein:

[0137] In step S1110, the edge node identifier of the edge node is obtained. This step is similar to step S810 above, so it will not be repeated here.

[0138] In step S1120, a second logical distance is calculated between the hash value used to uniquely identify the target data resource and the edge node identifier. This step is similar to step S820 above, so it will not be repeated here.

[0139] In step S1130, the candidate edge node is located according to the second distributed hash routing table and the second logical distance to determine whether the candidate edge node is the target edge node that stores the target data resource.

[0140] For example, after calculating the second logical distance L2 between the hash value of the second data resource and the hash value of the current edge node, in this example embodiment, an edge node with a logical distance of the second logical distance L2 can be selected from the second distributed hash routing table maintained by the current edge node as the candidate edge node. For example, if the calculated second logical distance L2 is 5, then K-bucket 5 is queried from the second distributed hash routing table maintained by the current edge node, and the candidate edge node is located based on K-bucket 5.

[0141] Furthermore, if there is no edge node with a logical distance of the second logical distance L2 in the second distributed hash routing table maintained by the current edge node, then an edge node with a logical distance close to the second logical distance L2 can be selected from the second distributed hash routing table maintained by the current edge node as the current edge node, and the above steps S1120 to S1130 are repeated until a candidate edge node is determined.

[0142] After identifying candidate edge nodes, it is possible to query whether the candidate edge node stores the target data resource; if the candidate edge node stores the target resource, the candidate edge node is identified as the target edge node, and the target data resource is read from the target edge node.

[0143] In the above exemplary embodiments, steps S910 and S920 can be executed simultaneously, meaning that the target data resource can be queried simultaneously in both the P2P network where the edge computing server resides and the P2P network where the edge node resides; alternatively, only step S910 or only step S920 can be executed. In some exemplary embodiments, steps S910 and S920 can be executed in a preset order, meaning the queries are performed in a preset order. For example, the target data resource can be queried first in the P2P network formed by the edge computing servers in the edge node where the edge computing server resides. If the target data resource is not stored in the P2P network formed by the edge computing servers or the transmission bandwidth is too low, the edge node to which the edge computing server belongs can then query the target data resource in the P2P network where the edge node resides based on the second distributed hash routing table and the hash value used to uniquely identify the target data resource. That is, the method in this example embodiment can also achieve cross-edge data resource querying.

[0144] It should be understood that although the steps in the flowcharts of the accompanying figures are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the accompanying figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0145] Furthermore, this example embodiment also provides an edge computing system. (Refer to above) Figure 1As shown, the edge computing system includes multiple edge nodes, and at least one edge node includes multiple edge computing servers; wherein: the multiple edge computing servers form a first P2P network based on a first distributed hash routing table, and the edge computing servers store hash values ​​for identifying the data resources stored thereon; the multiple edge nodes form a second P2P network based on a second distributed hash routing table, and the edge nodes store hash values ​​for identifying the data resources stored thereon.

[0146] Furthermore, this example embodiment also provides a data resource storage device applied to an edge computing system, the edge computing system including multiple edge nodes and at least one of the edge nodes including multiple edge computing servers. (Reference) Figure 12 As shown, the data resource storage device 1200 may include a first storage module 1210 and a second storage module 1220. Wherein:

[0147] The first storage module 1210 can be used to, in response to the edge computing server obtaining a first data resource, store the first data resource in at least one edge computing server among the edge nodes to which the edge computing server belongs, based on a first distributed hash routing table maintained by the edge computing server and a hash value used to uniquely identify the first data resource. The second storage module 1220 can be used to, in response to the edge node obtaining a second data resource, store the second data resource in at least one edge node in the edge computing system, based on a second distributed hash routing table maintained by the edge node and a hash value used to uniquely identify the second data resource; wherein, the edge computing servers among the edge nodes to which the edge computing server belongs form a first P2P network; and the edge nodes in the edge computing system form a second P2P network.

[0148] Furthermore, this example embodiment also provides a data resource query device applied to an edge computing system, wherein the edge computing system includes multiple edge nodes, and at least one of the edge nodes includes multiple edge computing servers. (Reference) Figure 13 As shown, the data resource query device 1300 may include a first query module 1310 and / or a second query module 1320. Wherein:

[0149] The first query module 1310 can be used to enable the edge computing server to obtain a hash value for uniquely identifying the target data resource based on a data query request, and, in conjunction with a first distributed hash routing table maintained by the edge computing server, determine the target edge computing server storing the target data resource among the edge nodes to which the edge computing server belongs, so as to read the target data resource from the target edge computing server. The second query module 1320 can be used to enable the edge node to obtain a hash value for uniquely identifying the target data resource based on the data query request, and, in conjunction with a second distributed hash routing table maintained by the edge node, determine the target edge node storing the target data resource among the edge nodes of the edge computing system, so as to read the target data resource from the target edge node. Wherein, the edge computing servers in the edge nodes to which the edge computing server belongs form a first P2P network; the edge nodes in the edge computing system form a second P2P network.

[0150] The specific details of each module and component in the aforementioned edge computing system, data resource storage device, and data resource query device have been described in detail in the corresponding data resource storage method or data resource query method, so they will not be repeated here.

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

[0152] The various component embodiments of this disclosure can be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof.

[0153] In an exemplary embodiment of this disclosure, an electronic device is also provided, comprising: a processor; a memory configured to store processor-executable instructions; wherein the processor is configured to perform any of the methods described in this exemplary embodiment.

[0154] Figure 14 A schematic diagram of the structure of a computer system for implementing the embodiments of the present disclosure is shown. It should be noted that... Figure 14 The computer system 1400 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments disclosed herein.

[0155] like Figure 14As shown, the computer system 1400 includes a central processing unit 1401, which can perform various appropriate actions and processes based on programs stored in read-only memory 1402 or programs loaded from storage section 1408 into random access memory 1403. The random access memory 1403 also stores various programs and data required for system operation. The central processing unit 1401, read-only memory 1402, and random access memory 1403 are interconnected via bus 1404. Input / output interface 1405 is also connected to bus 1404.

[0156] The following components are connected to the input / output interface 1405: an input section 1406 including a keyboard, mouse, etc.; an output section 1407 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 1408 including a hard disk, etc.; and a communication section 1409 including a network interface card such as a local area network (LAN) card, modem, etc. The communication section 1409 performs communication processing via a network such as the Internet. A drive 1410 is also connected to the input / output interface 1405 as needed. A removable medium 1411, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 1410 as needed so that computer programs read from it can be installed into the storage section 1408 as needed.

[0157] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 1409, and / or installed from removable medium 1411. When the computer program is executed by central processing unit 1401, it performs the various functions defined in the apparatus of this application.

[0158] In an exemplary embodiment of this disclosure, a non-volatile computer-readable storage medium is also provided, on which a computer program is stored, wherein when the computer program is executed by a computer, the computer performs the method described in any of the above-described embodiments.

[0159] It should be noted that the non-volatile computer-readable storage medium disclosed herein can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, radio frequency, etc., or any suitable combination thereof.

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

Claims

1. A data resource storage method applied to an edge computing system, the edge computing system comprising multiple edge nodes and at least one of the edge nodes comprising multiple edge computing servers; characterized in that, Each edge computing server maintains a first distributed hash routing table containing the hash values ​​of each edge computing server, and each edge node maintains a second distributed hash routing table containing the hash values ​​of each edge node. The data resource storage method includes: In response to the edge computing server acquiring the first data resource, based on the first distributed hash routing table maintained by the edge computing server and the hash value used to uniquely identify the first data resource, the first data resource is stored in at least one edge computing server among the edge nodes to which the edge computing server belongs; the hash value of the first data resource is obtained by: acquiring the association information of the first data resource, the association information including a keyword or keyword generation method that uniquely identifies the first data resource, the keyword including at least one of the content name, content size, format, time information and slicing rule information of the first data resource; and performing a hash transformation on the keyword of the first data resource to obtain the hash value used to uniquely identify the first data resource; In response to the edge node acquiring the second data resource, based on the second distributed hash routing table maintained by the edge node and the hash value used to uniquely identify the second data resource, the second data resource is stored in at least one edge node in the edge computing system; the hash value of the second data resource is obtained by: acquiring the association information of the second data resource, the association information including a keyword or keyword generation method that uniquely identifies the second data resource; and calculating the hash value used to uniquely identify the second data resource based on the keyword of the second data resource. In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

2. The data resource storage method according to claim 1, characterized in that, The method further includes: After the edge computing server acquires the first data resource, in response to the edge node to which the edge computing server belongs being unable to store the first data resource, the edge node to which the edge computing server belongs stores the first data resource to at least one edge node in the edge computing system based on the second distributed hash routing table and the hash value used to uniquely identify the first data resource.

3. The data resource storage method according to claim 1 or 2, characterized in that, The edge computing server has an edge computing server identifier with the same value range as the hash value used to uniquely identify the first data resource; The step of storing the first data resource to at least one edge computing server among the edge nodes to which the edge computing server belongs includes: Obtain the edge computing server identifier of the edge computing server; Calculate the first logical distance between the hash value used to uniquely identify the first data resource and the edge computing server identifier; The target edge computing server is located based on the first distributed hash routing table and the first logical distance, and the first data resource is stored on the target edge computing server.

4. The data resource storage method according to any one of claims 1 or 2, characterized in that, The edge node has an edge node identifier with the same value range as the hash value used to uniquely identify the second data resource; The step of storing the second data resource to at least one edge node in the edge computing system includes: Obtain the edge node identifier of the aforementioned edge node; Calculate the second logical distance between the hash value used to uniquely identify the second data resource and the edge node identifier; The target edge node is located based on the second distributed hash routing table and the second logical distance, and the second data resource is stored in the target edge node.

5. A data resource query method, applied to an edge computing system, wherein the edge computing system includes multiple edge nodes and at least one edge node includes multiple edge computing servers; characterized in that, Each edge computing server maintains a first distributed hash routing table containing the hash values ​​of each edge computing server, and each edge node maintains a second distributed hash routing table containing the hash values ​​of each edge node. The data resource query method includes: The edge computing server obtains a hash value to uniquely identify the target data resource based on the data query request, and determines the target edge computing server storing the target data resource among the edge nodes to which the edge computing server belongs by combining the hash value obtained from the data query request; and / or The edge node obtains a hash value to uniquely identify the target data resource based on the data query request, and determines the target edge node storing the target data resource among the edge nodes of the edge computing system by combining the second distributed hash routing table maintained by the edge node, so as to read the target data resource from the target edge node; In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network; the hash value of the target data resource is obtained by: acquiring the association information of the target data resource, the association information including a keyword or keyword generation method that uniquely identifies the target data resource, the keyword including at least one of the content name, content size, format, time information and slicing rule information of the first data resource; and performing a hash transformation on the keyword of the target data resource to obtain a hash value used to uniquely identify the target data resource.

6. The data resource query method according to claim 5, characterized in that, The determination of the target edge computing server storing the target data resources includes: Obtain the edge computing server identifier of the aforementioned edge computing server; Calculate the first logical distance between the hash value used to uniquely identify the target data resource and the edge computing server identifier; Based on the first distributed hash routing table and the first logical distance, the candidate edge computing server is located to determine whether the candidate edge computing server is the target edge computing server that stores the target data resources.

7. The data resource query method according to claim 5, characterized in that, The process of determining the target edge node storing the target data resource includes: Obtain the edge node identifier of the aforementioned edge node; Calculate the second logical distance between the hash value used to uniquely identify the target data resource and the edge node identifier; Based on the second distributed hash routing table and the second logical distance, the candidate edge node is located to determine whether the candidate edge node is the target edge node that stores the target data resource.

8. An edge computing system, characterized in that, The edge computing system includes multiple edge nodes, and at least one edge node includes multiple edge computing servers; each edge computing server maintains a first distributed hash routing table containing the hash values ​​of all edge computing servers, and each edge node maintains a second distributed hash routing table containing the hash values ​​of all edge nodes; wherein: The plurality of edge computing servers form a first P2P network based on a first distributed hash routing table, and the edge computing servers store hash values ​​for identifying the data resources stored thereon. The multiple edge nodes form a second P2P network based on a second distributed hash routing table, and the edge nodes store hash values ​​used to identify the data resources stored on them. The edge computing system is used to implement the data resource storage method according to any one of claims 1-4, and / or the data resource query method according to any one of claims 5-7.

9. A data resource storage device, applied to an edge computing system, the edge computing system comprising multiple edge nodes and at least one of the edge nodes comprising multiple edge computing servers; characterized in that, Each edge computing server maintains a first distributed hash routing table containing the hash values ​​of each edge computing server, and each edge node maintains a second distributed hash routing table containing the hash values ​​of each edge node. The data resource storage device includes: A first storage module is configured to, in response to the edge computing server acquiring a first data resource, store the first data resource in at least one edge computing server among the edge nodes to which the edge computing server belongs, based on a first distributed hash routing table maintained by the edge computing server and a hash value used to uniquely identify the first data resource; the hash value of the first data resource is obtained by: acquiring the association information of the first data resource, the association information including a keyword or keyword generation method that uniquely identifies the first data resource, the keyword including at least one of the content name, content size, format, time information, and slicing rule information of the first data resource; and performing a hash transformation on the keyword of the first data resource to obtain a hash value used to uniquely identify the first data resource; The second storage module is configured to, in response to the edge node acquiring the second data resource, store the second data resource in at least one edge node of the edge computing system based on the second distributed hash routing table maintained by the edge node and a hash value used to uniquely identify the second data resource; the hash value of the second data resource is obtained by: acquiring the association information of the second data resource, the association information including a keyword or keyword generation method that uniquely identifies the second data resource; and calculating the hash value used to uniquely identify the second data resource based on the keyword of the second data resource; In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network.

10. A data resource query device, applied to an edge computing system, the edge computing system comprising multiple edge nodes and at least one of the edge nodes comprising multiple edge computing servers; characterized in that, Each edge computing server maintains a first distributed hash routing table containing the hash values ​​of each edge computing server, and each edge node maintains a second distributed hash routing table containing the hash values ​​of each edge node. The data resource query device includes: The first query module is configured to enable the edge computing server to obtain a hash value for uniquely identifying the target data resource based on a data query request, and, in conjunction with a first distributed hash routing table maintained by the edge computing server, determine the target edge computing server storing the target data resource among the edge nodes to which the edge computing server belongs, so as to read the target data resource from the target edge computing server; and / or The second query module is used to enable the edge node to obtain a hash value for uniquely identifying the target data resource based on the data query request, and to determine the target edge node storing the target data resource in each edge node of the edge computing system by combining the second distributed hash routing table maintained by the edge node, so as to read the target data resource from the target edge node; In this system, each edge computing server in the edge node to which the edge computing server belongs forms a first P2P network; each edge node in the edge computing system forms a second P2P network; the hash value of the target data resource is obtained by: acquiring the association information of the target data resource, the association information including a keyword or keyword generation method that uniquely identifies the target data resource, the keyword including at least one of the content name, content size, format, time information and slicing rule information of the first data resource; and performing a hash transformation on the keyword of the target data resource to obtain a hash value used to uniquely identify the target data resource.

11. A non-volatile computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method described in any one of claims 1-7.

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

Citation Information

Patent Citations

  • Optimal operation of hierarchical peer-to-peer networks

    CN101378409A

  • Sharing of digital contents in p2p networks exploiting localization data

    US20120221647A1