Method and apparatus for managing resource allocation in recommendation scenario, device, and medium

By maping a variety of processing resources to unified general resources, the problem of resource allocation complexity and lack of waste in existing technology have been solved, and more effective and flexible resource management has been realized.

WO2025020827A1PCT designated stage expired Publication Date: 2025-01-30BEIJING VOLCANO ENGINE TECH CO LTD

Patent Information

Application Number
PCT/CN2024/101749
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-27
Filing Date
2024-06-26
Publication Date
2025-01-30

AI Technical Summary

Technical Problem

When managing remote resource allocation, it is difficult to effectively and flexibly coordinate the use of multiple processing resources, resulting in the problem of wasted or insufficient resources.

Method used

By maping a variety of types of processing resources to unified general resources and managing general resources, users can allocate universal resources from multiple processing resources to allocate target tasks according to the resource allocation.

Benefits of technology

It has achieved more effective and flexible managing resources when performing tasks, reduced the complexity of resource allocation, and avoids the problem of waste and deficiencies of resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024101749_30012025_PF_FP_ABST
    Figure CN2024101749_30012025_PF_FP_ABST
Patent Text Reader

Abstract

Provided are a method and apparatus for managing resource allocation in a recommendation scenario, a device, and a medium. The technical solution can be used in the recommendation scenario to recommend a user to manage a plurality of types of processing resources in a universal resource mode. The plurality of processing resources comprise computing resources, temporarily stored resources, and persistently stored resources, and universal resources indicate at least one of the plurality of processing resources. A target number of universal resources are allocated to the user from the plurality of processing resources, and a resource configuration for specifying to use the universal resources to execute a target task of the user is received from the user, wherein the resource configuration indicates a consumption rate of the universal resources when the target task is executed. At least some universal resources matching the resource configuration among the universal resources are used to execute the target task. In this way, a user can manage in a unified mode a plurality of types of processing resources that may be involved in a task execution process, thereby improving resource management efficiency, and more effectively executing target tasks.
Need to check novelty before this filing date? Find Prior Art

Description

Method, device, equipment and medium for managing resource allocation in recommendation scenarios

[0001] This application claims priority to the Chinese invention patent application entitled “Method, apparatus, device and medium for managing resource allocation in a recommended scenario” and application number 2023109333875, filed on July 27, 2023. The entire contents of that application are incorporated by reference into this application. Technical Field

[0002] Exemplary implementations of the present disclosure relate generally to resource management, and more particularly to methods, apparatuses, devices, and computer-readable storage media for managing resource allocation in a recommendation scenario. Background Art

[0003] With the development of network technology, a variety of technical solutions for remote resource management have been developed. In this case, various processing resources can be located in a location far away from the user's client device, and the user can call the remote processing resources via the network to perform various tasks. However, the task execution process may involve multiple processing resources, and the coordinated operation of managing multiple processing resources is a complex process. At this time, it is desired to manage the multiple processing resources that may be involved in the task execution process in a more efficient and flexible manner.

[0004] Summary of the Invention

[0005] In a first aspect of the present disclosure, a method for managing resource allocation in a recommendation scenario is provided. In this method, a target number of general resources is allocated to a user from a plurality of processing resources, where the plurality of processing resources includes computing resources, temporary storage resources, and persistent storage resources, and the general resources indicate at least one of the plurality of processing resources. A resource configuration is received from the user, specifying the use of the general resources to perform a target task of the user, where the resource configuration indicates a rate at which the general resources are consumed when performing the target task. The target task is performed using at least a portion of the general resources that matches the resource configuration.

[0006] In a second aspect of the present disclosure, a device for managing resource allocation in a recommendation scenario is provided. The device includes: an allocation module configured to allocate a target number of general-purpose resources to a user from a plurality of processing resources, wherein the plurality of processing resources include computing resources, temporary storage resources, and persistent storage resources, and the general-purpose resources indicate at least one of the plurality of processing resources; a receiving module configured to receive from the user a resource configuration specifying the use of the general-purpose resources to perform a target task of the user, wherein the resource configuration indicates a consumption rate of the general-purpose resources when performing the target task; and an execution module configured to execute the target task using at least a portion of the general-purpose resources that matches the resource configuration.

[0007] In a third aspect of the present disclosure, an electronic device is provided. The electronic device includes: at least one processing unit; and at least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to the first aspect of the present disclosure.

[0008] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the processor implements the method according to the first aspect of the present disclosure.

[0009] It should be understood that the content described in this summary section is not intended to limit the key features or important features of the implementation of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easy to understand through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The above and other features, advantages and aspects of various implementations of the present disclosure will become more apparent hereinafter with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:

[0011] FIG1 shows a block diagram of calling a resource in a remote processing device according to an exemplary implementation of the present disclosure;

[0012] FIG2 illustrates a block diagram for managing resource allocation in a recommendation scenario according to some implementations of the present disclosure;

[0013] FIG3 shows a block diagram for applying for general resources according to some implementations of the present disclosure;

[0014] FIG4 illustrates a block diagram for determining a predicted quantity of a general resource according to some implementations of the present disclosure;

[0015] FIG5 illustrates a block diagram for specifying resource configuration according to some implementations of the present disclosure;

[0016] FIG6 illustrates a block diagram for specifying resource configuration for a data management task according to some implementations of the present disclosure;

[0017] FIG7 illustrates a block diagram for specifying resource configuration for a feature engineering task according to some implementations of the present disclosure;

[0018] FIG8 illustrates a block diagram for specifying resource configuration for a model training task according to some implementations of the present disclosure;

[0019] FIG9 illustrates a block diagram for presenting the status of a general resource according to some implementations of the present disclosure;

[0020] FIG10 illustrates a block diagram for monitoring general resource consumption of an application according to some implementations of the present disclosure;

[0021] FIG11 shows a block diagram for counting general resource consumption according to some implementations of the present disclosure;

[0022] FIG12 shows a block diagram for changing resource configuration according to some implementations of the present disclosure;

[0023] FIG13 illustrates a flowchart of a method for managing resource allocation in a recommendation scenario according to some implementations of the present disclosure;

