Resource Management Method and Apparatus, Electronic Device, and Storage Medium

By setting preset attributes in the edge cloud, the stability problem caused by the introduction of heterogeneous resources is solved, standardized resource operation and efficient converged scheduling are realized, and manpower consumption is reduced.

CN115514777BActive Publication Date: 2025-07-04ALIBABA (CHINA) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211153980.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-21
Publication Date
2025-07-04
Estimated Expiration
2042-09-21

AI Technical Summary

Technical Problem

The introduction of heterogeneous resources in edge clouds requires changing the information storage data structure, resulting in stability problems, and the introduction of new resources is inefficient and consumes a lot of human resources.

Method used

Preset attributes are set in advance, and the corresponding attribute values ​​are determined based on the resource information of the newly added resources, and stored them in the storage module, blocking the impact of heterogeneous resources on the data structure, and operating with the original interface and software.

Benefits of technology

It effectively reduces the impact of the introduction of new resources on the stability of edge clouds, improves resource convergence and scheduling efficiency, and saves human resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115514777B_ABST
    Figure CN115514777B_ABST
Patent Text Reader

Abstract

The present application provides a resource management method, apparatus, electronic device, and storage medium, which relate to the technical field of cloud computing. According to the embodiments of the present application, preset attributes are pre-set. When new resources need to be added, only the resource information of the new resources needs to be used to determine the attribute values of the new resources corresponding to each preset attribute, and then the attribute values of the new resources corresponding to each preset attribute are stored in the storage module. All new resources are introduced in the above manner, and only the corresponding information needs to be added to the table in the storage module, without modifying the structure of the table or adding a new table, shielding the impact of the introduction of heterogeneous resources on the data structure corresponding to information storage in the edge cloud, and effectively reducing the impact of the introduction of new resources on the stability of applications in the edge cloud.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of cloud computing technology, and in particular, to a resource management method and apparatus, an electronic device, and a storage medium. Background Art

[0002] Edge cloud is a cloud computing architecture built on edge infrastructure based on cloud computing technology and edge computing capabilities, with comprehensive service capabilities in computing, storage, and networking. There are a large number of edge nodes, and the degree of resource heterogeneity in different edge nodes is relatively large. For example, in terms of computing, different hardware is used, and in terms of storage, different storage media are used.

[0003] In edge nodes, the large degree of resource heterogeneity poses challenges to resource management and scheduling. Each time heterogeneous resources are introduced, the data structure corresponding to information storage needs to be changed. For example, modifying the structure of a table used to store information or adding a new table. These are all data operations with relatively high risks and are likely to cause stability problems for edge cloud applications when the amount of information of the resources is large. Moreover, the introduction of new resources also requires developing software to operate the resources, such as interfaces for resource query, resource deduction, resource rollback, etc. for the resources, and software for user management and instance control for the resources, resulting in low efficiency in introducing new resources and relatively large consumption of human resources. Summary of the Invention

[0004] Embodiments of this application provide a resource management method and apparatus, an electronic device, and a storage medium to solve at least one of the above technical defects.

[0005] In a first aspect, embodiments of this application provide a resource management method, including:

[0006] Obtaining the resource information of a newly added resource and at least one preset attribute;

[0007] Determining the attribute values of the newly added resource corresponding to each preset attribute according to the resource information;

[0008] Storing the attribute values of the newly added resource corresponding to each preset attribute into a storage module.

[0009] In a possible implementation manner, the storage module includes a storage sub-module storing a database;

[0010] The storing the attribute values of the newly added resource corresponding to each preset attribute into a storage module includes:

[0011] Storing the attribute values of the newly added resource corresponding to each preset attribute into the database of the storage sub-module.

[0012] In a possible implementation, the storage module includes a distributed cache sub-module;

[0013] Storing the attribute values of the newly added resource corresponding to each preset attribute into the storage module includes:

[0014] Obtaining at least one preset resource attribute category and the preset attributes respectively corresponding to each resource attribute category;

[0015] Using the attribute values of each preset attribute, generating a resource form corresponding to each resource attribute category according to the preset attributes corresponding to each resource attribute category;

[0016] Establishing a mapping relationship between the identification information of the newly added resource and each resource form;

[0017] According to the mapping relationship, storing the identification information and each resource form into the distributed cache sub-module.

[0018] In a possible implementation, the mapping relationship includes a corresponding relationship of key-value pairs, where the key in the key-value pair corresponds to the identification information, and the value in the key-value pair corresponds to the resource form.

[0019] In a possible implementation, the storage module further includes a local cache sub-module;

[0020] Storing the attribute values of the newly added resource corresponding to each preset attribute into the storage module further includes:

[0021] Using each resource form corresponding to the newly added resource to generate at least one resource node corresponding to the newly added resource;

[0022] According to the resource organization rule, using the at least one resource node to update the resource tree in the local cache sub-module; where the resource tree includes resource nodes corresponding to at least one resource.

[0023] In a possible implementation, the preset attribute includes a tenant identifier, and the attribute value corresponding to the tenant identifier includes the identification information of the tenant occupying the resource; the resource management method further includes:

[0024] Determining the resource pool of the tenant corresponding to the identification information; where the resource pool includes at least one preset attribute of the resource and the attribute values corresponding to each preset attribute.

[0025] In a possible implementation, the resource management method further includes:

[0026] Using a tenant filtering plugin, obtain the resource update information of the update resources that need to be updated, and determine the identification information of the tenant corresponding to the resource update information;

[0027] Using an interception plugin, based on the determined identification information of the tenant, locate the resource pool corresponding to the tenant;

[0028] Using the resource update information, update the attribute values of the preset attributes in the resource pool.

[0029] In a possible implementation manner, the resource management method further includes:

[0030] Using an interception plugin, obtain a resource request including tenant information, and based on the tenant information, locate the resource pool corresponding to the resource request;

[0031] According to the operation indicated by the resource request, perform the corresponding operation on the located resource pool.

[0032] In a possible implementation manner, the storage module includes a distributed cache sub-module and a local cache sub-module; the resource management method further includes:

