Computing resource allocation method, device and electronic device for data center
Through the computing resource allocation method for the data middle platform, the pre-built utility model and workload prediction model are used to dynamically allocate computing resources, which solves the problem of the inability to meet personalized needs and balance resource utilization and user satisfaction in the existing technology. The problem has achieved efficient and timely allocation of computing resources.
Patent Information
- Application Number
- CN202210447909.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-27
- Publication Date
- 2025-02-21
- Estimated Expiration
- 2042-04-27
AI Technical Summary
The existing computing resource scheduling management solutions cannot effectively implement real-time dynamic provisioning, cannot meet the personalized needs of different user clusters, and cannot balance resource utilization and user service satisfaction.
A computing resource allocation method for data middle platform is proposed. By receiving user computing task requests, the basic state information of the computing resource pool is obtained, and multiple calculations are determined based on the pre-constructed computing resource allocation utility model and workload prediction model. Resource allocation scheme and select the best scheme to assign to the computing task request.
It realizes dynamic computing resource allocation for user task requests, ensures timely response to user requests and efficient utilization of computing resources, and balances resource utilization and user service satisfaction.
Smart Images

Figure CN114741200B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of computer technology, and in particular to a computing resource allocation method, device and electronic device for a data center. Background Art
[0002] With the widespread access to distributed energy, the coverage of the power grid continues to expand. At the same time, the data generated by power production, transmission and conversion is also showing an explosive growth trend. Traditional data management systems and data analysis methods are no longer suitable for the management, analysis and efficient use of big data. How to achieve efficient management of big data has become a key research topic at home and abroad.
[0003] With the rapid development of cloud computing and data middle platforms, the personalized needs of different user domains and the cost minimization problem of cloud computing service providers are mutually constrained. In a complex environment, how to intelligently allocate, manage and schedule various computing resources (such as CPU, memory and I / O) and provide service models that adapt to different user needs has become a key technical problem that needs to be solved. In order to achieve a balance between data middle platform resource utilization and user service satisfaction, a real-time dynamic and intelligent optimization computing resource scheduling management method is very important.
[0004] At present, the resource allocation problem in cloud computing systems is mainly solved by resource allocation based on load balancing, resource allocation based on energy saving, resource allocation based on cost-effectiveness, etc. However, the above research on cloud computing resource allocation is still limited to setting computing thresholds to condition resource allocation, and it is not possible to achieve real-time dynamic allocation of computing resources to meet the personalized needs of different user clusters.
[0005] It can be seen that the existing computing resource scheduling and management solutions cannot integrate users' personalized needs for computing resources and computing service providers' cost requirements for computing resources. Therefore, proposing an intelligent, efficient, real-time and dynamic computing resource scheduling and management method for the data middle station is of great significance to the field of computing resource scheduling and management of the data middle station. Summary of the invention
[0006] The present application provides a computing resource allocation method, device and electronic device for a data center, which are used to solve the technical problem of low computing resource utilization in a data center in the prior art.
[0007] In a first aspect, the present application provides a computing resource allocation method for a data center, the method comprising:
[0008] Receive a computing task request from a user, and determine the computing task type and corresponding computing resource requirements based on the computing task request;
[0009] Obtaining basic operating status information of the computing resource pool, the basic operating status information including the workload of the computing resource pool;
[0010] Determine multiple computing resource allocation plans based on basic operation status information, computing task type, computing resource demand, and a pre-built computing resource allocation utility model;
[0011] Based on the workload situation and the pre-built workload prediction model, determine the workload value of the computing resource pool and convert the workload value into a cost vector;
[0012] Based on the computing resource allocation utility model and the cost vector, an optimal computing resource allocation scheme is determined from multiple computing resource allocation schemes, and the optimal computing resource allocation scheme is allocated to the computing task request.
[0013] In a possible implementation, before determining a plurality of computing resource allocation schemes, the method further includes:
[0014] Determine that the remaining amount of computing resources is not less than the required amount of computing resources, wherein the basic operation status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
[0015] In a possible implementation, the method further includes:
[0016] When the remaining amount of computing resources is lower than the required amount of computing resources, an early warning message is issued.
[0017] In one example, the pre-built computing resource allocation utility model is:
[0018]
[0019] Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n The cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
[0020] In a second aspect, the present application provides a computing resource allocation device for a data middle station, the device comprising:
[0021] The task request module is used to receive the computing task request from the user and determine the computing task type and the corresponding computing resource requirement based on the computing task request;
[0022] The resource monitoring module is used to obtain basic operation status information of the computing resource pool, including the workload of the computing resource pool;
[0023] The resource allocation module is used to determine multiple computing resource allocation schemes based on basic operating status information, computing task type, computing resource demand and a pre-built computing resource allocation utility model; determine the workload value of the computing resource pool based on the workload situation and a pre-built workload prediction model, and convert the workload value into a cost vector; determine the best computing resource allocation scheme from multiple computing resource allocation schemes based on the computing resource allocation utility model and the cost vector, and allocate the best computing resource allocation scheme to the computing task request.
[0024] In a possible implementation, the resource allocation module includes a load prediction submodule, a resource allocation submodule, and a task execution submodule;
[0025] The resource allocation submodule is used to determine multiple computing resource allocation schemes based on basic operation status information, computing task type, computing resource demand, and a pre-built computing resource allocation utility model;
[0026] A load prediction submodule, for determining a workload value of a computing resource pool based on workload conditions and a pre-built workload prediction model, and converting the workload value into a cost vector;
[0027] The resource allocation submodule is further used to determine the best computing resource allocation scheme from multiple computing resource allocation schemes based on the computing resource allocation utility model and the cost vector;
[0028] The task execution submodule is used to assign the best computing resource allocation scheme to the computing task request.
[0029] In one possible implementation, the resource allocation module is also used to determine that the remaining amount of computing resources is not less than the required amount of computing resources before determining multiple computing resource allocation schemes, wherein the basic operating status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
[0030] In a possible implementation, the resource allocation module further includes a resource warning submodule, which is used to issue a warning message when the remaining amount of computing resources is lower than the required amount of computing resources.
[0031] In a third aspect, the present application provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;
[0032] Memory, used to store computer programs;
[0033] The processor is used to implement the steps of the computing resource allocation method for the data middle station as described in any one of the embodiments of the first aspect when executing the program stored in the memory.
[0034] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of a computing resource allocation method for a data middle station as in any one of the embodiments of the first aspect.
[0035] The above technical solution provided by the embodiment of the present application has the following advantages compared with the prior art:
[0036] The method provided in the embodiment of the present application receives a computing task request from a user, and determines the computing task type and the corresponding computing resource requirement based on the computing task request. Obtain the basic operation status information of the computing resource pool, and the basic operation status information includes the workload of the computing resource pool. Based on the basic operation status information, the computing task type, the computing resource requirement and the pre-built computing resource allocation utility model, determine multiple computing resource allocation schemes. Based on the workload situation and the pre-built workload prediction model, determine the workload value of the computing resource pool, and convert the workload value into a cost vector. Based on the computing resource allocation utility model and the cost vector, determine the best computing resource allocation scheme from multiple computing resource allocation schemes, and assign the best computing resource allocation scheme to the computing task request. This method is a strategic method. By using this method, the data center can implement dynamic and reasonable computing resource allocation for the task request initiated by the user, ensuring timely response to user requests and efficient use of computing resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Figure 1 A schematic diagram of a flow chart of a computing resource allocation method for a data middle station provided in an embodiment of the present invention;
[0038] Figure 2 A schematic diagram of the structure of a computing resource allocation device for a data middle station provided in an embodiment of the present invention;
[0039] Figure 3 A schematic diagram of the structure of a task request module provided by an embodiment of the present invention;
[0040] Figure 4 A schematic diagram of the structure of a resource monitoring module provided by an embodiment of the present invention;
[0041] Figure 5 A schematic diagram of the structure of a resource allocation module provided by an embodiment of the present invention;
[0042] Figure 6A schematic diagram of the structure of another resource allocation module provided in an embodiment of the present invention;
[0043] Figure 7 A schematic diagram of another method for allocating computing resources for a data center provided in an embodiment of the present invention;
[0044] Figure 8 A schematic diagram of the structure of another computing resource allocation device for a data middle station provided in an embodiment of the present invention;
[0045] Fig. 9 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0046] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0047] To facilitate understanding of the embodiments of the present invention, specific embodiments will be further explained below in conjunction with the accompanying drawings. The embodiments do not constitute a limitation on the embodiments of the present invention.
[0048] In response to the technical problems mentioned in the background technology, the embodiment of the present application provides a computing resource allocation method for the data middle station. It mainly considers two aspects: (1) How to quantify the utility model of computing resources and allocate the computing solution with the highest utility value to the current computing task based on the existing resources of the computing resource pool; (2) How to predict the workload value of the computing resource pool to respond to and pre-allocate the user's computing task request in advance. For the specific execution process, please refer to Figure 1 Schematic diagram of the method flow chart shown. Figure 1 A flow chart of a computing resource allocation method for a data middle station provided in an embodiment of the present invention, the method steps comprising:
[0049] Step 110, receiving a computing task request from a user, and determining a computing task type and a corresponding computing resource requirement based on the computing task request.
[0050] When receiving a computing task request from a user, it waits in the task queue sequence according to the priority of the computing task request for the computing resource pool to allocate computing resources to execute the task. Then, based on the computing task request, it determines the computing task type of the user and the computing resource requirement corresponding to the computing task request (including computing resources such as CPU, memory, and IO).
[0051] In one example, the priority of the computing task request is determined by the order in which the computing task requests are received, or the priority of the computing task request is determined by the importance of the computing task request received.
[0052] Step 120, obtaining basic operation status information of the computing resource pool, where the basic operation status information includes the workload of the computing resource pool.
[0053] Specifically, the basic operation status information of the computing resource pool includes the computing resource status information of the computing resource pool (such as the utilization and available amount of CPU, memory and IO), the workload of the computing resource pool and the execution of computing tasks. Among them, the computing resource status information includes the utilization of computing resources and the remaining amount of computing resources, and the remaining amount of computing resources is also called the available amount of computing resources or the available amount of computing resources.
[0054] In one example, the method has an early warning mechanism. If it is determined that the remaining amount of computing resources is not less than the required amount of computing resources, step 130 is executed. When the remaining amount of computing resources is less than the required amount of computing resources, an early warning message is issued, and the task queue sequence is re-entered to wait. In addition, when an abnormal situation occurs, an early warning message will be given in time, such as when the workload value is too high or the server bandwidth is full. The two early warning situations introduced here can occur simultaneously or separately, and will not be described in detail here.
[0055] Step 130, determining multiple computing resource allocation schemes based on basic operation status information, computing task type, computing resource demand, and a pre-built computing resource allocation utility model.
[0056] Specifically, the pre-built computing resource allocation utility model is:
[0057]
[0058] Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n The cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
[0059] According to the above-mentioned pre-built computing resource allocation utility model, multiple optional computing resource allocation solutions are provided for the user's personalized computing task request. The personalized computing task request here refers to different computing task requests from different users or different computing task requests from the same user.
[0060] Step 140: Determine the workload value of the computing resource pool based on the workload situation and the pre-built workload prediction model, and convert the workload value into a cost vector.
[0061] Specifically, based on the workload of the current computing resource pool and the pre-built workload prediction model, the workload of the future computing resource pool is determined and converted into a cost vector.
[0062] In one example, a workload prediction model is pre-trained based on deep learning using historical load data, and the workload value is predicted based on the workload situation in the current queue. Specifically, the input data is a one-dimensional array of the number of task requests calculated by the management and control terminal of the data center at each preset time interval. The convolution layer is then used to extract data features of the workload data. The pooling layer then aggregates the extracted data features to reduce dimensionality and remove redundancy to extract the main features. Finally, the main features are output to the long short-term memory layer to output the predicted workload value.
[0063] It should be noted that the execution order of step 130 and step 140 can be changed according to actual conditions, and step 140 can be executed first and then step 130.
[0064] Step 150, based on the computing resource allocation utility model and the cost vector, determine the best computing resource allocation scheme from multiple computing resource allocation schemes, and allocate the best computing resource allocation scheme to the computing task request.
[0065] According to the computing resource allocation utility model and cost vector obtained in the above steps, the computing resource with the highest computing task allocation benefit value is determined from multiple computing resource allocation schemes as the optimal computing resource allocation scheme, and it is allocated to the corresponding computing task request.
[0066] The embodiment of the present invention provides a computing resource allocation method for a data middle station, which receives a computing task request from a user, and determines the computing task type and the corresponding computing resource demand based on the computing task request. Obtain the basic operation status information of the computing resource pool, and the basic operation status information includes the workload of the computing resource pool. Based on the basic operation status information, the computing task type, the computing resource demand and the pre-built computing resource allocation utility model, multiple computing resource allocation schemes are determined. Based on the workload situation and the pre-built workload prediction model, the workload value of the computing resource pool is determined, and the workload value is converted into a cost vector. Based on the computing resource allocation utility model and the cost vector, the best computing resource allocation scheme is determined from multiple computing resource allocation schemes, and the best computing resource allocation scheme is allocated to the computing task request. This method is a strategic method. By using this method, the data middle station can implement dynamic and reasonable computing resource allocation for the task request initiated by the user, ensuring the timely response of the user request and the efficient use of computing resources.
[0067] The above is an embodiment of the computing resource allocation method for the data middle station provided by the present application. The following is an introduction to the embodiment of the computing resource allocation device for the data middle station provided by the present application. Please refer to the following for details.
[0068] Figure 2 A structural schematic diagram of a computing resource allocation device for a data middle station provided in an embodiment of the present invention, the device includes: a task request module 201, a resource monitoring module 202 and a resource allocation module 203.
[0069] The task request module 201 is used to receive a computing task request from a user, and determine the computing task type and the corresponding computing resource requirement based on the computing task request.
[0070] The resource monitoring module 202 is used to obtain basic operation status information of the computing resource pool, and the basic operation status information includes the workload of the computing resource pool.
[0071] The resource allocation module 203 is used to determine multiple computing resource allocation schemes based on basic operating status information, computing task type, computing resource demand and a pre-built computing resource allocation utility model; determine the workload value of the computing resource pool based on the workload situation and a pre-built workload prediction model, and convert the workload value into a cost vector; determine the best computing resource allocation scheme from multiple computing resource allocation schemes based on the computing resource allocation utility model and the cost vector, and allocate the best computing resource allocation scheme to the computing task request.
[0072] In one example, Figure 3 A structural diagram of a task request module provided by an embodiment of the present invention is shown in FIG. Figure 3 As shown, the task request module 201 includes a task monitoring submodule 2011 and a task analysis submodule 2012.
[0073] The task monitoring submodule 2011 is used to obtain the computing task request of the user.
[0074] The task analysis submodule is used to determine the computing task type and the corresponding computing resource requirement according to the computing task request 2012.
[0075] Specifically, the task detection submodule 2011 is used to provide an interface for the user to ensure that the user can submit a computing task request to the data center and the data center can receive it in time to allocate computing resources. The task analysis submodule 2012 is used to analyze the type of computing task initiated by the user and evaluate the computing resources required.
[0076] In one example, Figure 4 A schematic diagram of a resource monitoring module provided by an embodiment of the present invention is shown in FIG. Figure 4 As shown, the resource monitoring module 202 includes a computing resource monitoring submodule 2021, a workload monitoring submodule 2022, and a task service monitoring submodule 2023.
[0077] The computing resource monitoring submodule 2021 is used to monitor the computing resource status information of the data center computing resource pool.
[0078] The workload monitoring submodule 2022 is used to monitor the workload of the data center computing resource pool.
[0079] The task service monitoring submodule 2023 is used to monitor the execution status of computing requests initiated by different users in the data center computing resource pool.
[0080] Figure 5 A schematic diagram of a resource allocation module provided in an embodiment of the present invention is shown in FIG. Figure 5 As shown, the resource allocation module 203 includes a load prediction submodule 2031 , a resource allocation submodule 2032 and a task execution submodule 2033 .
[0081] The resource allocation submodule 2032 is used to determine multiple computing resource allocation schemes based on basic operation status information, computing task type, computing resource demand and a pre-built computing resource allocation utility model.
[0082] The load prediction submodule 2031 is used to determine the workload value of the computing resource pool based on the workload situation and the pre-built workload prediction model, and convert the workload value into a cost vector; and allocate the utility model and the cost vector based on the computing resources.
[0083] The resource allocation submodule 2032 is further used to determine the best computing resource allocation scheme from multiple computing resource allocation schemes based on the computing resource allocation utility model and the cost vector.
[0084] The task execution submodule 2033 is used to allocate the best computing resource allocation scheme to the computing task request.
[0085] In one example, the resource allocation module 203 is also used to determine that the remaining amount of computing resources is not less than the computing resource demand before determining multiple computing resource allocation schemes, wherein the basic operating status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
[0086] In one example, Figure 6 A schematic diagram of the structure of another resource allocation module provided in an embodiment of the present invention is shown in FIG. Figure 6 As shown, the resource allocation module also includes a resource warning submodule 2034, which is used to issue a warning message when the remaining amount of computing resources is lower than the required amount of computing resources.
[0087] The functions performed by each component in the computing resource allocation device for the data middle station provided in the embodiment of the present invention have been described in detail in any of the above method embodiments, so they will not be repeated here.
[0088] The computing resource allocation device for the data middle station provided in the embodiment of the present application receives the computing task request of the user, and determines the computing task type and the corresponding computing resource demand based on the computing task request. Obtain the basic operation status information of the computing resource pool, and the basic operation status information includes the workload of the computing resource pool. Based on the basic operation status information, the computing task type, the computing resource demand and the pre-built computing resource allocation utility model, determine multiple computing resource allocation schemes. Based on the workload situation and the pre-built workload prediction model, determine the workload value of the computing resource pool, and convert the workload value into a cost vector. Based on the computing resource allocation utility model and the cost vector, determine the best computing resource allocation scheme from multiple computing resource allocation schemes, and assign the best computing resource allocation scheme to the computing task request. This method is a strategic method. By using this method, the data middle station can implement dynamic and reasonable computing resource allocation for the task request initiated by the user, ensuring the timely response of the user request and the efficient use of computing resources.
[0089] In a specific embodiment, Figure 7 A schematic diagram of another method for allocating computing resources for a data center provided in an embodiment of the present invention. Figure 8 A schematic diagram of the structure of another computing resource allocation device for a data middle station provided in an embodiment of the present invention, Figure 7The method in is applied to Figure 7 In the device shown, combined with Figure 7 and Figure 8 As shown, the method comprises the following steps:
[0090] Step 1, the task request module 201 receives the computing task request initiated by the user, and then puts it in the task queue sequence waiting for the computing resource pool to allocate resources to execute the task, and then enters step 2;
[0091] Step 2: After the task monitoring submodule 2011 detects the computing task request of the user, it queues and forwards it to the task analysis submodule 2012 in order, and then proceeds to step 3;
[0092] Step 3, after receiving the computing task request from the user, the task analysis submodule 2012 determines the computing task type and analyzes the computing resources required, and after processing, forwards it to the resource allocation management module 203, and enters step 4;
[0093] Step 4: After receiving the computing task and the computing resources required by it, the resource allocation management module 203 obtains the basic operation status of the current computing resource pool through the interface provided by the resource monitoring module 202, and then proceeds to step 5;
[0094] Step 5: If the computing resource demand is greater than the remaining value of the computing resources, the resource warning submodule 2034 raises a warning message to the management control terminal of the data center and enters step 2; otherwise, it enters step 6;
[0095] Step 6: After receiving the request from the resource allocation management module 203, the resource monitoring module 202 returns the real-time status data collected by the computing resource monitoring submodule 2021, the workload monitoring submodule 2022 and the task service monitoring submodule 2023, i.e., the basic operation status information of the computing resource pool (including the computing resource utilization and available computing resource amount, workload and computing task execution status of the computing resource pool) to the resource allocation management module 203, and then proceeds to step 7;
[0096] Step 7, after receiving the computing resource status information (including the computing resource utilization and available computing resource amount of the computing resource pool), workload status and task execution status, the resource allocation management module 203 calls the resource allocation submodule 2032 according to the computing resources required by the current task request, and enters step 8;
[0097] Step 8: The resource allocation submodule 2032 allocates resources according to the resource allocation utility model. Give multiple optional computing resource allocation schemes for the current computing task request, where θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n Select the cost vector of computing resource allocation scheme n for the i-th computing task request, and then proceed to step 9;
[0098] Step 9, the load prediction submodule 2031 trains a workload prediction model based on the long short-term memory neural network through historical load data, and makes predictions based on the workload situation in the current queue, wherein the input data is a one-dimensional array of the number of computing task requests within a preset time period of the management control terminal of the data center, and then uses the convolution layer to extract the data features of the workload data, and then the pooling layer aggregates the extracted data features to reduce the dimension and remove redundancy to extract the main features, and finally outputs the main features to the long short-term memory layer to output the predicted workload value, and then enters step 10;
[0099] Step 10: The load prediction submodule 2031 converts the predicted workload value into a cost vector ε i,n , go to step 11;
[0100] Step 11, the resource allocation submodule 2032 selects the computing resource allocation scheme with the highest benefit value according to the resource allocation utility model and the predicted workload value, and returns it to the resource allocation management module 203, and then proceeds to step 12;
[0101] Step 12, the computing resource allocation management module 203 calls the task execution submodule 2033 to allocate computing resources (including CPU, memory, IO, etc.) with the highest benefit value to the user computing task according to the optimal computing resource allocation plan returned by the resource allocation submodule 2032, and then proceeds to step 13;
[0102] Step 13: The loop ends.
[0103] The method provided by the present invention realizes the personalized demand of users for computing resources, improves the utilization rate of computing resources, and completes the early perception and pre-response of computing tasks by the computing resource management and control system.
[0104] like Fig. 9 As shown, an embodiment of the present application provides a cloud platform server, including a processor 111, a communication interface 112, a memory 113 and a communication bus 114, wherein the processor 111, the communication interface 112, and the memory 113 communicate with each other through the communication bus 114.
[0105] Memory 113, used for storing computer programs;
[0106] In one embodiment of the present application, the processor 111 is used to execute the program stored in the memory 113 to implement the computing resource allocation method for the data middle station provided by any one of the aforementioned method embodiments, including:
[0107] Receive a computing task request from a user, and determine the computing task type and corresponding computing resource requirements based on the computing task request;
[0108] Obtaining basic operating status information of the computing resource pool, the basic operating status information including the workload of the computing resource pool;
[0109] Determine multiple computing resource allocation plans based on basic operation status information, computing task type, computing resource demand, and a pre-built computing resource allocation utility model;
[0110] Based on the workload situation and the pre-built workload prediction model, determine the workload value of the computing resource pool and convert the workload value into a cost vector;
[0111] Based on the computing resource allocation utility model and the cost vector, an optimal computing resource allocation scheme is determined from multiple computing resource allocation schemes, and the optimal computing resource allocation scheme is allocated to the computing task request.
[0112] In one example, before determining a plurality of computing resource allocation schemes, the method further includes:
[0113] Determine that the remaining amount of computing resources is not less than the required amount of computing resources, wherein the basic operation status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
[0114] In one example, the method further includes:
[0115] When the remaining amount of computing resources is lower than the required amount of computing resources, an early warning message is issued.
[0116] In one example, the pre-built computing resource allocation utility model is:
[0117]
[0118] Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n The cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
[0119] The embodiment of the present application further provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, a computing resource allocation method for a data middle station provided in any one of the aforementioned method embodiments is implemented, including:
[0120] Receive a computing task request from a user, and determine the computing task type and corresponding computing resource requirements based on the computing task request;
[0121] Obtaining basic operating status information of the computing resource pool, the basic operating status information including the workload of the computing resource pool;
[0122] Determine multiple computing resource allocation plans based on basic operation status information, computing task type, computing resource demand, and a pre-built computing resource allocation utility model;
[0123] Based on the workload situation and the pre-built workload prediction model, determine the workload value of the computing resource pool and convert the workload value into a cost vector;
[0124] Based on the computing resource allocation utility model and the cost vector, an optimal computing resource allocation scheme is determined from multiple computing resource allocation schemes, and the optimal computing resource allocation scheme is allocated to the computing task request.
[0125] In one example, before determining a plurality of computing resource allocation schemes, the method further includes:
[0126] Determine that the remaining amount of computing resources is not less than the required amount of computing resources, wherein the basic operation status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
[0127] In one example, the method further includes:
[0128] When the remaining amount of computing resources is lower than the required amount of computing resources, an early warning message is issued.
[0129] In one example, the pre-built computing resource allocation utility model is:
[0130]
[0131] Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,nThe cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
[0132] The professionals should further realize that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to the function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0133] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
[0134] The above is only a specific embodiment of the present invention, so that those skilled in the art can understand or implement the present invention. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but should conform to the widest scope consistent with the principles and novel features applied herein.
Claims
1. A computing resource allocation method for a data middle station, characterized in that: The method comprises: Receive a computing task request from a user, and determine the computing task type and corresponding computing resource requirements based on the computing task request; Obtaining basic operation status information of the computing resource pool, wherein the basic operation status information includes the workload of the computing resource pool; Determine multiple computing resource allocation schemes based on the basic operation status information, the computing task type, the computing resource demand, and a pre-built computing resource allocation utility model; Determine the workload value of the computing resource pool based on the workload situation and a pre-built workload prediction model, and convert the workload value into a cost vector; Based on the computing resource allocation utility model and the cost vector, determining an optimal computing resource allocation scheme from the multiple computing resource allocation schemes, and allocating the optimal computing resource allocation scheme to the computing task request; The pre-built computing resource allocation utility model is: Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n The cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
2. The method according to claim 1, characterized in that: Before determining a plurality of computing resource allocation schemes, the method further includes: Determine that the remaining amount of the computing resources is not less than the required amount of the computing resources, wherein the basic operation status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
3. The method according to claim 2, characterized in that The method further comprises: When the remaining amount of the computing resources is lower than the required amount of the computing resources, an early warning message is issued.
4. A computing resource allocation device for a data middle station, characterized in that: The device comprises: The task request module is used to receive a computing task request from a user and determine the computing task type and the corresponding computing resource requirement based on the computing task request; A resource monitoring module is used to obtain basic operation status information of the computing resource pool, wherein the basic operation status information includes the workload of the computing resource pool; A resource allocation module, configured to determine a plurality of computing resource allocation schemes based on the basic operation status information, the computing task type, the computing resource demand, and a pre-constructed computing resource allocation utility model; determine a workload value of the computing resource pool based on the workload situation and a pre-constructed workload prediction model, and convert the workload value into a cost vector; determine an optimal computing resource allocation scheme from the plurality of computing resource allocation schemes based on the computing resource allocation utility model and the cost vector, and allocate the optimal computing resource allocation scheme to the computing task request; The pre-built computing resource allocation utility model is: Among them, θ i,n The utility value of selecting computing resource allocation scheme n for the i-th computing task request, Select resource allocation scheme n for the i-th computing task request, and the normalized benefit obtained by the attribute k of the computing task type, is the benefit weight of the attribute k of the computing task type for the i-th computing task request i, ε i,n The cost vector for selecting computing resource allocation scheme n for the i-th computing task request.
5. The device according to claim 4, characterized in that The resource allocation module includes a load prediction submodule, a resource allocation submodule and a task execution submodule; The resource allocation submodule is used to determine multiple computing resource allocation schemes based on the basic operation status information, the computing task type, the computing resource demand and a pre-built computing resource allocation utility model; The load prediction submodule is used to determine the workload value of the computing resource pool based on the workload situation and a pre-built workload prediction model, and convert the workload value into a cost vector; The resource allocation submodule is further configured to determine an optimal computing resource allocation scheme from the multiple computing resource allocation schemes based on the computing resource allocation utility model and the cost vector; The task execution submodule is used to allocate the optimal computing resource allocation scheme to the computing task request.
6. The device according to claim 4, characterized in that The resource allocation module is also used to determine that the remaining amount of the computing resources is not less than the computing resource demand before determining multiple computing resource allocation schemes, wherein the basic operation status information also includes computing resource status information of the computing resource pool, and the computing resource status information includes the remaining amount of computing resources.
7. The device according to claim 6, characterized in that The resource allocation module also includes a resource warning submodule, which is used to issue a warning message when the remaining amount of the computing resources is lower than the required amount of the computing resources.
8. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; The processor is used to implement the steps of the computing resource allocation method for the data middle station as described in any one of claims 1 to 3 when executing the program stored in the memory.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the computing resource allocation method for a data middle station are implemented as described in any one of claims 1-3.
Citation Information
Patent Citations
Adaptive streaming adaptation and resource optimization method applied to cloud-game system
CN104598292A
Terminal and cloud cooperative computing system and fault-tolerant method thereof
CN107040406A