[0024] FIG14 shows a block diagram of an apparatus for managing resource allocation in a recommendation scenario according to some implementations of the present disclosure; and

[0025] FIG15 illustrates a block diagram of a device capable of implementing various implementations of the present disclosure. DETAILED DESCRIPTION

[0026] The following describes implementations of the present disclosure in more detail with reference to the accompanying drawings. Although certain implementations of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the implementations described herein. Rather, these implementations are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and implementations of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.

[0027] In the description of the implementation of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "an implementation" or "the implementation" should be understood as "at least one implementation". The term "some implementations" should be understood as "at least some implementations". The following may also include other explicit and implicit definitions. As used herein, the term "model" can represent the association relationship between various data. For example, the above-mentioned association relationship can be obtained based on a variety of technical solutions currently known and / or to be developed in the future.

[0028] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) must comply with the requirements of relevant laws, regulations and relevant provisions.

[0029] It is understandable that before using the technical solutions disclosed in the various embodiments of this disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved in this disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.

[0030] For example, in response to a user's active request, a prompt message is sent to the user to clearly inform the user that the operation requested will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the electronic device, application, server, storage medium, or other software or hardware that performs the operations of the disclosed technical solution based on the prompt message.

[0031] As an optional but non-limiting implementation, in response to receiving a user's active request, a prompt message may be sent to the user, for example, in the form of a pop-up window, in which the prompt message may be presented in text form. Furthermore, the pop-up window may also include a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.

[0032] It is understandable that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure.

[0033] As used herein, the term "in response to" refers to a state in which a corresponding event occurs or a condition is satisfied. It will be understood that the timing of executing a subsequent action executed in response to the event or condition is not necessarily strongly correlated with the time when the event occurs or the condition is satisfied. For example, in some cases, a subsequent action may be executed immediately upon the occurrence of the event or the satisfaction of the condition; in other cases, the subsequent action may be executed some time after the occurrence of the event or the satisfaction of the condition.

[0034] Sample Environment

[0035] With the development of network technology, a variety of technical solutions for remote resource management have been developed. Referring to FIG1 , an environment for remote resource invocation is described, which shows a block diagram 100 of an environment for remote resource invocation according to an exemplary implementation of the present disclosure. As shown in FIG1 , a resource pool 110 may include one or more processing devices 140, and each processing device 140 may provide multiple types of processing resources, such as computing resources 112, temporary storage resources 114 (e.g., storage space located in an internal memory of a computing device), and persistent storage resources 116 (e.g., storage space located in an external storage device of a computing device, such as a hard disk).

[0036] User 120 can call various processing resources in the remote resource pool 110 to perform the target task 130. Before performing the target task 130, user 120 needs to apply to the management system of the resource pool 110 in advance. With permission, user 120 can use the requested processing resources to perform the target task 130. Currently, a technical solution for managing resource allocation using time as a unit of measurement has been proposed. For example, user 120 can apply to use a certain resource / certain resources within a predetermined time length, for example, can apply to use the processing resources in a certain model of processing equipment. However, this solution cannot take into account the fluctuations in the number of processing resources required by the user, which may lead to waste of resources or insufficient resources.

[0037] Currently, a technical solution has been proposed to manage resource allocation based on the number of resources consumed. However, in this case, it is difficult for users to control the amount of resources consumed, which may cause the management system to stop providing services to users due to excessive resource consumption. Furthermore, different types of target tasks may require the use of different types and quantities of processing resources. In this case, users have to consider various factors when applying for processing resources and then determine the appropriate resource application method. At this point, it is hoped that a more efficient and flexible approach can be used to manage the various processing resources that may be involved in the execution of a task.

[0038] Summary of Managing Resource Allocation

[0039] In order to at least partially address the deficiencies in the prior art, according to an exemplary implementation of the present disclosure, a method for managing resource allocation in a recommended scenario is proposed. In summary, various types of processing resources can be mapped to a unified universal resource, and various types of resource allocation can be managed in units of universal resources. Referring to FIG2 , an overview of an exemplary implementation according to the present disclosure is described, and FIG2 shows a block diagram 200 for managing resource allocation in a recommended scenario according to some implementations of the present disclosure. As shown in FIG2 , processing resources 210 may include multiple types: computing resources 112, temporary storage resources 114, and persistent storage resources 116. Specifically, computing resources 112 may further include: computing resources based on a general-purpose processor (e.g., a central processing unit CPU), and computing resources based on a dedicated processor (e.g., a graphics processor GPU).

[0040] According to an example implementation of the present disclosure, multiple types of processing resources 210 can be mapped to a unified format of general resources 220. In this case, upon detecting an application from user 120, the requested number (e.g., represented as a target number) of general resources 220 can be allocated to user 120 from the multiple processing resources. Here, the multiple processing resources may include computing resources 112, temporary storage resources 114, and persistent storage resources 116, and the general resource indicates at least one of the multiple processing resources. In other words, when allocating processing resources to user 120, it is not necessary to explicitly indicate which processing resource is allocated to the user. Instead, resource allocation can be managed using general resources 220 as a unified unit of measurement.

[0041] Furthermore, a resource configuration 230 may be received from the user 120. The resource configuration 230 may specify a resource configuration 230 for utilizing the general resources 220 to execute the target task 240 of the user 120. The resource configuration 230 may also indicate a consumption rate of the general resources when executing the target task. Subsequently, the target task 240 may be executed using at least a portion of the general resources 230 that matches the resource configuration 230.

[0042] Using the example implementation of the present disclosure, when executing the target task 240, the user 120 does not have to consider the quantity of various types of processing resources required for different types of target tasks 240 separately, but can manage resource requests and allocations in a unified manner, and then execute the target task 240 according to the specified resource configuration 230 without having to understand many details of the target task 240.

[0043] Detailed process for managing resource allocation