[0033] Obtain a resource query request;

[0034] According to the information stored in the distributed cache sub-module, determine the identification information of the tenant to be queried by the resource query request;

[0035] Using an interception plugin, obtain the identification information of the tenant, and use the identification information to locate the resource pool of the tenant;

[0036] Obtain and feedback the information in the located resource pool from the local cache sub-module.

[0037] In a possible implementation manner, the resource management method further includes:

[0038] Obtain a resource scheduling request;

[0039] Determine the resource demand information corresponding to the resource scheduling request;

[0040] According to the information of each resource stored in the storage module, determine the resource allocation information that can meet the resource demand information;

[0041] Allocate the resources corresponding to the resource allocation information to the tenant corresponding to the resource scheduling request.

[0042] In a possible implementation manner, the storage module includes a distributed cache sub-module; the determining the resource allocation information that can meet the resource demand information according to the information of each resource stored in the storage module includes:

[0043] Determine resource allocation information that can meet the resource demand information according to the information of each resource stored in the distributed cache sub-module.

[0044] In a second aspect, an embodiment of the present application provides a resource management device, including:

[0045] An information acquisition module, configured to acquire resource information of newly added resources and at least one preset attribute;

[0046] A resource management module, configured to determine the attribute values of the newly added resources corresponding to each preset attribute according to the resource information, and store the attribute values of the newly added resources corresponding to each preset attribute into a storage module.

[0047] In a third aspect, an embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory, where the processor implements the method described in any one of the above when executing the computer program.

[0048] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and the computer program implements the method described in any one of the above when executed by a processor.

[0049] Compared with the prior art, the present application has the following advantages:

[0050] According to the embodiments of the present application, preset attributes are set in advance. When new resources need to be added, only the attribute values of the newly added resources corresponding to each preset attribute need to be determined according to the resource information of the newly added resources, and then the attribute values of the newly added resources corresponding to each preset attribute are stored in the storage module. All newly added resources are introduced in the above manner. Only the attribute values of the newly added resources corresponding to each preset attribute need to be added to the table in the storage module, without modifying the structure of the table or adding a new table, shielding the impact of the introduction of heterogeneous resources on the data structure corresponding to information storage in the edge cloud, and effectively reducing the impact of the introduction of new resources on the stability of applications in the edge cloud; at the same time, since all resources are stored according to the same preset attributes, the operation of the newly added resources can be realized by using the original interface and the original software, realizing the standardized operation of all resources, avoiding the development of new software, improving the efficiency of resource fusion and scheduling in the edge cloud, and saving human resources.

[0051] The above description is only an overview of the technical solution of the present application. In order to understand the technical means of the present application more clearly, it can be implemented according to the content of the specification. In order to make the above and other purposes, features, and advantages of the present application more obvious and understandable, the specific embodiments of the present application are specifically exemplified below. Brief Description of the Drawings

[0052] In the drawings, unless otherwise specified, the same reference numerals throughout the several views refer to the same or similar parts or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings depict only some embodiments in accordance with the present application and should not be regarded as limiting the scope of the present application.

[0053] Figure 1 It is a schematic diagram of the scenario of the resource management solution provided by the present application;

[0054] Figure 2 It is a flowchart of the resource management method according to an embodiment of the present application;

[0055] Figure 3 It is a schematic diagram of the classification of resources in an edge node according to an embodiment of the present application;

[0056] Figure 4 It is a schematic diagram of the resource form according to an embodiment of the present application;

[0057] Figure 5 It is a schematic diagram of the principle of processing requests according to an embodiment of the present application;

[0058] Figure 6 It is a block diagram of the structure of the resource management device according to another embodiment of the present application;

[0059] Figure 7 It is a block diagram of the electronic device for implementing the embodiments of the present application. Detailed Embodiments

[0060] In the following, only some exemplary embodiments are briefly described. As those skilled in the art can recognize, the described embodiments can be modified in various different ways without departing from the concept or scope of the present application. Therefore, the drawings and the description are considered to be exemplary in nature and not restrictive.

[0061] For the convenience of understanding the technical solutions of the embodiments of the present application, the related technologies of the embodiments of the present application are described below. The following related technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all fall within the protection scope of the embodiments of the present application.

[0062] There are a large number of edge nodes, with complex organizational structures and different resource supply methods. It is necessary to standardize the management of resources corresponding to edge nodes to avoid resource waste, resource over-selling failures, etc. At the same time, in the technical scenario of edge clouds, resources are updated quickly, and new resources are continuously introduced, which poses a great challenge to the stability of edge cloud applications. Therefore, a standardized management solution for handling the introduction of heterogeneous resources is needed. In addition, the fusion and standardized management of different resources can improve the ability of resource reuse and immediate release, and improve the utilization rate of resources.

[0063] To standardize the management of resources corresponding to edge nodes, the resource management device needs to store the resource information of different resources in a unified manner. For example, Figure 1 As shown, in the storage module, according to the unified and preset resource attribute categories, the attribute values corresponding to each preset attribute of each resource are stored. For example, in the storage module, a meta-information form is stored according to the resource attribute category corresponding to the meta-information. The meta-information form stores the preset attributes corresponding to the meta-information, as well as the attribute values corresponding to each preset attribute; exemplarily, each of the preset attributes corresponding to the above meta-information may include at least one of country, city, model, storage type, storage structure, etc. For another example, in the storage module, a resource inventory form is stored according to the resource attribute category corresponding to the resource inventory. The resource inventory form stores the preset attributes corresponding to the resource inventory, as well as the attribute values corresponding to each preset attribute; exemplarily, the preset attributes corresponding to the above resource inventory may include at least one of total resource volume, resource reservation volume, resource over-selling ratio, etc.

[0064] As Figure 1 shown, the resource management device is connected to the resources corresponding to each edge node through the resource supply interface, obtains the resource information of these resources through the resource supply interface, and then the resource management device processes the obtained resource information in the above unified manner to obtain the attribute values corresponding to each preset attribute, and then stores the determined attribute values of each preset attribute in the storage module. When a tenant needs to schedule resources in the edge cloud, the resource scheduling device can be used to query and schedule resources in the storage module in a standardized manner.

