This application claims priority to Chinese Patent Application No. 201410040710.7, filed on Jan. 28, 2014, entitled “Integrated Utility Based Data Processing Methods,” which is herein incorporated by reference in its entirety.
The present technology generally relates to cloud computing techniques, and in particular, relates to integrated utility based data processing methods.
Cloud-based media scheduling services abound in the cloud computing area, but are always subject to restrictions of bandwidth and other computing resources in the process of transmission, reducing satisfaction with balanced scheduling services. Reasonable allocation of cloud resources is a way to increase satisfaction of scheduling services in a cloud computing environment. Thus, the technology of cloud based media resource allocation has become a hot research topic recently. One resource allocation model that involves a combinatorial auction mechanism with energy parameters has been presented, which can improve resource utilization of data centers. A linear bandwidth resource allocation scheme has also been put forward by combining the game theory with congestion control algorithms, thus enhancing the utility value of bandwidth. Moreover, to optimize resources of data centers, the game algorithms of load balancing and virtual machine configuration have comprehensively been considered. However, the above-mentioned strategies are only designed to allocate resources for consideration based on energy consumption of CPs (Cloud Service Providers). These strategies lack the support to QoS (Quality of Service) properties of CRs (Cloud Service Requesters), and have thus become a bottleneck problem of CR satisfaction improvement. Therefore, it is very significant to make a research on overall satisfaction with common cloud resource allocations. The key for the research is to find out an appropriate integrated utility based data processing method.
In existing data processing methods, the minimized response time as the object of integrated utility based data processing is often used. However, the integrated utility based data are not processed from the view of Cloud Service Requesters and Cloud Resources; as a result, when the data is used for cloud based resource allocation, the total cloud service has lower utility.
In view of the foregoing, one object of the present technology may relate to provide an integrated utility based data processing method. The following summary involves simple concepts for basic understanding of some aspects of the disclosed embodiments or examples. The summary is not a broad overview. The summary neither depicts the crucial/major component elements nor defines the scope of the examples. It is only directed to present some concepts in a concise form as an introduction to the detailed description.
In some alternative embodiments, the integrated utility based data processing method may comprise:
obtaining a first integrated utility value according to an association relationship between parameters of a cloud-based media task request and attribute parameters of current cloud-based media resources;
allocating the cloud-based media resources according to the first integrated utility value;
wherein the association relationship is obtained by calculating:
U=ωCRUCRtotal(PCR,RTCR,BCR)+ωCPUCPtotal(PCP,RTCP,BCP), wherein U is the first integrated utility value; and UCRtotal(PCR,RTCR,BCR)≧uminCR, uminCR is the minimal utility value of the task request; and UCRtotal(PCR,RTCR,BCR)≧uminCR, uminCR is the minimal utility value of the resources; and ωCR+ωCP=1, ωCR and ωCP are respective weights of a second integrated utility value UCRtotal(PCR,RTCR,BCR) and a third integrated utility value UCPtotal(PCP,RTCP,BCP);
wherein the parameters of the task request include adjustment factor PCR, response time RTCR, and bandwidth BCR, and wherein the attribute parameters of the resources include adjustment factor PCP, response time RTCP, and bandwidth BCP.
Another object of the present technology may relate to provide an integrated utility based data processing apparatus.
In some alternative embodiments, the integrated utility based data processing apparatus may comprise:
a service negotiation module for obtaining a first integrated utility value according to an association relationship between parameters of a cloud-based media task request and attribute parameters of current cloud-based media resources;
a resource allocation module for allocating the cloud-based resources according to the first integrated utility value;
wherein the association relationship is obtained by calculating:
U=ωCRUCRtotal(PCR,RTCR,BCR)+ωCPUCPtotal(PCP,RTCP,BCP), wherein U is the first integrated utility value; and UCRtotal(PCR,RTCR,BCR)≧uminCR, uminCR is the minimal utility value of the task request, and UCPtotal(PCP,RTCP,BCP)≧uminCP, uminCP is the minimal utility value of the resources, and ωCR+ωCP=1, ωCR and ωCP are respective weights of a second integrated utility value UCRtotal(PCR,RTCR,BCR) and a third integrated utility value UCPtotal(PCP, RTCP,BCP);
wherein the parameters of the task request include adjustment factor PCR, response time RTCR, and bandwidth BCR, and wherein the attribute parameters of the resources include adjustment factor PCP, response time RTCP, and bandwidth BCP.
The technical effect according to some illustrative embodiments of the present technology may lie in that: from the view of utility improvement of cloud-based media services, when processing integrated utility based data, the objective function is no longer the minimized response time but the maximum utility of the whole cloud-based media service, and thus cloud user satisfaction can be significantly increased in the cloud resource allocation.
For the above and related objects, one or more embodiments may include the features which will be described below in detail and specifically defined by claims. The below disclosure, in connection with the drawings, illustrates some exemplary aspects of the present technology, and only indicates some of various ways in which the principles of various embodiments may be implemented. Other benefits and novelty of the present technology may become more apparent from the following detailed description, when taken in conjunction with the drawings. The disclosed embodiments are intended to include all the aspects and equivalence thereof.
Exemplary embodiments of the present technology will be described below in sufficient detail with reference to the accompanying drawings to enable those skilled in the art to practice them, and it is to be understood that other embodiments may be utilized and that structural, logical and electrical changes may be made without departing from the described embodiments. The embodiments may only represent possible changes and modifications. Separate components and function may be optional and the order of operation may be changed, unless explicitly requested. Some parts and features of some embodiments according to the present technology may be included in or substituted by other embodiments. The scope of embodiments of the present technology includes the whole scope of claims and all the equivalence thereof obtained by claims.
Step S109, obtaining a first integrated utility value according to an association relationship between parameters of a cloud-based media task request and attribute parameters of current cloud-based media resources;
Step S111, allocating the cloud-based media resources according to the first integrated utility value, wherein the association relationship may be obtained as follows:
U=ωCRUCRtotal(PCR,RTCR,BCR)+ωCPUCPtotal(PCP,RTCP,BCP), wherein U may be the first integrated utility value; and UCRtotal(PCR,RTCR,BCR)≧uminCR, uminCR may be the minimum utility value of the task request; and UCPtotal(PCP,RTCP,BCP)≧uminCP, uminCP may be the minimal utility value of the resources; and ωCR+ωCP=1, ωCR and ωCP may be respective weights of the second integrated utility value UCRtotal(PCR,RTCR,BCR) and the third integrated utility value UCPtotal(PCP, RTCP,BCP);
wherein the parameters of the task request may include adjustment factor PCR, response time RTCR, and bandwidth BCR, and the attribute parameters of the resources include adjustment factor PCP, response time RTCP, and bandwidth BCP.
In some illustrative embodiments, the cloud-based media task request may include the following parameters: adjustment factor PCR, response time RTCR, and bandwidth BCR. Preferably, the adjustment factor may be the price.
Since a cloud-based media service request may need to pay a cost for resources, moderate adjustment factors may well reflect the utility of cloud-based media services. Also, since a high requirement on time response for some cloud-based media services such as real time media playing, synchronization of video and audio playing and the like may be needed, such media services may be of certain timeliness. Under such circumstances reasonable response time may reflect high utility of cloud-based media services. Moreover, since the transmission of cloud-based media may need a lot of adjustment factors, a moderate bandwidth may thus increase the utility of cloud-based media services. Therefore, the adjustment factors, response time, and bandwidth for cloud-based media services may be used as a collection of the considered QoS parameters, so that the integrated utility value of a cloud-based media service may be obtained by calculating the utility value of each of the parameters to enhance the utility of a cloud-based media service.
In some illustrative embodiments, the method, before step S102, may also include step S101, receiving a cloud-based media task request.
The method may also include: step S103, calculating a second integrated utility value according to the following formula:
wherein ωPCR+ωRTCR+ωBCR=1, ωPCR, ωRTCR and ωBCR may be respective weights of the utility value UPCR(PCR) of adjustment factor PCR, the utility value URTCR(RTCR) of response time RTCR, and the utility value UBCR(BCR) of bandwidth BCR for the task request.
Before step S103, the method may further include:
Step S102A, obtaining a utility value of adjustment factor PCR of the task request according to the following formula:
wherein umin PCR may represent the minimum utility value of the adjustment factor of the cloud-based media task request, IPCR and RPCR may represent the most expected adjustment factor and the least expected adjustment factor of the task request, respectively.
Step S102B, obtaining a utility value of response time RTCR of the task request by calculating:
wherein umin RTCR may represent the minimum utility value of the response time of the task request, IRTCR and RRTCR may represent the most expected response time and the least expected response time of the task request, respectively.
Step S102C, obtaining a utility value of the bandwidth BCR of the task request according to the following formula:
wherein umin BCR may represent the minimum utility value of the bandwidth of the task request, and IBCR and RBCR may represent the most expected bandwidth and the least expected bandwidth and of the task request, respectively.
In some illustrative embodiments, u(BCR), u(RBCR) and u(IBCR) may be obtained by the following formula:
wherein ω may represent the parameter of controlling the shape of a function, and X may be BCR, RBCR or IBCR.
UCPtotal(PCP,RTCP,BCP) may be obtained based on attributes of cloud-based media resources according to the following steps:
Step S108, obtaining a third integrated utility value UCPtotal(PCP,RTCP,BCP) according to the formula:
wherein ωPCP+ωRTCP+ωBCP=1, ωPCP, ωRTCP, and ωBCP may be respective weights of the utility value UPCP(PCP) of the adjustment factor PCP, the utility value URTCP(RTCP) of the response time RTCP and the utility value UBCP(BCP) of the bandwidth BCP of the resources.
In some illustrative embodiments, the method, before step S108, may further include:
Step S107A, obtaining a utility value of the adjustment factor PCP according to the following formula:
wherein umin PCP may represent the minimum utility value of the adjustment factor PCP of the resources, and IPCP and RPCP may represent the initial adjustment factor and the reserved adjustment factor of adjustment factor PCP of the resources, respectively.
Step S107B, obtaining a utility value of the response time RTCP of the resources according to the following formula:
wherein umin RTCP may represent the minimum utility value of the response time of the resources, IRTCP and RRTCP may represent the initial response time and the reserved response time of the resources.
Step S107c, obtaining a utility value of bandwidth BCP according to the following formula:
wherein umin BCP may represent the minimum utility value of the bandwidth of the resources, and IBCP and RBCP may represent the initial bandwidth and the reserved bandwidth of the resources, respectively.
In some illustrative embodiments, the method, before step S111, may include: Step S110, comparing the second integrated utility value with the first integrated utility value.
In some illustrative embodiments, step S111 may include allocating the current cloud-based media resources to the cloud-based media task request if the first integrated utility value is not less than the second integrated utility value.
In some illustrative embodiments, step S111 may also include: if there are a plurality of cloud-based media resources, the cloud-based task request corresponding to a plurality of first integrated utility values, and each of the plurality of first integrated utility values corresponding to a cloud-based media resource; while, if the maximum value of the plurality of first integrated utility values is not less than the second integrated utility value, allocating the cloud-based media resource corresponding to the maximum first integrated utility value to the cloud-based media task request.
In some illustrative embodiments, the method, after step S103, may also include:
Step S104, detecting the timeout of the task request if the second integrated utility value is zero;
Step S105, determining whether the timeout of the task request occurs;
If the timeout of the task request is determined, the allocating of the cloud-based media resources may end; if no timeout is determined, repeatedly determining the second integrated utility value by executing a concession policy until the second integrated utility value is not zero.
Step 106, executing the concession policy may further include:
obtaining the second integrated utility value of a next task request based on the second integrated utility of the current task request according to the following formula:
U
total
CR(PCR,RTCR,BCR)t+1=UtotalCR(PCR,RTCR,BCR)t−ΔUtotalCR
wherein UtotalCR(PCR,RTCR,BCR)t may be the second integrated utility value of the current task request and ΔUtotalCR may be a step size of concessions.
If the second integrated utility value of the next task request is not zero, subsequent steps may be carried out.
In some illustrative embodiments, the step size of concessions may be obtained according to the following formula:
wherein τ may be the cut-off time (the maximum number of negotiations may be determined based on τ), t may be the number of negotiations, and λ may be the parameter of controlling concession rates, 0≦λ≦10.
With respect to the foregoing method, the present technology may also provide an apparatus for allocating cloud-based media resources. As shown in
a service negotiation module 202 for obtaining a first integrated utility value according to an association relationship between parameters of a cloud-based media task request and attribute parameters of current cloud-based media resources.
a resource allocation module 203 for allocating the cloud-based media resources according to the first integrated utility value;
wherein the association relationship may be calculated according to the following formula:
U=ω
CR
U
CR
total(PCR,RTCR,BCR)ωCPUCPtotal(PCP,RTCP,BCP)
wherein U may be the first integrated utility value; and UCRtotal(PCR,RTCR,BCR)≧uminCR, uminCR may be the minimum utility value of the task request; and UCPtotal(PCP,RTCP,BCP)≧uminCP, uminCP may be the minimum utility value of the resources; and ωCR+ωCP=1, ωCR and ωCP may be respective weights of the second integrated utility value UCRtotal(PCR,RTCR,BCR) and the third integrated utility value UCPtotal(PCP,RTCP,BCP); and wherein the parameters of the task request may include adjustment factor PCR, response time RTCR and bandwidth BCR, and the attribute parameters of the resources may include adjustment factor PCP, response time RTCP and bandwidth BCP.
From the view of improving cloud-based media service utility, the objective function for the apparatus may be no longer the minimized response time but the maximized utility in a cloud computing environment to greatly increase satisfaction of cloud users.
In some illustrative embodiments, the cloud-based media task request may include the following parameters: adjustment factor PCR, response time RTCR and bandwidth BCR.
Since a cloud-based media service request may need to pay a cost for resources, a moderate adjustment factor may well reflect the utility of a cloud-based media service. Also, since a high requirement on time response for some cloud-based media services such as real time media playing, synchronization of video and audio playing and the like may be needed, such media services may be of certain timeliness. Under such circumstances reasonable response time may reflect high utility of cloud-based media services. Moreover, the transmission of cloud-based media may need a lot of adjustment factors, and a moderate bandwidth may thus increase the utility of cloud-based media services. Therefore, the adjustment factors, response time, and bandwidth for cloud-based media services may be used as a collection of the considered QoS parameters, so that the integrated utility value of a cloud-based media service may be obtained by calculating the utility value of each of the parameters to enhance the utility of a cloud-based media service.
In some illustrative embodiments, the apparatus may also include a second module 204 for calculating a second integrated utility value.
In some illustrative embodiments, the second module 204 may calculate the second integrated utility value as follows:
wherein ωPCR+ωRTCR+ωBCR=1, and ωPCR, ωRTCR, and ωBCR may be respective weights of the utility value UPCR(PCR) of the adjustment factor PCR, the utility value URTCR(RTCR) of the response time RTCR, and the utility value UBCR(BCR) of the bandwidth BCR of the task request.
In some illustrative embodiments, the second module 204 may further include an adjustment factor module for task requests 2041, a response time module for task requests 2042, and a bandwidth module for task requests 2043.
The adjustment factor module for task requests 2041 may calculate a utility value of the adjustment factor PCR of the task quest according to the following formula:
wherein umin PCR may represent the minimum utility value of the adjustment factor of the task request, IPCR and RPCR may represent the most expected adjustment factor and the least expected adjustment factor of the task request, respectively.
The response time module for task requests 2042 may calculate a utility value of the response time RTCR of the task request as follows:
wherein umin RTCR may represent the minimum utility value of the response time of the task request, IRTCR and RRTCR may represent the most expected response time and the least expected response time of a task request, respectively.
The bandwidth module for task requests 2043 may calculate the utility value of the bandwidth BCR of the task request according to the following formula:
wherein umin BCR may represent the minimum utility value of the task request, and IBCR and RBCR may represent the most expected bandwidth and the least expected bandwidth of the task request, respectively.
In some illustrative embodiments, u(BCR), u(RBCR) and u(IBCR) may be obtained by the following formula:
wherein ω may represent the parameter of controlling the shape of a function, and X may be BCR, RBCR or IBCR.
In some illustrative embodiments, the apparatus may also include a third module 205. The third module 205 may obtain a third integrated utility value UCPtotal(PCP,RTCP,BCP) according to the following formula:
wherein ωPCP+ωRTCP+ωBCP=1, ωPCP, ωRTCP, and ωBCP may be respective weights of the utility value UPCP(PCP) of the adjustment factor PCP, the utility value URTCP(RTCP) of the response time RTCP and the utility value UBCP(BCP) of the bandwidth BCP of the resources.
In some illustrative embodiments, the third module 205 may further include an adjustment factor module for resources 2051, a response time module for resources 2052, and a bandwidth module for resources 2053.
The adjustment factor module for resources 2051 may calculate a utility value of the adjustment factor PCP of the resources according to the following formula:
wherein umin PCP may represent the minimum utility value of the adjustment factor PCP of the resources, and IPCP and RPCP may represent the initial adjustment factor and the reserved adjustment factor of the adjustment factor PCP of the resources, respectively.
The response time module for resources 2052 may calculate a utility value of the response time RTCP of the resources according to the following formula:
wherein umin RTCP may represent the minimum utility value of the response time of the resources, IRTCP and RRTCP may represent the initial response time and the reserved response time of the resources, respectively.
The bandwidth module for resources 2053 may calculate a utility value of bandwidth BCP of the resources according to the following formula:
wherein umin BCP may represent the minimum utility value of the bandwidth of resources, and IBCP and RBCP may represent the initial bandwidth and the reserved bandwidth of resources, respectively.
In some illustrative embodiments, the apparatus may also include a task scheduling module 201 for receiving a cloud-based media task request.
In some illustrative embodiments, if a service negotiation module 202 determines that the first integrated utility value is not less than the second integrated utility, a resource allocation module 203 may allocate a current cloud-based media resource to the cloud-based task media request.
In some illustrative embodiments, if there are a plurality of cloud-based media resources, the cloud-based media task request may then correspond to a plurality of first integrated utility values, each of the plurality of first integrated utility values corresponding to a cloud-based media resource. If the service negotiation module 202 determines that the maximum of the plurality of first integrated utility values is not less than the second integrated utility value, the resource allocation module 203 may then allocate the cloud-based media resource corresponding to the maximum to the cloud-based media task request.
In some illustrative embodiments, the apparatus may also include a timeout determining module 206 for detecting a timeout of the task request if the second integrated utility value is zero. If the timeout is determined, the allocation of the cloud-based media resources may then end. If no timeout has occurred, a concession policy may be executed.
In some illustrative embodiments, the apparatus may also include a concession policy module 207. The concession policy module 207 may repeatedly determine the second integrated utility until the second integrated utility is not zero.
In some illustrative embodiments, an execution of the concession policy as performed by the concession policy module 207 may include obtaining the second integrated utility of the next task request based on the second integrated utility of the current task request according to the following formula:
U
total
CR(PCR,RTCR,BCR)t+1=UtotalCR(PCR,RTCR,BCR)t−ΔUtotalCR
wherein UtotalCR(PCR,RTCR,BCR)t+1 may be the second integrated utility value of the current task request, and ΔUtotalCR may be a step size of concessions.
In some illustrated examples, the step size of concessions may be obtained according to the following formula:
wherein τ may be the cut-off time (the maximum number of negotiations may be determined based on τ), and t may be the number of negotiations, and λ may be the parameter of controlling concession rates, 0≦λ≦10.
A simulated example will be described below to further illustrate methods of the present technology. In the simulated example, on the simulation platform CloudSim as the simulation environment, the performance of Greedy Allocation algorithm, Random Allocation Algorithm and the method provided by the present technology may all be evaluated by utilizing the parameters of the cloud-based media task request and the attribute parameters of cloud-based media resources as inputs.
(1) Setting Simulation Parameters
In the simulation example, the algorithms may be evaluated by increasing the number of cloud-based media task requests from 100 to 700, wherein the parameters for task requests may be randomly generated within certain limits by the simulation platform. The generated random numbers may satisfy the following condition:
wherein Se and So may represent the size of the executable job files of a cloud-based media task request and the size of the result files to be transmitted after execution, respectively, and α may be the corresponding coefficient, 0≦α≦1. The relationship of the adjustment factor, the response time and the bandwidth of cloud-based media services may be reflected by way of setting α. The attributes of cloud-based media resources may be divided into different levels, corresponding to different ranges of the adjustment factor, the response time, and the bandwidth. The setting of the parameters may meet the above formula, and other parameters may be set as shown in Table 1. In the example, price may be used as the adjustment factor.
(2) Response Time Analysis of Cloud-Based Media Services
The performance of the overall cloud-based media resource allocation may be evaluated by the execution time of services. In the simulation example, the execution time of cloud-based media services may be thus analyzed. The execution time may be defined by
The number of cloud-based media resource requests may be increased from 100 to 700. In the algorithm of the present technology, the response time and the transmission bandwidth may be used as the parameters of the cloud-based media resource allocation, and the maximum utility values of the parameters may be selected, achieving a good effect of service response time. The specific simulation results are shown as
(3) Utility Analysis of Cloud-Based Media Services
The utility values of cloud-based media services may reflect the satisfaction ratings of cloud-based media services. The number of cloud-based media task request may be increased from 100 to 700 for analyzing the utility values of cloud-based services. In the present technology, the maximum utility of the cloud-based media resource allocation may be obtained by calculating the utilities of the parameters, thus achieving good utility values of cloud-based media services. Table 2 shows the simulation results.
Table 2 exhibits that, as the number of cloud-based media services increases, the utility values of cloud-based media services provided by the present method may be higher than the other two algorithms, which well meets Service Level Agreements and thus improves satisfaction of cloud-based media services.
(4) Analysis of Different Weight Values of Negotiation Parameters Used in the Present Technology
The weight values of the price, the response time and the bandwidth of cloud-based media services may be set respectively. Table 3 shows the set weight values.
In conclusion, high utility values of services may be obtained by allocating cloud-based media resources according to the method of the present technology, and thus SLAs may be better met and higher service level may be realized, improving satisfaction of cloud-based media services.
It should be readily understood by those skilled in the art that various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software may depend upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present technology.
Number | Date | Country | Kind |
---|---|---|---|
201410040710.7 | Jan 2014 | CN | national |