[0044] An overview of managing resource configuration has been described. Below, more details of the process of managing resource allocation in a recommended scenario will be described with reference to the accompanying drawings. According to an example implementation of the present disclosure, a technical solution for managing resource allocation can be implemented in a remote resource management system. For example, a variety of pages can be provided in the remote resource management system to recommend suitable resource allocation management methods to users. Using the example implementation of the present disclosure, users do not have to worry about the details of the tasks to be performed, nor do they have to define their own resource application technical solutions based on the details. In this way, they can directly apply for resources according to the recommendations of the remote resource management system and use the applied resources to perform processing tasks.

[0045] According to an example implementation of the present disclosure, in a remote resource management system, an application for a universal resource from a user can be received, and then a target number of universal resources can be allocated to the user. Figure 3 shows a block diagram 300 for applying for universal resources according to some implementations of the present disclosure. As shown in Figure 3, user 120 can submit a request to the management system of the remote processing resource via an application page 310 as shown in Figure 3. As shown in Figure 3, user 120 can adjust the number of universal resources requested via controls 320. Further, a service area (e.g., a geographic area) and a validity period can be set. According to an example implementation of the present disclosure, credits can be used to represent the number of universal resources. The more credits a user has, the more overall number of processing resources the user can use. Credits can be obtained in a variety of ways. For example, a user can purchase, redeem, or otherwise apply for universal resources.

[0046] It should be understood that FIG3 merely schematically illustrates an overview of the application page. Alternatively and / or additionally, application page 310 may include more or fewer items. Furthermore, the basic unit of the resource package application can be defined based on the user's desired processing power. For example, for a small user, the basic unit of credits indicated by basic control 320 may be "1 universal resource"; for a large user, the basic unit of credits indicated by basic control 320 may be "10,000 universal resources," and so on. In this way, users of different sizes can easily obtain the number of resources that meet their needs.

[0047] According to an example implementation of the present disclosure, general resources can be represented by the number of processing resources that can be used within a predetermined time unit. For example, for computing resources, the processing power of a certain standard model of computing unit (e.g., CPU or GPU) in a predetermined time period can be used as a unit of measurement (e.g., expressed as 1PU / hour). For another example, for temporary storage resources, the storage capacity of a temporary memory that occupies 1T of capacity within a predetermined time period can be used as a unit of measurement (e.g., expressed as 1TMem / hour). For another example, for persistent storage resources, the storage capacity of a persistent memory that occupies 1T of capacity within a predetermined time period can be used as a unit of measurement (e.g., expressed as 1THd / hour).

[0048] According to an example implementation of the present disclosure, the mapping relationship between each processing resource and the general resource can be determined, so as to measure various types of processing resources in a unified manner. Specifically, the above-mentioned mapping relationship can be determined based on the consumption when using various processing resources. For example, the mapping relationship can be determined based on factors such as the power consumption during the operation of the processing device, the wear and tear consumption of the processing device, etc. Assuming that the general resource is represented by 1GU / hour, the mapping relationship between the general resource and the computing resource, the temporary storage resource, and the persistent storage resource can be determined separately (for example, expressed as a ratio).

[0049] According to an exemplary implementation of the present disclosure, the mapping relationship between various processing resources and general resources can be expressed as follows:

[0050] In Formula 1, R1 represents the mapping relationship between computing resources and general resources, R2 represents the mapping relationship between temporary storage resources and general resources, and R3 represents the mapping relationship between persistent storage resources and general resources. Assuming that the consumption when using computing resources is the largest, the consumption when using temporary processing resources is in the middle, and the consumption when using persistent storage resources is the lowest, the order of each mapping relationship can be determined based on the above relationship. For example, the mapping relationship can meet the following conditions: R1>R2>R3. For example, R1, R2, and R3 can be expressed as 0.1, 0.05, and 0.02, respectively, that is, the computing power of the standard model processing unit in 1 hour will be mapped to 0.1 general resources, the storage capacity of the 1T temporary storage unit in 1 hour will be mapped to 0.05 general resources, and the storage capacity of the 1T persistent storage unit in 1 hour will be mapped to 0.02 general resources.

[0051] Assuming that user 120 has applied for one general resource, the user can use the standard computing unit for a period of 1 / 0.1 = 10 hours, can use the 1TB temporary storage resource for a period of 1 / 0.05 = 20 hours, and can use the 1TB persistent storage resource for a period of 1 / 0.02 = 50 hours. It should be understood that although the above shows the time length when the user only uses a single type of processing resource, alternatively and / or additionally, different types of processing resources can be used simultaneously or sequentially in time, and the total amount of the various processing resources used does not exceed one general resource.

[0052] It should be understood that the above mapping relationship is merely schematic, and alternatively and / or additionally, the mapping relationship can be determined in other ways. For example, the positions of the numerator and denominator in Formula 1 can be exchanged, and the mapping relationship obtained at this time will be inversely proportional to Formula 1. For another example, when the consumption involved in various processing resources is different, each mapping relationship can have different specific values. Using the example implementation of the present disclosure, the quantity of different processing resources can be measured separately in a simple and effective manner, thereby facilitating the management of resource allocation in a unified manner.

[0053] Having described the mapping relationships between various processing resources and general resources, the following describes in detail how to call general resources to execute a target task. According to an exemplary implementation of the present disclosure, to execute a target task, a predicted number of general resources that will be consumed by executing the target task can be first determined. Furthermore, if it is determined that this predicted number is not greater than the target number of general resources allocated to the user, the general resources can be called to execute the target task.

[0054] It should be understood that the target task typically does not consume all of the general resources allocated to user 120. In this case, at least a portion of the general resources that matches the resource configuration can be determined and then utilized to execute the target task. In this way, it can be ensured that the user only uses the processing resources that have been allocated to them, and does not occupy other unallocated resources in the resource pool, thereby disrupting the user experience of other users.

[0055] FIG4 illustrates a block diagram 400 for determining a predicted number of general resources according to some implementations of the present disclosure. As shown in FIG4 , to determine a predicted number 420 of general resources that will be consumed to execute a target task 240, the target task 240 may be parsed to determine a predicted number of each of a plurality of processing resources that will be consumed to execute the target task 240. Specifically, for the computing resources 112, assume that the target task 240 requires 2 standard processing units for a duration of 10 hours; for the temporary storage resources 114, assume that the target task 240 requires 4 TMem for a duration of 10 hours; and for the persistent storage resources 116, assume that the target task 240 requires 100 THd for a duration of 10 hours.