[0065] The resource management method of the present application will be described below through specific embodiments.

[0066] As Figure 2 shown is a flowchart of the resource management method according to an embodiment of the present application. The execution subject of this embodiment can be a device or a group of devices with information processing capabilities. Specifically, the resource management method of this embodiment may include the following steps:

[0067] S201. Obtain the resource information of the newly added resource and at least one preset attribute; S202. Determine the attribute values of the newly added resource corresponding to each preset attribute according to the resource information; S203. Store the attribute values of the newly added resource corresponding to each preset attribute into the storage module.

[0068] Exemplarily, the above-mentioned newly added resources include resources that need to be introduced into the edge node; compared with different edge nodes, the resource types may be different, and compared with different resources within the same edge node, the resource types may also be different. Therefore, the degree of resource heterogeneity in the edge cloud is relatively large, which poses challenges to resource management and scheduling. All newly added resources are introduced according to the above steps, shielding the impact of the introduction of heterogeneous resources on the data structure corresponding to information storage in the edge cloud, and effectively reducing the impact of the introduction of new resources on the stability of applications in the edge cloud.

[0069] Exemplarily, as Figure 3 shown, the above-mentioned newly added resources may include computing resources, storage resources, network resources, etc. The computing resources may include at least one of virtual machines (Virtual Machine, VM), network computers (Network Computer, NC) in the form of bare metal, graphics processing units (Graphics Processing Unit, GPU), central processing units (Central Processing Unit, CPU), advanced reduced instruction set machines (Advanced RISC Machines, ARM) arrays, field programmable gate arrays (Field Programmable Gate Array, FPGA), artificial intelligence (Artificial Intelligence, AI) chips, ARM single-board computers, etc. Among them, the above-mentioned virtual machines may be virtual machines obtained by third-party virtual operations.

[0070] The storage resources may include at least one of a block storage device, an object storage (Object Storage Service, OSS) device, a network attached storage (NAS), a local storage device, and a read-only storage device. The network resources may include at least one of a network address translation (NAT) gateway, a network segment, an Internet communication protocol, a single root I / O virtualization (SRIOV), a load balancing device, and a physical machine of a content delivery network (CDN). The above Internet communication protocol may include Internet Protocol Version 4 (IPv4), Internet Protocol Version 6 (IPv6), etc.

[0071] Exemplarily, as Figure 4 shown, the above preset attributes may include at least one of the following: tenant name, tenant identifier, resource provider identifier, type of atomic resources (such as CPU, GPU, etc.), resource usage status, resource usage amount, atomic resource name, resource provider type, resource provider name, resource provider available status, sub-nodes of the resource provider, resource failure, each preset attribute corresponding to the above meta-information, total resource amount, resource reservation amount, resource oversubscription ratio, label identifier corresponding to the resource provider, at least one preset attribute corresponding to the label (such as resource rating, operating environment, etc.), meta-information change, label change, resource failure change, resource form change, etc.

[0072] Exemplarily, the above storage module includes a storage sub-module storing a database, a distributed cache sub-module, and a local cache sub-module. After determining the attribute values of the new resources corresponding to each preset attribute, the attribute values of the new resources corresponding to each preset attribute can be stored in the database of the storage sub-module. For example, the attribute values of the new resources corresponding to each preset attribute can be stored in the form of a table.

[0073] When a preset condition for triggering an update of the distributed cache sub-module is met, the information of the new resources can be stored in the distributed cache sub-module, which can be specifically implemented by the following steps:

[0074] First, obtain at least one preset resource attribute category and the corresponding preset attributes for each resource attribute category. Then, use the attribute values of each preset attribute to generate resource forms corresponding to each resource attribute category according to the preset attributes corresponding to each resource attribute category, and establish a mapping relationship between the identification information of the newly added resource and each resource form. Finally, store the identification information and each resource form in the distributed cache sub-module according to the mapping relationship. Among them, the above mapping relationship may include a corresponding relationship of key-value pairs. In the key-value pair, the key corresponds to the above identification information, and the value in the key-value pair corresponds to the resource form corresponding to at least one resource attribute category.

[0075] Exemplarily, the above resource attribute categories may include at least one of the following: the category corresponding to meta-information, the category corresponding to the resource list, the category corresponding to the resource provider, the category corresponding to the resource provider label, the category corresponding to the label, the category corresponding to the resource timeline, the category corresponding to the resource allocation, the category corresponding to the tenant, the category corresponding to the atomic resource, etc.

[0076] Generate a meta-information form according to the category corresponding to the meta-information. As Figure 4 shown, the meta-information form includes at least one of the attribute value corresponding to the resource provider identifier, the attribute values corresponding to each preset attribute corresponding to the meta-information, etc. Among them, each preset attribute corresponding to the meta-information and the attribute values corresponding to each preset attribute may be stored in the meta-information form in the form of key-value pairs. The above meta-information is used to describe the information that is not inherently carried by the resource and is generally defined and maintained by an external system.

[0077] Generate a resource list form according to the category corresponding to the resource list. As Figure 4 shown, the resource list form includes at least one of the attribute value corresponding to the resource provider identifier, the attribute value corresponding to the atomic resource type, the attribute value corresponding to the total amount of resources, the attribute value corresponding to the reserved amount of resources, the attribute value corresponding to the oversubscription ratio of resources, etc. Among them, one resource provider may correspond to multiple resource list forms.

[0078] Generate a resource provider form according to the category corresponding to the resource provider. As Figure 4 shown, the resource provider form includes at least one of the attribute value corresponding to the resource provider identifier, the attribute value corresponding to the resource provider type, the attribute value corresponding to the resource provider name, the attribute value corresponding to the available state of the resource provider, the attribute value corresponding to the sub-node of the resource provider, the attribute value corresponding to the resource failure, etc. For example, different types of resource failures can be identified using different bit positions, the parent-child relationship between different resources can be described using the children field, and the resource provider can be uniquely identified using the attribute value corresponding to the resource provider identifier. One resource provider may correspond to multiple tenants, and one tenant can only correspond to one resource provider.

[0079] Generate a label form according to the category corresponding to the label, such as Figure 4 shown. The label form includes at least one of the attribute values corresponding to the label identifier, the attribute values corresponding to each preset attribute corresponding to the label, etc. Among them, each preset attribute corresponding to the label and the attribute values corresponding to each preset attribute can be stored in the label form in the form of key-value pairs.

[0080] Generate a resource provider label form according to the category corresponding to the resource provider label, such as Figure 4 shown. The resource provider label form includes at least one of the attribute values corresponding to the resource provider identifier, the attribute values corresponding to the label identifier, etc.

[0081] Generate a resource timeline form according to the category corresponding to the resource timeline, such as Figure 4 shown. The resource timeline form includes at least one of the attribute values corresponding to the resource provider identifier, the attribute values corresponding to the meta-information change, the attribute values corresponding to the label change, the attribute values corresponding to the resource failure change, the attribute values corresponding to the resource form change, etc.

[0082] Generate a resource allocation form according to the category corresponding to the resource allocation, such as Figure 4 shown. The resource allocation form includes at least one of the attribute values corresponding to the resource provider identifier, the attribute values corresponding to the atomic resource type, the attribute values corresponding to the resource usage status, the attribute values corresponding to the resource usage amount, the attribute values corresponding to the tenant identifier, etc.

[0083] Generate a tenant form according to the category corresponding to the tenant, such as Figure 4 shown. The tenant form includes at least one of the attribute values corresponding to the tenant identifier, the attribute values corresponding to the tenant name, etc.

[0084] Generate an atomic resource form according to the category corresponding to the atomic resource, such as Figure 4 shown. The atomic resource form includes at least one of the attribute values corresponding to the atomic resource type, the attribute values corresponding to the atomic resource name, etc.

[0085] The above atomic resource form, label form, resource provider label form, resource provider form, resource form, meta-information form can be stored in the above distributed cache sub-module, and other forms may not be stored in the distributed cache sub-module.

[0086] When a preset condition for triggering the update of the local cache sub-module is met, the resource tree in the local cache sub-module can be updated according to the information of the newly added resources stored in the distributed cache sub-module. Specifically, it can be implemented by the following steps:

[0087] First, generate at least one resource node corresponding to the newly added resource by using each resource form corresponding to the newly added resource; then, update the resource tree in the local cache sub-module by using the at least one resource node according to the resource organization rule; wherein, the resource tree includes resource nodes corresponding to each resource.

[0088] As Figure 5 shown, the resource node can be a virtual machine, a block storage device, a local storage device, a CDN physical machine, etc. The resource node includes a parent node and a child node. For example, the parent node can be a virtual machine, and its child node can be the CPU corresponding to the virtual machine. Different resources are all connected to the same preset root node.

[0089] In addition, as Figure 5 shown, multiple local cache sub-modules can be set up. This can not only achieve the backup of the resource tree, but also achieve load balancing. For example, when there are multiple requests for the resources stored in the local cache sub-module at the same time, the multiple requests can act on different local cache sub-modules, thereby improving the processing efficiency of the requests. The multiple local cache sub-modules continue to synchronize the resource tree through a message queue.

[0090] The above embodiments have described the introduction of newly added resources. Next, the update operation of the original resources will be described. Specifically, the update of the original resources can be achieved by the following steps:

[0091] Obtain the new resource information of the resource to be updated; determine the new attribute values corresponding to at least one preset attribute of the resource to be updated according to the new resource information; update the corresponding information stored in the database by using the new attribute values; update the corresponding information in the corresponding resource form in the distributed cache sub-module by using the new attribute values; locate the resource node to be updated according to the resource form where the update occurs, and update the corresponding resource node in the local cache sub-module according to the information in the updated resource form.

[0092] The above update operations on the database, the distributed cache sub-module, and the local cache sub-module can be performed when the corresponding preset conditions are triggered. The preset conditions here can be conditions for timed updates, etc.

[0093] The above embodiments establish a three - layer storage architecture of a local cache sub - module, a distributed cache sub - module, and a storage sub - module. Before introducing or updating resources, first, the resource information of the resources to be updated or introduced is compared with the information stored in the local cache sub - module. If the comparison result shows that resources need to be introduced or updated, then the steps of introducing new resources or updating resources in the above embodiments are executed. This method can avoid requests for introducing or updating resources from directly acting on the database, effectively ensuring the security of the database. At the same time, the above three - layer storage architecture maintains good performance while maintaining the flexibility of introducing heterogeneous resources. For a storage module with more than 2000 edge nodes, more than 200,000 resources, and the amount of information corresponding to the resources exceeding 3 million, it can achieve information synchronization and update at the second - level performance.

[0094] In addition, a resource update queue can be saved in the local cache sub - module. The resource update queue stores a preset number of recently updated resource nodes, and the resource update queue adopts a first - in - first - out policy, that is, as new resource nodes enter, the resource nodes that entered the queue first are removed from the queue. Since resource nodes are generally updated continuously, using this queue to store recently updated resource nodes and traversing the queue first when there is a need to update resource nodes can effectively improve the efficiency of updating resource nodes. If the resource node to be updated cannot be located from the resource update queue, then traverse the resource tree to update the resource node.

[0095] If the resource node that was originally stored in the resource update queue has been updated recently, then place this resource node at the end of the resource update queue, and other nodes after this resource node move backward to fill the vacated positions. When traversing the resource update queue, traverse from the end position forward in turn, which can further improve the efficiency of resource node update.

[0096] The above - mentioned storage module, as a resource pool for edge cloud resource scheduling and production dependence, shields the differences in the physical structure of resources and abstractly converts them into unified logical resources, which can support a series of operations such as over - selling, reservation, and conversion of resources, providing data support for resource allocation, operation, and cost sharing; in the process of scheduling resources, manage resources by querying, deducting, and rolling back the inventory in the storage module to prevent waste and over - selling of resources. The change information of resources will be linked with each module in the form of event notifications through the message channel.