[0056] At this point, the predicted quantity 420 of general resources that will be consumed by executing the target task can be determined based on the predicted quantity of each processing resource and the mapping relationship between the general resources and each processing resource. For example, the predicted quantity for each processing resource can be determined based on the mapping relationship described above, thereby determining the predicted quantity 420 of all required general resources. As shown in Figure 4, for computing resources 112, temporary storage resources 114, and persistent storage resources 116, the predicted quantities 412, 414, and 416 can be determined based on the following formula 2:

[0057] E1=2*10*0.1=2

[0058] E2=4*10*0.05=2

[0059] E3=100*10*0.02=20

[0060] Formula 2

[0061] In the above formula, E1 represents the predicted number 412 for computing resources 112, E2 represents the predicted number 414 for temporary storage resources 114, and E3 represents the predicted number 416 for temporary storage resources 116. Furthermore, the predicted number 420 of all required general resources can be determined based on the sum of predicted numbers 412, 414, and 416. That is, in the 10 hours of processing the target task, 2+2+20=24 general resources will be consumed (an average of 2.4 general resources per hour). Using the example implementations of the present disclosure, multiple types of processing resources can be managed in a simpler and more efficient manner, thereby reducing the complexity of resource allocation.

[0062] According to an exemplary implementation of the present disclosure, if it is determined that the predicted quantity 420 is not higher than the target quantity of the general-purpose resources already allocated to the user, the user may be allowed to utilize the allocated general-purpose resources to execute the target task 240. Specifically, at least a portion of general-purpose resources that match the resource configuration may be determined from the general-purpose resources, so that the at least a portion of the general-purpose resources may be called to execute the target task 240. For example, each processing resource may be selected from a plurality of processing resources according to the consumption rate of the general-purpose resources indicated by the resource configuration.

[0063] For more details regarding resource configuration, see FIG5 , which illustrates a block diagram 500 for specifying resource configurations according to some implementations of the present disclosure. As shown in FIG5 , on a designation page 510, a user can specify a resource configuration. For example, multiple predefined resource configurations, as shown in FIG5 , may be recommended to the user, with each configuration consuming a common resource in ascending order of speed. The user can then select from the multiple recommended resource configurations based on interaction 520 to specify the speed at which the common resource is consumed when executing a target task using the common resource.

[0064] As shown in Figure 5, the XS mode can specify that the target task be executed at a rate of consuming 1 general resource per hour, the S mode can specify that the target task be executed at a rate of consuming 2 general resources per hour, the M mode can specify that the target task be executed at a rate of consuming 4 general resources per hour, ..., the 2XL mode can specify that the target task be executed at a rate of consuming 32 general resources per hour, and so on. In this way, the desired resource configuration can be selected based on the speed requirements for executing the target task, thereby introducing a more flexible and customizable factor into the resource allocation process.

[0065] According to an example implementation of the present disclosure, if the predicted quantity is determined to be higher than the target quantity, a message indicating insufficient general resources can be provided to the user. For example, this message can be provided on an alert page to remind the user that currently available general resources are insufficient and to advise the user to request additional general resources. This example implementation of the present disclosure can avoid situations where insufficient resources occur during the execution of a target task, hindering subsequent processing and thus preventing the user from achieving their desired results.

[0066] If it has been determined that the predicted quantity 420 is not greater than the target quantity of general resources allocated to the user, various processing resources can be selected to perform the target task according to the speed specified by the user. For example, based on the predicted quantities 412, 414, and 416 shown in Figure 4, idle resources can be selected from the resource pool to perform the target task. In this case, the quantity of each processing resource to be provided per hour can be determined based on the consumption ratio of each resource. Furthermore, the selected processing resources can be used to perform the target task.

[0067] In the above example, 2.4 general resources will be consumed per hour. Assuming that the user specifies M mode or other higher-speed modes, the target task can be executed at the expected speed. If the user specifies XS mode or S mode, the speed at which various processing resources are provided will be lower than the expected speed. In this way, the speed of executing the target task can be limited to a certain extent, thereby preventing the various processing resources in the resource pool from being exhausted or idle for a long time due to the imbalance of task execution. In this way, it is easy to balance the workload of the resource pool and reduce the occurrence of imbalances such as peaks and troughs.

[0068] According to an example implementation of the present disclosure, in addition to specifying a single resource configuration as shown in FIG5 , a user may be allowed to specify a range of resource configurations. Alternatively and / or additionally, a user may be allowed to specify resource configurations based on the type of target task, or resource configurations may be automatically recommended based on the type of target task. See FIG6 for more details on setting a range, which shows a block diagram 600 for specifying resource configurations for a data management task according to some implementations of the present disclosure.

[0069] As shown in Figure 6, in dialog boxes 620 and 630, the user can specify resource allocation for data management tasks. Specifically, data management tasks can be further divided into archiving tasks, statistical verification tasks, pre-processing tasks, and so on. Pre-processing tasks can be further divided into batch tasks based on batch processing and streaming tasks based on streaming processing. Resource allocation for different types of data management tasks can be specified in dialog boxes 620 and 630, respectively.

[0070] For example, you can specify that the archiving task be executed using the "savings priority (e.g., prioritizing resource saving)" mode, with the minimum and maximum resource consumption rates being M and 4XL respectively; you can specify that the statistical verification task be executed using the "speed priority (e.g., prioritizing the speed of obtaining results)" mode, with the minimum and maximum resource consumption rates being M and 2XL respectively; and you can specify that the batch preprocessing task be executed using the "savings priority" mode, with the minimum and maximum resource consumption rates being M and 4XL respectively. Furthermore, you can specify that the streaming batch processing task be executed using the "savings priority" mode, with the resource consumption rate being M.