[0097] In some embodiments, the following steps can be used for resource allocation:

[0098] First, obtain a resource scheduling request; then, determine the resource requirement information corresponding to the resource scheduling request; then, according to the resource requirement information and the information of each resource stored in the storage module, determine the resource allocation information that can meet the resource requirement information; finally, allocate the resources corresponding to the resource allocation information to the tenant corresponding to the resource scheduling request.

[0099] The above resource scheduling request includes the identification information of the tenant and the tenant's resource requirement information in terms of computing, storage, or network. By parsing the resource scheduling request, the tenant making the resource request can be determined, and at the same time, the resource requirement information required by the tenant can be obtained. After obtaining the resource requirement information, query the information of each resource stored in the storage module, and allocate the resources that can meet the resource requirement information to the tenant according to the query result.

[0100] Exemplarily, according to the above resource scheduling request sent by the tenant, resources can be allocated to the tenant by querying the resource forms of each resource stored in the distributed cache sub-module. After allocating resources to the tenant, set the attribute value of the tenant identifier corresponding to the resource in the databases of the local cache sub-module, the distributed cache sub-module, and the storage sub-module to include the identification information of the tenant.

[0101] When the resource requirement information is the requirement information for a virtual machine, the resource requirement information may include the requirement information in terms of computing, storage, network, machine type, operator, etc. After allocating the resource information to the tenant, the corresponding information stored in the storage module needs to be deducted to prevent over-selling of resources. The attribute values of the virtual machine stored in the storage module corresponding to each preset attribute can be determined according to the resource information such as the local storage device, CPU, and kernel version of the virtual machine collected using the name of the virtual machine.

[0102] When the resource requirement information is the requirement information for a network computer in the form of a bare machine, the resource requirement information may include the requirement information in terms of computing, storage, network, machine type, operator, name, etc.; among them, the resource requirement information needs to include the requirement information corresponding to the machine type and name. After allocating the resource information to the tenant, deduct the CPU corresponding to the physical machine allocated to the tenant stored in the storage module to prevent over-selling of resources. When allocating the above physical machine to the tenant, query information and allocate resources in the storage module from the machine type and the name of the physical machine.

[0103] When the resource requirement information is the requirement information of a virtual machine obtained by virtualizing operations for a third party, the resource requirement information may include requirement information regarding computing, storage, network, model, operator, name, etc.; among them, the resource requirement information needs to include the requirement information corresponding to the model. When allocating resources, it is also necessary to refer to the number of CPUs of the virtual machines stored in the storage module and the number of virtual machines set by the third party. After allocating resource information to the tenant, the number of CPUs of the virtual machines stored in the storage module is deducted, and the number of virtual machines set by the third party is deducted to prevent over-selling of resources. The resource information of such virtual machines can be obtained from the third party through an interface.

[0104] When the resource requirement information is the requirement information of a read-only storage device or an ARM single board computer, the resource requirement information may include requirement information regarding computing, storage, network, model, operator, name, etc.; among them, the resource requirement information needs to include the requirement information corresponding to the model, and the model is used for resource allocation. After allocating resource information to the tenant, the number of read-only storage devices or ARM single board computers stored in the storage module is deducted to prevent over-selling of resources. The resource information of the read-only storage device or the ARM single board computer can be obtained from the third party through the model and name using an interface.

[0105] When the resource requirement information is the requirement information of an object storage device or a network storage device, the resource requirement information may include requirement information such as capacity and storage type. Over-selling of resources is prevented by means of resource water level warning.

[0106] In addition, in order to facilitate various systems such as terminal streaming to obtain information about tags and status of virtual machines that have been allocated to tenants, the allocation information of virtual machines can be recorded.

[0107] According to the above statement, the attribute value of the tenant identifier, that is, the identification information, can represent which tenant the corresponding resources are allocated to. Since the attribute values of the resources corresponding to each preset attribute may not be stored in consecutive positions, they can be associated using the above identification information. Therefore, the preset attributes and the corresponding attribute values associated using the identification information can be used as the resource pool corresponding to the tenant. As Figure 5 shown, the database includes resource pools of multiple tenants. In addition, although the resource tree is stored in the local cache sub-module, according to the above identification information, the preset attributes and the corresponding attribute values associated with the identification information can also be found in the local cache sub-module. That is, the identification information can be used to determine the resource pool of a certain tenant in the local cache sub-module, and the concept of the resource pool also applies to the local cache sub-module.

[0108] In some embodiments, such as Figure 5As shown in the figure, the resources already allocated to a tenant can be updated in the following manner:

[0109] First, use the tenant filtering plugin to obtain the resource update information of the update resources that need to be updated, and determine the identification information of the tenant corresponding to the resource update information; then, use the interception plugin to locate the resource pool corresponding to the tenant according to the determined identification information of the tenant; finally, use the resource update information to update the attribute values of the preset attributes in the resource pool.

[0110] Exemplarily, the device or device group that executes the resource management method of this embodiment can regularly collect the resource information of the resources, and when it is determined according to the collected information that there is information that needs to be updated, send a resource update request to the tenant filtering plugin; the tenant filtering plugin can determine the above resource update information by parsing the resource update request. Since the mapping relationship between resources and tenants is saved in the tenant filtering plugin, the tenant filtering plugin can determine the identification information of the tenant corresponding to the resource update information, and then the tenant filtering plugin sends the identification information of the tenant corresponding to the resource update information to the interception plugin. Since the mapping relationship between tenants and resource pools is saved in the interception plugin, the interception plugin can locate the resource pool corresponding to the tenant.

[0111] When using the resource update information to update the attribute values of the preset attributes in the resource pool, it is necessary to first determine the preset attributes that need to be updated and the new attribute values according to the resource update information; then use the above new attribute values to first update the attribute values of the corresponding preset attributes in the resource pool of the database, then update the information in the corresponding form in the distributed cache sub-module, and then update the information in the corresponding resource node in the local cache sub-module.

[0112] Exemplarily, the above resource update information may include the information that the storage resources need to be updated, the information that the computing resources need to be updated, etc.

[0113] In some embodiments, as Figure 5 shown, the resources of a specified tenant can be queried, updated, etc. in the following manner:

[0114] First, use the interception plugin to obtain the resource request sent by the tenant and containing tenant information, and locate the resource pool corresponding to the tenant of the resource request; then, perform the corresponding operation on the located resource pool according to the operation indicated by the resource request.

[0115] Exemplarily, the resource request includes a request to update the resources of a specified user. After determining the resource pool of the specified user, the resource request can be parsed to determine the resource information to be updated, the preset attributes to be updated, and the new attribute values. Then, the new attribute values are used to first update the attribute values of the corresponding preset attributes in the resource pool of the database, then update the information in the corresponding form in the distributed cache sub-module, and then update the information in the corresponding resource node in the local cache sub-module.

[0116] Exemplarily, the resource request includes a request to query the resources of a specified user. After determining the resource pool of the specified user, the attribute values of the resources occupied by the tenant corresponding to each preset attribute are obtained from and feedback to the resource pool of the local cache sub-module.

[0117] Exemplarily, the resource request includes a request to invoke the resources of a specified user. After determining the resource pool of the specified user, the attribute values of at least one preset attribute are obtained from the resource pool, and the corresponding resources are invoked to perform a certain operation according to the attribute values of the preset attributes.

[0118] In some embodiments, as Figure 5 shown, the resources can be queried in the following manner:

[0119] First, obtain the resource query request, and determine the identification information of the tenant to be queried by the resource query request according to the information stored in the distributed cache sub-module; when the resource query request is a request to query all resources, the identification information of the tenant determined by the distributed cache sub-module includes the identification information of all tenants; then, use the interception plugin to obtain the identification information of the tenant determined by the distributed cache sub-module, and use the identification information to locate the resource pool of the tenant; finally, obtain and feedback the attribute values of the preset attributes associated with the identification information from the local cache sub-module, that is, obtain and feedback the information in the corresponding resource pool from the local cache sub-module.

[0120] The above resource pool query based on the isolation of the distributed cache sub-module from the tenant can query the information of all resources, providing an automated scheduling solution for different products to access the Infrastructure as a Service (IAAS) layer, and quickly solving the problems of resource reservation and contention in a multi-tenant scenario.

[0121] The above embodiments use the tenant filtering plugin and the interception plugin to intercept the requests, realizing the resource management ability of multi-tenant isolation that can be plugged and played without modifying the code.

[0122] Resource isolation among tenants is achieved using a resource pool. Information about resources allocated to all tenants can be stored together in a database, that is, information about different tenants is stored in the same table, and then different tenants are distinguished by the value of a certain column in the data row. That is, each row of data uses the value of a certain column (tenant identification information) to uniquely identify the allocated tenant. In this application, a role-based access control mode can be adopted to perform operations such as resource query and update, that is, resource query, update, etc. need to be limited within the tenant's resource pool.

[0123] In some embodiments, an abstraction layer can be set up in the device or device cluster that executes the resource management method, and the abstraction layer is used to introduce new resources or update the information stored in the storage module. In addition, multiple interfaces can be set up in the device or device cluster that executes the resource management method to implement functions such as information query, resource scheduling, introduction of new resources, and life cycle management of the information already stored in the storage module.

[0124] In some embodiments, for different resources, a management method matching the resource can be used for management. Here, the management method includes the method of introducing new resources, the method of updating resources, the method of querying resources, etc.

[0125] In some embodiments, the usage situation of resources can be collected in real time, and the allocation strategy of the corresponding resources can be adjusted according to the usage status of the resources. For example, when a certain resource is in use, this resource is no longer allocated to other tenants to avoid resource contention problems.

[0126] The above embodiments adopt a resource management method with a stronger isolation and a three-layer storage architecture, and use a non-intrusive transformation method to softly access all resources for operations such as query and update. At the same time, oversubscription limit and reuse of resources can be achieved through a series of events and interface synchronization. Specifically, in implementation, local cache sub-modules, interception plugins, tenant filtering plugins, distributed cache sub-modules, timed comparison local cache sub-modules, etc. are used to avoid large-scale access to the database; an analytic database (ADB) can be used to achieve resource introduction at the minute level and can also achieve real-time resource water level query.

[0127] The above embodiments shield the differences in physical architecture, virtualization, source, etc. of the resources accessed by the edge cloud, broaden the resource sources, and the resources are uniformly allocated, scheduled, and controlled, optimizing the user experience. Through resource scheduling, requirements such as automated fault operation and maintenance of resources in the edge cloud scenario can be solved, the resource onboarding speed is accelerated, the resource utilization rate is increased, and the cost is reduced.

[0128] Corresponding to the application scenario and method of the method provided in the embodiments of the present application, the embodiments of the present application further provide a resource management device. As Figure 6 shown in the structural block diagram of the resource management device according to an embodiment of the present application, the resource management device may include:

[0129] An information acquisition module 610, configured to acquire resource information of newly added resources and at least one preset attribute.

[0130] A resource management module 620, configured to determine the attribute values of the newly added resources corresponding to each preset attribute according to the resource information, and store the attribute values of the newly added resources corresponding to each preset attribute in a storage module.

[0131] In some embodiments, the storage module includes a storage sub-module storing a database; when the resource management module 620 stores the attribute values of the newly added resources corresponding to each preset attribute in the storage module, it is configured to:

[0132] Store the attribute values of the newly added resources corresponding to each preset attribute in the database of the storage sub-module.

[0133] In some embodiments, the storage module includes a distributed cache sub-module; when the resource management module 620 stores the attribute values of the newly added resources corresponding to each preset attribute in the storage module, it is configured to:

[0134] Acquire at least one preset resource attribute category and the preset attributes respectively corresponding to each resource attribute category;

[0135] Generate resource forms corresponding to each resource attribute category according to the preset attributes corresponding to each resource attribute category by using the attribute values of each preset attribute;