[0071] In the context of the present disclosure, the target task may further include a feature engineering task, a model training task, a model reasoning task, and the like. FIG7 shows a block diagram 700 for specifying resource configuration for a feature engineering task according to some implementations of the present disclosure. Feature engineering refers to the process of converting raw data into features that can better express the essence of the problem, so that applying these features to the prediction model can improve the model prediction accuracy for unseen data. As shown in FIG7 , the “save priority” mode can be specified in the configuration page 710, and the minimum and maximum values ​​of the resource consumption rate are M and 2XL, respectively.

[0072] FIG8 shows a block diagram 800 for specifying resource configuration for a model training task according to some implementations of the present disclosure. As shown in FIG8 , the model training process can be specified in the configuration page 810. For the batch training stage, the "saving priority" mode can be specified, and the resource consumption rate of each node involved in the training process can be set to L. At this time, the consumption rate of general resources is 16 per hour. For the streaming training stage, the "saving priority" mode can be specified, and the resource consumption rate of each node involved in the training process can be set to L. At this time, the consumption rate of general resources is 16 per hour.

[0073] Alternatively and / or additionally, target tasks can be divided into offline tasks and online tasks based on their real-time requirements. For example, since offline tasks generally do not require real-time feedback, a lower speed range can be set for offline tasks to conserve general resources. For another example, a higher speed range can be set for online tasks to allow more general resources to execute the online tasks, thereby increasing the speed of outputting results.

[0074] By utilizing the exemplary implementation of the present disclosure, users can customize the mode and speed of resource configuration according to their own needs, thereby facilitating a more flexible and efficient resource management and allocation process.

[0075] According to an exemplary implementation of the present disclosure, after various resources have been provided to perform a target task, the target amount of general resources allocated to the user can be updated based on the amount of general resources already used to perform the target task (i.e., the amount of at least a portion of the general resources determined above). In other words, the amount of general resources already used needs to be deducted from the available general resources allocated to the user.

[0076] Continuing with the above example, assuming that the user has applied for 120 general resources in advance and consumes 24 general resources when performing the target task, the current number of general resources available to the user at this time can be updated to: 120-24=96. According to an example implementation of the present disclosure, the current number of available general resources can be updated at predetermined time intervals. For example, in the above example, 2.4 general resources can be deducted from the current number every hour. For another example, the current number of available general resources can be updated in real time. Assuming that another task of the user subsequently occupies 20 general resources, the current number of general resources available to the user at this time can be further updated to: 96-20=76.

[0077] By utilizing the exemplary implementation of the present disclosure, the number of currently available general resources for a user can be updated in real time according to the usage status of the general resources. In this way, it is possible to manage various processing resources in the resource pool in a more efficient manner, thereby meeting the needs of different users.

[0078] According to an exemplary implementation of the present disclosure, status data of general resources can be provided to users so that they can fully understand the status of the general resources they have applied for. The status data includes at least one of the following: the total amount of general resources, the used portion of general resources, the unused portion of general resources, the cumulative consumption of general resources, the daily consumption of general resources, etc.

[0079] Figure 9 shows a block diagram 900 for presenting the status of general resources according to some implementations of the present disclosure. The general resources applied for by the user each time can be regarded as a resource package, and as shown in Figure 9, the status data of each resource package can be presented in the status page 910. Specifically, the resource package ID can represent a unique identifier of the general resource applied for each time. The status can indicate whether the resources in the resource package have become effective or invalid. The consumed / total amount can represent the ratio between the used part of the resource package and the total amount of all resources. For example, the ratio can be expressed as a percentage; for another example, the ratio can be directly expressed as a fraction (such as, 24 / 120), where 24 represents the resources that have been consumed and 120 represents the total resources allocated at the time of application.

[0080] According to an example implementation of the present disclosure, a general resource may have a predetermined validity period (e.g., 1 year, half a year, 1 month, etc.). At this time, the status data may further include: an application time, used to indicate the time when the user submits the application; and an expiration time, used to indicate the time when the general resource expires. Furthermore, the interval between the current time and the allocation time when the general resource is allocated may be determined, and the interval may be presented in a countdown field, that is, how long after which the general resource will expire. According to an example implementation of the present disclosure, it may be determined whether the countdown meets a predetermined condition (e.g., the countdown is less than or equal to 14 days, or other time interval). When the predetermined condition is met, a message indicating that the general resource is about to expire may be provided.

[0081] In the example of Figure 9, the resource package with ID "1100" will expire in 10 days. Since 10<14, a message indicating that the resource package is about to expire can be provided to the user. For example, the user can be prompted by bold, highlighting, flashing, sending a message, etc. After receiving the prompt, the user can give priority to using the expiring resources to perform the target task, can reset the resource configuration to increase the resource consumption rate, etc. Furthermore, areas where resources can be called can be provided, such as different geographical areas. In this way, it is convenient for users to manage their own general resources in a timely manner and avoid affecting the normal operation of users due to resource expiration.

[0082] According to an example implementation of the present disclosure, when it is determined that a general-purpose resource allocated to a user has reached a predetermined expiration date, the unused portion of the allocated general-purpose resource is reclaimed. This example implementation of the present disclosure allows for the continuous detection and reclaiming of resources in the resource pool that have not been used for a long period of time. This improves the management efficiency of the various processing resources in the resource pool, thereby enabling other users to promptly access available processing resources in the resource pool.

[0083] According to an exemplary implementation of the present disclosure, users can customize monitoring policies and promptly handle various alarm conditions according to the monitoring policies. For example, the monitoring policies may include, but are not limited to, the following: the unused portion of a general resource reaches a predetermined amount, the proportion of unused portions of a general resource reaches a predetermined proportion, and the consumption rate of a general resource exceeds a predetermined threshold, etc.

[0084] Figure 10 shows a block diagram 1000 for monitoring the general resource consumption of an application according to some implementations of the present disclosure. As shown in Figure 10, a monitoring policy can be presented in a monitoring page 1010. The monitoring page 1010 can present information on multiple monitoring policies that have been set, for example, the rule name can represent the rule that the user has set; the monitoring application can represent the application where the target task is located; the monitoring cycle can represent the predetermined time interval for performing the monitoring action; the used / alarm value can represent the relationship between the number of general resources used by the current application and the alarm value set by the user; and the operation can represent the operation performed for the current monitoring policy. It should be understood that Figure 10 only schematically shows examples of various monitoring policies. Alternatively and / or additionally, the user can set more or fewer policies according to their own needs, so as to fully grasp the status of their own resources and target tasks.

[0085] According to an example implementation of the present disclosure, more details about resource consumption can be provided. FIG11 shows a block diagram 1100 for calculating general resource consumption according to some implementations of the present disclosure. As shown in FIG11 , in the statistics page 1110 , daily resource consumption statistics can be provided. Alternatively and / or additionally, cumulative resource consumption can be further provided. In this way, it is easier for users to understand resource consumption in different historical time periods, thereby facilitating users to promptly apply for additional resources when resources are insufficient.

[0086] According to an example implementation of the present disclosure, the status of each target task can be provided to the user. The status of the target task includes at least any one of the following: the category of the target task, the service type, the change item, the change content, the change status, the operation time, the operator, etc. Figure 12 shows a block diagram 1200 for changing resource configuration according to some implementations of the present disclosure. As shown in Figure 12, the status of each target task can be provided in the management page. Specifically, the application name can indicate the name of the application where the target task being executed is located, the module can indicate which module the target task is called by, and so on.

[0087] According to an example implementation of the present disclosure, a user is allowed to change the status of each target task. Specifically, in response to a request from the user, the status of the target task can be updated. Continuing with FIG12 , the change item can represent the item the user desires to modify, the change content can represent the original setting and destination setting of the change item, the status can represent whether the current change is successful, the time can represent the time when the change was initiated, and the changer can represent the person who triggered the change operation.

[0088] Using the example implementations of this disclosure, users can view and adjust the various states of their respective target tasks in real time, and can adjust each state promptly when necessary, thereby executing the target tasks in a manner that better matches the user's expectations. Furthermore, the remote resource management system can conveniently understand the latest state of each target task, thereby adjusting the resource pool configuration policy accordingly with more refined granularity.

[0089] The technical solution for managing resource allocation has been described above. Using the example implementation method of the present disclosure, users do not have to worry about the specific details of each task to be performed, nor do they have to determine the type and quantity of processing resources that each task needs to consume one by one. Instead, they can manage the computing resources, temporary storage resources, and persistent storage resources that may need to be consumed in a unified manner. Furthermore, using the example implementation method of the present disclosure, the corresponding resources are deducted from the resource package only after the general resources in the applied resource package have been consumed. In this way, the resources in the resource package will not be consumed if they are not consumed. In this way, it is convenient for users to consume various resources flexibly.

[0090] Furthermore, by converting the usage of different types of processing resources into a unified, general resource, users can be guaranteed to maximize their utilization of the resources they have requested. This eliminates the situation where various storage resources are exhausted while computing resources remain abundant. This prevents users from being unable to continue using remote resources or having to reapply for depleted resources.

[0091] Example Process

[0092] FIG13 illustrates a flow chart of a method 1300 for managing resource allocation in a recommendation scenario, according to some implementations of the present disclosure. At block 1310, a target number of general-purpose resources is allocated to a user from a plurality of processing resources, the plurality of processing resources comprising computing resources, temporary storage resources, and persistent storage resources, with the general-purpose resources indicating at least one of the plurality of processing resources. At block 1320, a resource configuration is received from the user specifying the use of the general-purpose resources to perform a target task of the user, the resource configuration indicating a rate at which the general-purpose resources are consumed when performing the target task. At block 1330, the target task is performed using at least a portion of the general-purpose resources that match the resource configuration.

[0093] According to an example implementation of the present disclosure, executing a target task includes: determining a predicted number of general resources that will be consumed to execute the target task; in response to determining that the predicted number is not higher than the target number, determining at least a portion of the general resources that match the resource configuration; and calling at least a portion of the general resources to execute the target task.

[0094] According to an example implementation of the present disclosure, determining the predicted number of general resources that will be consumed to execute a target task includes: parsing the target task to determine the predicted number of each processing resource among a plurality of processing resources that will be consumed to execute the target task; and determining the predicted number of general resources that will be consumed to execute the target task based on the predicted number of each processing resource and the mapping relationship between each processing resource and the general resources.

[0095] According to an example implementation of the present disclosure, calling at least a portion of general resources to execute a target task includes: selecting individual processing resources from a plurality of processing resources according to a consumption rate of the general resources indicated by the resource configuration; and executing the target task using the selected individual processing resources.

[0096] According to an example implementation of the present disclosure, the method 1300 further includes: updating the target quantity based on the quantity of at least a portion of the common resources.

[0097] According to an example implementation of the present disclosure, general resources are represented by the amount of processing resources that can be used within a predetermined time unit.

[0098] According to an example implementation of the present disclosure, the method 1300 further includes: providing status data of general resources to the user, the status data including at least any one of the following: the total amount of general resources, the used portion of general resources, the unused portion of general resources, the cumulative consumption of general resources, and the daily consumption of general resources.

[0099] According to an example implementation of the present disclosure, the method 1300 further includes providing an alert message to a user in response to detecting at least any one of the following: the unused portion of the general resource reaches a predetermined amount, the proportion of the unused portion of the general resource reaches a predetermined proportion, and the consumption rate of the general resource exceeds a predetermined threshold.

[0100] According to an example implementation of the present disclosure, the method 1300 general resource has a predetermined validity period, and the method 1300 further includes: determining an interval between a current time and an allocation time at which the general resource is allocated; and in response to determining that the interval exceeds the validity period, reclaiming an unused portion of the general resource allocated to the user.

[0101] According to an example implementation of the present disclosure, the general resource has a predetermined validity period, and the method further includes: determining an interval between a current time and an allocation time at which the general resource is allocated; and in response to determining that a difference between the interval and the validity period satisfies a predetermined condition, providing a message indicating that the general resource is about to expire.

[0102] According to an example implementation of the present disclosure, the method 1300 further includes: providing a status of the target task, where the status of the target task includes at least any one of the following: category of the target task, service type, change item, change content, change status, operation time, and operator.