[0136] Establish a mapping relationship between the identification information of the newly added resources and each resource form;

[0137] Store the identification information and each resource form in the distributed cache sub-module according to the mapping relationship.

[0138] In some embodiments, the mapping relationship includes a corresponding relationship of key-value pairs, where the key in the key-value pair corresponds to the identification information, and the value in the key-value pair corresponds to the resource form.

[0139] In some embodiments, the storage module further includes a local cache sub-module; when the resource management module 620 stores the attribute values of the newly added resources corresponding to each preset attribute in the storage module, it is configured to:

[0140] Generate at least one resource node corresponding to the newly added resource by using each resource form corresponding to the newly added resource;

[0141] Update the resource tree in the local cache sub-module by using the at least one resource node according to the resource organization rule; wherein, the resource tree includes resource nodes corresponding to at least one resource.

[0142] In some embodiments, the preset attribute includes a tenant identifier, and the attribute value corresponding to the tenant identifier includes the identifier information of the tenant occupying the resource; the resource management module 620 is further configured to:

[0143] Determine the resource pool of the tenant corresponding to the identifier information; wherein, the resource pool includes at least one preset attribute of the resource and the attribute values corresponding to each preset attribute.

[0144] In some embodiments, the resource management module 620 is further configured to:

[0145] Use a tenant filtering plugin to obtain the resource update information of the update resource to be updated, and determine the identifier information of the tenant corresponding to the resource update information;

[0146] Use an interception plugin to locate the resource pool corresponding to the tenant according to the determined identifier information of the tenant;

[0147] Update the attribute values of the preset attributes in the resource pool by using the resource update information.

[0148] In some embodiments, the resource management module 620 is further configured to:

[0149] Use an interception plugin to obtain a resource request including tenant information, and locate the resource pool corresponding to the tenant of the resource request according to the tenant information;

[0150] Perform a corresponding operation on the located resource pool according to the operation indicated by the resource request.

[0151] In some embodiments, the storage module includes a distributed cache sub-module and a local cache sub-module;

[0152] The resource management module 620 is further configured to:

[0153] Obtain a resource query request;

[0154] Determine the identifier information of the tenant to be queried by the resource query request according to the information stored in the distributed cache sub-module;

[0155] Use an interception plugin to obtain the identifier information of the tenant, and locate the resource pool of the tenant by using the identifier information;

[0156] Retrieve and feedback the information in the located resource pool from the local cache sub-module.

[0157] In some embodiments, the resource management module 620 is further configured to:

[0158] Obtain a resource scheduling request;

[0159] Determine the resource requirement information corresponding to the resource scheduling request;

[0160] According to the information of each resource stored in the storage module, determine the resource allocation information that can meet the resource requirement information;

[0161] Allocate the resources corresponding to the resource allocation information to the tenant corresponding to the resource scheduling request.

[0162] In some embodiments, the storage module includes a distributed cache sub-module; when the resource management module 620 determines the resource allocation information that can meet the resource requirement information according to the information of each resource stored in the storage module, it is configured to:

[0163] According to the information of each resource stored in the distributed cache sub-module, determine the resource allocation information that can meet the resource requirement information.

[0164] In some embodiments, the newly added resources include the resources that need to be introduced into the edge node; wherein, the resource types corresponding to different edge nodes are different and / or the resource types of different resources within the same edge node are different.

[0165] For the functions of each module in each device of the embodiments of the present application, reference may be made to the corresponding descriptions in the above methods, and they have the corresponding beneficial effects, which will not be elaborated here.

[0166] Figure 7 It is a block diagram of an electronic device for implementing the embodiments of the present application. As Figure 7 shown, the electronic device includes: a memory 710 and a processor 720. The memory 710 stores a computer program that can run on the processor 720. When the processor 720 executes the computer program, the methods in the above embodiments are implemented. The number of the memory 710 and the processor 720 can be one or more.

[0167] The electronic device further includes:

[0168] A communication interface 730, configured to communicate with external devices and perform data interaction and transmission.

[0169] If the memory 710, the processor 720, and the communication interface 730 are implemented independently, the memory 710, the processor 720, and the communication interface 730 can be interconnected via a bus and communicate with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7 only a thick line is used to represent it in Figure 7 , but it does not mean that there is only one bus or one type of bus.

[0170] Optionally, in a specific implementation, if the memory 710, the processor 720, and the communication interface 730 are integrated on a single chip, the memory 710, the processor 720, and the communication interface 730 can communicate with each other through an internal interface.

[0171] An embodiment of the present application provides a computer-readable storage medium storing a computer program, which when executed by a processor implements the method provided in the embodiment of the present application.

[0172] An embodiment of the present application further provides a chip, which includes a processor for calling and running instructions stored in a memory, so that a communication device installed with the chip executes the method provided in the embodiment of the present application.

[0173] An embodiment of the present application further provides a chip, including: an input interface, an output interface, a processor, and a memory. The input interface, the output interface, the processor, and the memory are connected via an internal connection path. The processor is configured to execute code in the memory, and when the code is executed, the processor is configured to execute the method provided in the embodiment of the application.

[0174] It should be understood that the above-mentioned processor can be a Central Processing Unit (CPU), or other general-purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc. It is worth noting that the processor can be a processor supporting the Advanced RISC Machines (ARM) architecture.

[0175] Further, optionally, the above-mentioned memory can include a read-only memory and a random access memory. The memory can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can include a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically EPROM (EEPROM), or a flash memory. The volatile memory can include a Random Access Memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Sync link DRAM (SLDRAM), and Direct Rambus RAM (DR RAM).

[0176] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions according to the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another.

[0177] In the description of this specification, the descriptions referring to terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. mean that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or more embodiments or examples. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0178] In addition, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" can explicitly or implicitly include at least one of the features. In the description of the present application, "a plurality of" means two or more, unless otherwise specifically defined.

[0179] Any process or method described in the flowchart or otherwise described herein can be understood to represent a module, segment, or portion of code including one or more executable instructions for implementing a specific logical function or process. And the scope of the preferred embodiments of the present application includes additional implementations, where the functions can be executed in a substantially simultaneous manner or in a reverse order according to the involved functions, rather than in the order shown or discussed.

[0180] The logic and / or steps described in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing a logical function, and can be specifically implemented in any computer-readable medium for use by an instruction execution system, apparatus, or device (such as a computer-based system, a system including a processor, or other systems that can fetch and execute instructions from the instruction execution system, apparatus, or device), or in conjunction with these instruction execution systems, apparatuses, or devices.

[0181] It should be understood that each part of the present application can be implemented by hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. All or part of the steps of the method in the above embodiments can be completed by a program instructing relevant hardware. The program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.

[0182] In addition, each functional unit in various embodiments of the present application can be integrated into a processing module, or each unit can exist physically alone, or two or more units can be integrated into one module. The above integrated module can be implemented in the form of hardware or in the form of a software functional module. When the above integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium can be a read-only memory, a magnetic disk, an optical disc, etc.

[0183] As described above, only the exemplary embodiments of the present application are provided, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope recorded in the present application can easily think of various changes or substitutions, and these should all be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A resource management method, characterized in that, Including: Obtaining resource information of newly added resources and at least one preset attribute; Determining, according to the resource information, the attribute values of the newly added resources corresponding to each preset attribute; Storing the attribute values of the newly added resources corresponding to each preset attribute into a storage module, including obtaining at least one preset resource attribute category and the preset attributes respectively corresponding to each resource attribute category; generating resource forms corresponding to each resource attribute category according to the attribute values of each preset attribute and the preset attributes corresponding to each resource attribute category; establishing a mapping relationship between the identification information of the newly added resources and each resource form; the storage module includes a distributed cache sub-module; storing the identification information and each resource form into the distributed cache sub-module according to the mapping relationship.

2. The method according to claim 1, characterized in that, The storage module includes a storage sub-module storing a database; The storing the attribute values of the newly added resources corresponding to each preset attribute into the storage module includes: Storing the attribute values of the newly added resources corresponding to each preset attribute into the database of the storage sub-module.

3. The method according to claim 1 or 2, characterized in that, The mapping relationship includes a corresponding relationship of key-value pairs, where the key in the key-value pair corresponds to the identification information, and the value in the key-value pair corresponds to the resource form.

4. The method according to claim 1 or 2, characterized in that The storage module further includes a local cache sub-module; The storing the attribute values of the newly added resources corresponding to each preset attribute into the storage module further includes: Generating at least one resource node corresponding to the newly added resources by using each resource form corresponding to the newly added resources; Updating the resource tree in the local cache sub-module according to resource organization rules by using the at least one resource node; where the resource tree includes resource nodes corresponding to at least one resource.

5. The method according to claim 1, characterized in that, The preset attribute includes a tenant identifier, and the attribute value corresponding to the tenant identifier includes the identification information of the tenant occupying the resource; The method further includes: Determining the resource pool of the tenant corresponding to the identification information; where the resource pool includes at least one preset attribute of the resource and the attribute values corresponding to each preset attribute.

6. The method according to claim 5, characterized in that, The method further includes: Obtaining resource update information of updated resources to be updated by using a tenant filtering plug-in, and determining the identification information of the tenant corresponding to the resource update information; Locating the resource pool corresponding to the tenant according to the determined identification information of the tenant by using an interception plug-in; Updating the attribute values of the preset attributes in the resource pool by using the resource update information.

7. The method according to claim 5, wherein The method further includes: Obtaining a resource request including tenant information by using an interception plug-in, and locating the resource pool corresponding to the tenant corresponding to the resource request according to the tenant information; Performing a corresponding operation on the located resource pool according to the operation indicated by the resource request.

8. The method according to claim 5, characterized in that, The storage module includes a distributed cache sub-module and a local cache sub-module; The method further includes: Obtaining a resource query request; Determining the identification information of the tenant to be queried by the resource query request according to the information stored in the distributed cache sub-module; Obtaining the identification information of the tenant by using an interception plug-in, and locating the resource pool corresponding to the tenant by using the identification information. Retrieve and feedback the information of the located resource pool from the local cache sub-module.

9. The method according to claim 1, wherein It further includes: Obtain a resource scheduling request; Determine the resource requirement information corresponding to the resource scheduling request; Determine the resource allocation information that can meet the resource requirement information according to the information of each resource stored in the storage module; Allocate the resources corresponding to the resource allocation information to the tenant corresponding to the resource scheduling request.

10. The method according to claim 9, characterized in that, The storage module includes a distributed cache sub-module; the determining the resource allocation information that can meet the resource requirement information according to the information of each resource stored in the storage module includes: Determine the resource allocation information that can meet the resource requirement information according to the information of each resource stored in the distributed cache sub-module.

11. The method according to claim 1, characterized in that, The newly added resources include the resources that need to be introduced into the edge node; wherein, the resource types corresponding to different edge nodes are different and / or the resource types of different resources within the same edge node are different.

12. A resource management device, characterized in that, It includes: An information acquisition module, configured to acquire the resource information of the newly added resources and at least one preset attribute; A resource management module, configured to determine the attribute values of the newly added resources corresponding to each preset attribute according to the resource information, and store the attribute values of the newly added resources corresponding to each preset attribute into the storage module, including acquiring at least one preset resource attribute category and the preset attributes respectively corresponding to each resource attribute category; generating resource forms corresponding to each resource attribute category according to the preset attributes corresponding to each resource attribute category by using the attribute values of each preset attribute; establishing a mapping relationship between the identification information of the newly added resources and each resource form; the storage module includes a distributed cache sub-module; storing the identification information and each resource form into the distributed cache sub-module according to the mapping relationship.

13. An electronic device, including a memory, a processor, and a computer program stored on the memory, where the processor implements the method according to any one of claims 1-11 when executing the computer program.

14. A computer-readable storage medium, in which a computer program is stored, and the computer program implements the method according to any one of claims 1-11 when executed by a processor.

Citation Information

Patent Citations

  • Method and device for updating object

    CN112749173A