[0103] According to an example implementation of the present disclosure, the method 1300 further includes: in response to receiving a request from a user, updating the status of the target task, wherein the category of the target task includes at least any one of the following: an offline task, an online task.

[0104] According to an example implementation of the present disclosure, the method 1300 is implemented in a remote resource management system, and allocating universal resources to users includes: in the remote resource management system, in response to receiving an application for universal resources from the user, allocating a quantity of universal resources to the user.

[0105] According to an example implementation of the present disclosure, the method 1300 further includes: in response to determining that the predicted amount is higher than the target amount, providing a message to the user indicating that the general resource is insufficient.

[0106] Example devices and equipment

[0107] FIG14 shows a block diagram of an apparatus 1400 for managing resource allocation in a recommendation scenario according to some implementations of the present disclosure. The apparatus 1400 includes: an allocation module 1410 configured to allocate a target number of general resources to a user from a plurality of processing resources, wherein the plurality of processing resources include computing resources, temporary storage resources, and persistent storage resources, and the general resources indicate at least one of the plurality of processing resources; a receiving module 1420 configured to receive from a user a resource configuration specifying the use of the general resources to perform a target task of the user, wherein the resource configuration indicates a consumption rate of the general resources when performing the target task; and an execution module 1430 configured to execute the target task using at least a portion of the general resources that match the resource configuration.

[0108] According to an example implementation of the present disclosure, the execution module 1430 includes: a prediction module, configured to determine a predicted number of general resources that will be consumed to execute a target task; a determination module, configured to determine at least a portion of the general resources that match the resource configuration in response to determining that the predicted number is not higher than the target number; and a calling module, configured to call at least a portion of the general resources to execute the target task.

[0109] According to an example implementation of the present disclosure, the determination module includes: a parsing module configured to parse the target task to determine the predicted quantity of each processing resource among multiple processing resources that will be consumed for executing the target task; and a predicted quantity determination module configured to determine the predicted quantity of general resources that will be consumed for executing the target task based on the predicted quantity of each processing resource and the mapping relationship between each processing resource and the general resources.

[0110] According to an example implementation of the present disclosure, the calling module includes: a selection module configured to select individual processing resources from a plurality of processing resources according to a consumption rate of a general resource indicated by a resource configuration; and a utilization module configured to utilize the selected individual processing resources to perform a target task.

[0111] According to an exemplary implementation of the present disclosure, the apparatus 1400 further includes: an updating module configured to update the target quantity based on the quantity of at least a portion of the general resources.

[0112] According to an example implementation of the present disclosure, general resources are represented by the amount of processing resources that can be used within a predetermined time unit.

[0113] According to an example implementation of the present disclosure, the device 1400 further includes: a providing module configured to provide status data of general resources to the user, the status data including at least any one of the following: the total amount of general resources, the used portion of general resources, the unused portion of general resources, the cumulative consumption of general resources, and the daily consumption of general resources.

[0114] According to an example implementation of the present disclosure, the device 1400 further includes: an alarm module, configured to provide an alarm message to the user in response to detecting at least any one of the following: the unused portion of the general resource reaches a predetermined amount, the proportion of the unused portion of the general resource reaches a predetermined proportion, and the consumption rate of the general resource exceeds a predetermined threshold.

[0115] According to an example implementation of the present disclosure, the general resource has a predetermined validity period, and the apparatus further includes: an interval determination module configured to determine an interval between a current time and an allocation time at which the general resource is allocated; and a recycling module configured to reclaim an unused portion of the general resource allocated to the user in response to determining that the interval exceeds the validity period.

[0116] According to an example implementation of the present disclosure, the general resource has a predetermined validity period, and the device further includes: an interval determination module, configured to determine an interval between a current time and an allocation time to which the general resource is allocated; and a reminder module, configured to provide a message indicating that the general resource is about to expire in response to determining that a difference between the interval and the validity period meets a predetermined condition.

[0117] According to an example implementation of the present disclosure, the device 1400 further includes: a status providing module, configured to provide the status of the target task, the status of the target task including at least any one of the following: category of the target task, service type, change item, change content, change status, operation time, and operator.

[0118] According to an example implementation of the present disclosure, the device 1400 further includes: a task status update module, configured to update the status of a target task in response to receiving a request from a user, wherein the category of the target task includes at least any one of the following: an offline task, an online task.

[0119] According to an example implementation of the present disclosure, the device 1400 is implemented in a remote resource management system, and the allocation module includes: a remote allocation module configured to allocate a number of general resources to a user in the remote resource management system in response to receiving an application for general resources from the user.

[0120] According to an exemplary implementation of the present disclosure, the apparatus 1400 further includes: a reminder module configured to provide a message indicating that the general resource is insufficient to the user in response to determining that the predicted quantity is higher than the target quantity.

[0121] FIG15 shows a block diagram of a device 1500 capable of implementing various implementations of the present disclosure. It should be understood that the computing device 1500 shown in FIG15 is merely exemplary and should not be construed as limiting the functionality and scope of the implementations described herein. The computing device 1500 shown in FIG15 can be used to implement the methods described above.

[0122] As shown in FIG15 , computing device 1500 is in the form of a general-purpose computing device. Components of computing device 1500 may include, but are not limited to, one or more processors or processing units 1510, memory 1520, storage device 1530, one or more communication units 1540, one or more input devices 1550, and one or more output devices 1560. Processing unit 1510 may be a real or virtual processor and is capable of performing various processes according to a program stored in memory 1520. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to increase the parallel processing capabilities of computing device 1500.

[0123] The computing device 1500 typically includes a plurality of computer storage media. Such media can be any available media accessible to the computing device 1500, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 1520 can be a volatile memory (e.g., registers, cache, random access memory (RAM)), a non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 1530 can be a removable or non-removable medium and can include a machine-readable medium, such as a flash drive, a disk, or any other medium that can be used to store information and / or data (e.g., training data for training) and can be accessed within the computing device 1500.

[0124] The computing device 1500 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG. 15 , a disk drive for reading from or writing to a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading from or writing to a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to a bus (not shown) by one or more data media interfaces. The memory 1520 may include a computer program product 1525 having one or more program modules configured to perform various methods or actions of various implementations of the present disclosure.

[0125] Communication unit 1540 enables communication with other computing devices via a communication medium. Additionally, the functionality of the components of computing device 1500 can be implemented as a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, computing device 1500 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or other network nodes.

[0126] Input device 1550 may be one or more input devices, such as a mouse, keyboard, or trackball. Output device 1560 may be one or more output devices, such as a display, a speaker, or a printer. Computing device 1500 may also communicate with one or more external devices (not shown) via communication unit 1540, as needed, such as storage devices, display devices, or the like, with one or more devices that allow a user to interact with computing device 1500, or with any device that allows computing device 1500 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).

[0127] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is provided, on which a computer program is stored, and when the program is executed by a processor, the method described above is implemented.

[0128] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.

[0129] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.

[0130] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0131] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple implementations of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and a part for a module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.

[0132] While various implementations of the present disclosure have been described above, the foregoing description is intended to be illustrative, not exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is selected to best explain the principles of the implementations, their practical applications, or improvements to existing technologies, or to enable others skilled in the art to understand the various implementations disclosed herein.

Claims

1. A method for managing resource allocation in a recommendation scenario, comprising: allocating a target number of general-purpose resources to a user from a plurality of processing resources, the plurality of processing resources comprising computing resources, temporary storage resources, and persistent storage resources, and the general-purpose resource indicating at least any one of the plurality of processing resources; receiving from the user a resource configuration for specifying the use of the general resource to execute the user's target task, the resource configuration indicating a consumption rate of the general resource when executing the target task; and The target task is executed by utilizing at least a portion of the general resources that match the resource configuration.

2. The method according to claim 1, wherein executing the target task comprises: Determining a predicted amount of general resources that will be consumed to perform the target task; In response to determining that the predicted quantity is not greater than the target quantity, determining the at least a portion of the general resources that match the resource configuration; as well as Calling at least a portion of the general resources to execute the target task.

3. The method according to claim 2, wherein determining the predicted amount of general resources that will be consumed to execute the target task comprises: parsing the target task to determine a predicted number of each of the plurality of processing resources that will be consumed for executing the target task; as well as Based on the predicted quantities of the respective processing resources and the mapping relationship between the respective processing resources and the general resources, the predicted quantity of the general resources to be consumed in executing the target task is determined.

4. The method according to claim 3, wherein calling the at least a portion of the general resources to perform the target task comprises: selecting the respective processing resource from the plurality of processing resources in accordance with the consumption rate of the general purpose resource indicated by the resource configuration; as well as The target task is executed by using the selected processing resources.

5. The method according to claim 1, further comprising: The target quantity is updated based on the quantity of the at least a portion of the general purpose resources. The method according to claim 1 , wherein the general resource is represented by the amount of processing resources that can be used within a predetermined time unit.

7. The method according to claim 1, further comprising: The status data of the universal resource is provided to the user, wherein the status data includes at least any one of the following: the total amount of the universal resource, the used portion of the universal resource, the unused portion of the universal resource, the cumulative consumption of the universal resource, and the daily consumption of the universal resource.

8. The method according to claim 1, further comprising: In response to detecting at least any one of the following: the unused portion of the general resource reaches a predetermined amount, the proportion of the unused portion of the general resource reaches a predetermined proportion, and the consumption speed of the general resource exceeds a predetermined threshold, an alarm message is provided to the user.

9. The method according to claim 1, wherein the generic resource has a predetermined validity period, and the method further comprises: determining an interval between a current time and an allocation time at which the general resource is allocated; as well as In response to determining that the interval exceeds the validity period, an unused portion of the general purpose resource allocated to the user is reclaimed.

10. The method according to claim 1, wherein the generic resource has a predetermined validity period, and the method further comprises: determining an interval between a current time and an allocation time at which the general resource is allocated; as well as In response to determining that a difference between the interval and the validity period satisfies a predetermined condition, a message is provided indicating that the generic resource is about to expire.

11. The method according to claim 1, further comprising: The status of the target task is provided, and the status of the target task includes at least any one of the following: the category, service type, change item, change content, change status, operation time, and operator of the target task.

12. The method according to claim 1, further comprising: In response to receiving a request from the user, the state of the target task is updated, wherein the category of the target task includes at least any one of the following: an offline task and an online task.

13. The method according to claim 1, wherein the method is implemented in a remote resource management system, and allocating the general resource to the user comprises: In the remote resource management system, in response to receiving an application for the general resource from the user, the general resource in the quantity is allocated to the user.

14. The method according to claim 2, further comprising: In response to determining that the predicted amount is higher than the target amount, a message is provided to the user indicating that the generic resource is insufficient.

15. An apparatus for managing resource allocation in a recommendation scenario, comprising: an allocation module configured to allocate a target number of general resources to a user from a plurality of processing resources, the plurality of processing resources comprising computing resources, temporary storage resources, and persistent storage resources, and the general resource indicating at least any one of the plurality of processing resources; A receiving module configured to receive from the user a resource configuration for specifying the use of the general resource to execute the user's target task, wherein the resource configuration indicates a consumption speed of the general resource when executing the target task; as well as The execution module is configured to execute the target task by utilizing at least a portion of the general resources that match the resource configuration.

16. An electronic device, comprising: at least one processing unit; as well as At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the method according to any one of claims 1 to 14 when executed by the at least one processing unit.

17. A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, causes the processor to implement the method according to any one of claims 1 to 14.

Citation Information

Patent Citations

  • Resource allocation method and device, computer readable storage medium and electronic equipment

    CN110874272A

  • Resource allocation method and device, computer equipment and storage medium

    CN114035962A

  • Resource calling method and device, electronic equipment and computer readable storage medium

    CN114253734A

  • Method and device for managing resource allocation in recommendation scene, equipment and medium

    CN116954909A

  • Managing resources in a configurable computing environment

    US10061621B1

Cited By

  • Resource management method and device, equipment, medium and program product

    CN119718684A