JP5925293B2 - Billing with awareness of peak performance for cloud computing environments - Google Patents

Billing with awareness of peak performance for cloud computing environments Download PDF

Info

Publication number
JP5925293B2
JP5925293B2 JP2014503642A JP2014503642A JP5925293B2 JP 5925293 B2 JP5925293 B2 JP 5925293B2 JP 2014503642 A JP2014503642 A JP 2014503642A JP 2014503642 A JP2014503642 A JP 2014503642A JP 5925293 B2 JP5925293 B2 JP 5925293B2
Authority
JP
Japan
Prior art keywords
application
limit
computer
resource
per unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014503642A
Other languages
Japanese (ja)
Other versions
JP2014512048A (en
Inventor
修一 倉林
修一 倉林
吉田 尚史
尚史 吉田
孝典 鷹野
孝典 鷹野
Original Assignee
エンパイア テクノロジー ディベロップメント エルエルシー
エンパイア テクノロジー ディベロップメント エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by エンパイア テクノロジー ディベロップメント エルエルシー, エンパイア テクノロジー ディベロップメント エルエルシー filed Critical エンパイア テクノロジー ディベロップメント エルエルシー
Priority to PCT/US2011/040368 priority Critical patent/WO2012173604A2/en
Publication of JP2014512048A publication Critical patent/JP2014512048A/en
Application granted granted Critical
Publication of JP5925293B2 publication Critical patent/JP5925293B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/02Marketing, e.g. market research and analysis, surveying, promotions, advertising, buyer profiling, customer management or rewards; Price estimation or determination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/70Admission control or resource allocation

Description

  Unless otherwise indicated herein, the materials described herein are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.

  Some cloud computing environments implement usage-based billing based on CPU execution time. For example, in the MICROSOFT WINDOWS AZURE cloud service, pricing is $ 0.05 per hour for extra small compute instances, $ 0.12 per hour for small compute instances, and 1 for medium compute instances. $ 0.24 per hour, $ 0.48 per hour for large compute instances, $ 0.96 per hour for extra large compute instances, each of which is a single 1 GHz CPU, It can be constituted by one 1.6 GHz CPU, two 1.6 GHz CPUs, four 1.6 GHz CPUs, or eight 1.6 GHz CPUs.

  For data-oriented applications, the required CPU execution time may increase or decrease depending on the amount and nature of the data, and as a result, it is difficult for developers to predict CPU execution time and thus cost in advance. There is a possibility. In the case of a data mining program for extracting customer customers from a customer information database, for example, the amount of relevant data in the customer information database may not be known in advance, and as a result, all relevant data is mined. The CPU execution time required for this, and therefore the cost for mining the relevant data, cannot be predicted in advance. Thus, the rate at which the cloud computing environment is used can be known in advance, while the cost is uncertain as much as the usage of the cloud computing environment is uncertain and / or unknown. And / or unknown.

  The techniques described herein generally relate to service level agreement (SLA) based flat fee pricing models for cloud computing environments.

  In some examples, a computer in a cloud computing environment that can be consumed per unit time by the computing device from an SLA with the user by at least one application executed for the user in the cloud computing environment. A method is described that may include determining an upper limit for the resource. The method may also include charging a fixed cost per period based on the SLA.

  In some examples, a computer storage medium that stores computer-executable instructions that are executable by a computing device to perform operations is described. The operations may include storing an upper limit of computer resources in the cloud computing environment that can be consumed per unit time by at least one application executed for the user in the cloud computing environment. The operation may also include measuring the consumption of computer resources by at least one application per unit time. The operation may also include determining whether the consumption of computer resources by at least one application per unit time exceeds an upper limit. The operation may also include reducing the allocation of computer resources for the at least one application in response to determining that the consumption by the at least one application exceeds the upper limit.

  In some examples, a back-end system for a cloud computing environment is described. The back-end system has at least one storage resource for storing an upper limit of computer resources that can be consumed per unit time by at least one application executed for the user in the cloud computing environment. It may include an SLA information module that includes computer-executable instructions that are executable by the processing resource. The back-end system may also include a resource counter module that includes computer-executable instructions that are executable by at least one processing resource to measure the consumption of computer resources by at least one application per unit time. The back-end system determines whether the consumption of computer resources by at least one application per unit time exceeds an upper limit, and in response to determining that the consumption by at least one application exceeds the upper limit, at least A priority controller module that includes computer-executable instructions that are executable by at least one processing resource to reduce the allocation of computer resources to an application may also be included.

  The above summary is exemplary only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.

1 is a block diagram of an exemplary cloud computing environment configured in accordance with at least some embodiments described herein. 6 is a graph illustrating several exemplary service level agreement (SLA) based flat fee pricing models configured in accordance with at least some embodiments described herein. 6 is a graph illustrating several exemplary service level agreement (SLA) based flat fee pricing models configured in accordance with at least some embodiments described herein. 2 is a block diagram of an exemplary embodiment of the back-end system of the cloud computing environment of FIG. 1 configured in accordance with at least some embodiments described herein. FIG. 2 is an exemplary flow diagram of a method that may be implemented in the cloud computing environment of FIG. 1 configured in accordance with at least some embodiments described herein. 2 is an exemplary flow diagram of another method that may be implemented in the cloud computing environment of FIG. 1 configured in accordance with at least some embodiments described herein. 1 is a block diagram illustrating an example computing device configured for peak-performance-aware billing configured in accordance with at least some embodiments described herein. FIG.

  In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be utilized and other changes may be made without departing from the spirit or scope of the subject matter presented herein. The aspects of the present disclosure generally described herein and illustrated in the figures may be configured, replaced, combined, separated, and designed in a wide variety of different configurations, all of which are described herein. It will be readily understood that this is clearly contemplated in the book.

  Some embodiments described herein generally relate to an SLA-based flat rate pricing model for a cloud computing environment. In general, for example, a user can conclude an SLA with a provider such as a cloud service provider. The SLA can specify an upper limit of computer resources in the cloud computing environment that can be consumed per unit time by one or more applications that are executed for the user in the cloud computing environment. The SLA can also specify a fixed cost per period charged based on the SLA. The SLA cap is between a relatively higher value when the demand for computer resources is expected to be relatively lower and a lower value when the demand for computer resources is expected to be relatively higher. It can vary with time.

  When an application is executed for a user in a cloud computing environment, the consumption of computer resources by the application can be measured and compared to an upper limit based on SLA. If the peak consumption exceeds the upper limit, the allocation of computer resources for the application can be reduced to keep the peak consumption below the upper limit. Thus, according to some embodiments, by monitoring peak consumption by an application, a user may be charged a regular fixed cost for any consumption of computer resources below the upper limit.

  FIG. 1 is a block diagram of an exemplary cloud computing environment 100 configured in accordance with at least some embodiments described herein. Although not required, the cloud computing environment 100 may include an AMAZON® EC2 type cloud computing environment. In the illustrated embodiment, the cloud computing environment 100 includes a network 102, a front end system 104, and a back end system 106.

  In general, network 102 may include one or more wide area networks (WANs) and / or local area networks (LANs) that allow front end system 104 and back end system 106 to communicate with each other. In some embodiments, the network 102 includes the Internet including a global internetwork formed by logical and physical connections between multiple WANs and / or LANs. Alternatively or in addition, network 102 may include one or more cellular RF networks and / or 802. It may include one or more wired and / or wireless networks, including but not limited to xx networks, Bluetooth® access points, wireless access points, IP-based networks, and the like. The network 102 may also include a server that allows one type of network to interface with another type of network.

  The front end system 104 of the cloud computing environment 100 may include one or more client devices 108 and corresponding users 110. Each client device 108 may execute an application (not shown) configured to communicate with the backend system 106 via the network 102. Applications that execute on each client device 108 to communicate with the backend system 106 may include an Internet browser, or other suitable application. Each client device 108 may include, but is not limited to, a desktop computer, laptop computer, mobile phone, smartphone, personal digital assistant (PDA), or other suitable client device.

  The back-end system 106 of the cloud computing environment 100 may include computer resources 112, one or more applications 114 accessible to the user 110, and usage applications 116. By way of example, and not limitation, computer resource 112 may be a processing resource such as one or more central processing units (CPUs), a storage resource such as one or more storage devices, a network interface controller (NIC) or other Other resources such as communication interface devices and / or other suitable computer resources may be included.

  Applications 114 may include data processing applications, video games, and / or virtually any other application where cloud-based access may be desired by user 110. In some embodiments, each application 114 can be executed by a dedicated server that includes one or more CPUs included in the computer resource 112, and in other embodiments, each application 114 is run on a virtual server. Can be executed.

  User 110 may broadly include an individual user and / or an organization that includes one or more users. In general, the user 110 can operate the client device 108 to access computer resources 112 and applications 114 included in the back-end system 106.

  As described in more detail below, usage application 116 may be configured to, among other things, monitor the usage of computer resources 112 by application 114 executing for user 110.

  In some embodiments, each user 110 can enter into a service level agreement (SLA) with, for example, the provider of the back-end system 106 and / or another entity. Each SLA can specify an upper limit of computer resources 112 that can be consumed per unit time by at least one application 114 running for the corresponding user 110 in the cloud computing environment 100. Each SLA may also specify a fixed cost per period to charge the corresponding user 110 for consumption of computer resources 112 at or below the corresponding upper limit.

  The upper limit for a given SLA may vary depending on the time that facilitates the use of computer resources 112 and the time that prevents user 110 from overusing computer resources 112. In this regard, consider FIGS. 2A-2B. 2A-2B are graphs illustrating several exemplary SLA-based flat rate pricing models configured in accordance with at least some embodiments described herein.

  In the example of FIG. 2A, a plurality of upper limits 202, 204, and 206 corresponding to the first, second, and third SLA and different depending on time are shown. Specifically, each of the upper limits 202, 204, 206 is between a relatively lower value occurring at noon, for example, every day at 12:00 pm, and a relatively higher value occurring at about midnight, for example, every day at 12:00 am Change. The relatively lower value of each of the upper limits 202, 204, 206 may be expected to have a relatively higher demand for computer resources 112, such as during typical business hours from about 8am to about 5pm. Can occur during the “core business time”. The relatively higher value of each of the upper limits 202, 204, 206 is during typical non-business hours from about 5pm to about 8am, when the demand for computer resources 112 may be expected to be relatively low. Can occur during “economy time”.

  The usage application 116 of FIG. 1 monitors the consumption per unit time of the computer resource 112 by the application 114 executed for the user 110, and the consumption of the computer resource 112 corresponds to the SLA corresponding to the user 110. It can be determined whether or not the corresponding upper limit 202, 204 or 206 included remains below or below. If the consumption exceeds the upper limit 202, 204 or 206, the using application 116 reduces the computer resource 112 allocated to the application 114 executed for the user 110, and the consumption 202 of the computer resource 112 corresponds to the upper limit 202, It may be configured to ensure that it stays at or below 204 or 206.

  By imposing an upper limit 202, 204, 206 on the computer resources 112 that can be consumed per unit time by the application 114 that is executed for the user 110, the computer resources 112 are so damaged that the user 110 may damage other users 110. You can prevent using too much. By imposing a time-dependent upper limit 202, 204, 206, which is relatively lower during core business time and relatively higher during economy time, it imposes a time limit 202, 204, 206 on the user 110. Motivation to move consumption of computer resources 112 to typical non-business hours where demand for 112 can be expected to be relatively lower.

  Each of the upper limits 202, 204, 206 can refer to CPU peak performance. That is, each of the upper limits 202, 204, 206 may specify a peak CPU cycle per unit time, such as a peak CPU cycle per second that is allowed based on the first, second, or third SLA. it can.

  Alternatively or in addition, a similar time-varying upper limit having the same or similar curvature and periodicity as the upper limit 202, 204, 206 may be used as the first, second, or third SLA that refers to I / O peak performance. Can be specified. In these and other examples, similar upper bounds on I / O peak performance are each allowed based on the first, second, or third SLA, respectively, such as the peak amount of I / O data per second, etc. The peak I / O data amount per unit time can be specified.

  In addition to identifying the upper limit 202, 204, 206, the first, second, and third SLA can be paid daily for consumption of computer resources 112 up to the corresponding upper limit 202, 204, 206, Each fixed cost per period, such as weekly or monthly fixed costs, can also be identified. By way of example only, without limitation, the cost specified in the first SLA corresponding to the upper limit 202 may be a first value, such as about $ 20 per month, while the second corresponding to the upper limit 204. The cost specified in the SLA can be a second value higher than the first value, such as about $ 30 per month, and the cost specified in the third SLA corresponding to the upper limit 206 is about It can be a third value higher than the second value, such as $ 40. More generally, a regular fixed cost based on an SLA having a first upper limit, such as upper limit 202, is periodic based on an SLA having a second upper limit that is higher than the first upper limit, such as upper limit 204 or 206. Can be lower than the fixed cost. Since the user 110 is not worried about the increase in fees due to the increase in usage, charging a fixed fixed fee for the usage of the computer resources 112 based on the SLA will reduce the usage of the computer resources 112. Can be promoted.

  Similar to FIG. 2A, FIG. 2B also shows a plurality of upper limits 208, 210, 212. Each of the upper limits 208, 210, 212 may correspond to a respective SLA and may refer to CPU peak performance. Alternatively or in addition, a similar time-varying upper limit that has the same or similar curvature and periodicity as the upper limits 208, 210, 212 may be identified in each SLA that refers to I / O peak performance.

  In contrast to the upper limit 202, 204, 206 in FIG. 2A, which has a period of 24 hours, the upper limit 208, 210, 212 in FIG. 2B has a period of one year. Further, the upper limits 208, 210, 212 in FIG. 2B are each relatively lower during the first period of one year corresponding to the corporate accounting period, and the second of the year that is different from the first period of one year. Is relatively higher during the period.

  For example, in the United States, federal income tax is usually due on April 15th each year. Thus, in the period leading up to April 15 every year, the demand for computer resources 112 can be expected to increase until April 15, but after that period, the demand can be expected to decrease rapidly to a minimum. Thus, in order to prevent or reduce the likelihood that computer resources 112 will be overused during the corresponding accounting period, the accounting period in which demand is expected to be relatively higher—for example, around January 1 in the example of FIG. 2B The upper limit 208, 210, 212 between until about April 30 is the remainder of the year in which demand for computer resources 112 is expected to be relatively lower during the accounting period—for example, from around May 1 It can be relatively lower than during the period until around December 31.

  Each SLA identifying each of the upper limits 208, 210, 212 may be paid by the user 110 or on behalf of the user 110 for consumption of computer resources 112 up to the corresponding upper limit 208, 210, 212. The corresponding fixed cost can be specified. The fixed cost per period identified in the SLA associated with the upper limit 208 can be relatively lower than the fixed cost per period identified in the SLA associated with the upper limit 210, and is associated with the upper limit 210. The fixed cost per period specified in the SLA can be relatively lower than the fixed cost per period specified in the SLA associated with the upper limit 212.

  2A shows upper limits 202, 204, 206, each having a period of 24 hours, and FIG. 2B shows upper limits 208, 210, 212, each having a period of one year, but in other embodiments The upper limits specified in the SLA are daily, weekly, monthly, semi-monthly, bi-monthly, 4-monthly, semi-annual, biennial, biennial, or other periods, but not limited to these May have different time periods. Alternatively or in addition, more complex upper limits can be identified in a corresponding SLA that combines two or more upper limits having different time periods. For example, one of the upper limits 202, 204, 206 of FIG. 2A is added to one of the upper limits 208, 210, 212 of FIG. 2B, or otherwise, the upper limits 208, 210, 212 of FIG. In combination with one of these, a daily average that generally changes on a daily basis as shown in FIG. 2A and changes on a yearly basis as shown in FIG. 2B (or daily minimum or daily maximum, etc.) Can also be obtained.

  FIG. 3 is a block diagram of an exemplary embodiment of the back-end system 106 of the cloud computing environment 100 of FIG. 1 configured in accordance with at least some embodiments described herein. As shown in FIG. 3, the computer resources 112 of the back-end system 106 may include storage devices 302, 304, network and / or network devices 306, 308, and physical servers 310, 312, 314 or other computing devices. . Storage devices 302, 304 may be implemented as primary storage within computer resource 112, which includes random access memory (RAM), read only memory (ROM), electrically erasable programmable ROM (EEPROM), compact It can include almost any type of storage device for digital data, such as a disk-ROM (CD-ROM) or other optical disk storage, magnetic disk storage, solid state storage or other storage device. The network and / or network devices 306, 308 may include one or more switches, routers, communication interfaces, and / or other devices to facilitate communication between devices within the computer resource 112. Each physical server 310, 312, 314 may include one or more CPUs and / or local storage. Thus, the processing resources of the computer resource 112 can include, for example, the CPUs of the physical servers 310, 312, 314, and the storage resources of the computer resource 112 can be the storage devices 302, 304 and / or the physical servers 310, 312, 314. Local storage devices.

  A virtualization infrastructure 316 may be provided to the computer resource 112 to manage access to the computer resource 112 or “virtualize” the computer resource 112. In this regard, the virtualization infrastructure 316 may be configured to allocate the virtualized resource 318 to the virtual machine 320 that includes the virtual storage 318A and the virtual CPU 318B. Virtual machine 320 may be configured to run application 114 using virtualized resource 318. The backend system 106 may include one or more additional virtual machines 322, 324 that are generally configured the same as the virtual machine 320. Although not shown, each virtual machine 320, 322, 324 may additionally include an operating system (OS) that runs the application 114.

  The virtualization infrastructure 316 and virtual machines 320, 322, 324 may take any one of several forms to implement the embodiments disclosed herein. For example, the virtualization infrastructure 316 and virtual machines 320, 322, 324 may include, but are not limited to, VMware® ESX, VMware GSX, Xen 3.0 (or another version), or KVM.

  Applications 114 within virtual machine 320 can use virtualized resources 318 to, for example, read data from storage to memory, write data from memory to storage, and / or perform operations on the data. The data written to the storage and the data including the data read from the storage are specified as I / O data 326 in FIG.

  The virtualized resource 318 may be, for example, by presenting the virtual storage 318A to the application 114 as a logical representation of all or part of one or more disk storage devices in the computer resource 112 and / or one in the computer resource 112. By assigning some or all of the CPU cycles of one or more CPUs to application 114 as virtual CPU 318B, application 114 can be protected from actual computer resources 112. Although a virtual machine 320 having a single application 114 running on the virtualized resource 318 is shown in FIG. 3, in other embodiments, the virtual machine 320 has multiple applications 114 running on the virtualized resource 318. Can be included.

  Referring to FIGS. 1 and 3 in combination, the usage application 116 may include an SLA information module 328, a resource counter module 330 and a priority controller module 332, collectively referred to hereinafter as modules 328, 330, 332. Each of the modules 328, 330, 332 may include computer-executable instructions that are executable by a computing device or processing resource in the computer resource 112 to perform the operations described herein.

  For example, the SLA information module 328 stores an upper limit of computer resources 112 that can be consumed per unit time by at least one application 114 executed for the user 110 in at least one storage resource of the computer resources 112. Can be configured as follows. In some embodiments, the SLA information module 328 stores a plurality of upper limits identified in an SLA with a plurality of users 110. The upper limit may include, for example, one or more of the upper limits 202, 204, 206, 208, 210, 212 of FIGS. 2A-2B.

  The resource counter module 330 may be configured to measure the consumption of computer resources 112 by at least one application 114 per unit time represented by the virtualized resource 318. In some embodiments, the resource counter module 330 measures consumption by intercepting communication between at least one application 114 and a virtualized resource 318 that includes a virtual storage 318A and a virtual CPU 318B. Accordingly, the resource counter module 330 calculates the CPU cycle per unit time of the data counter 330A configured to measure the I / O data 326 per unit time between the application 114 and the virtual storage 318A and the virtual CPU 318B. Both cycle counters 330B configured to measure may be included.

  The priority controller module 332 may be communicatively coupled to the resource counter module 330 and the SLA information module 328. Thus, the priority controller module 332 may use the measured consumption for the user 110 from the resource counter module 330 for the user 110 from the SLA information module 328, for example, taking into account the current time when the upper limit varies with time. By comparing with an upper limit, it may be configured to determine whether the consumption of computer resources 112 by at least one application 114 per unit time exceeds the upper limit.

  In addition, the priority controller module 332 may be configured to reduce the allocation of computer resources 112 to the at least one application 114 in response to determining that consumption by the at least one application 114 exceeds an upper limit. Alternatively or additionally, the priority controller module 332 increases the allocation of computer resources 112 to the at least one application 114 in response to determining that the consumption by the at least one application 114 is less than the upper limit. Can be configured.

  The priority controller module 332 may reduce or increase the allocation of computer resources 112 in some embodiments by lowering or raising the priority level of the virtual machine 320. In these and other embodiments, the priority level of virtual machine 320 may be related to the frequency of allocation of computer resources 112 to virtual machine 320. Accordingly, by lowering or raising the priority level of the virtual machine 320, the computer resource 112 reduces the consumption per unit time of the computer resource 112 by the at least one application 114 below the upper limit, or still remains below the upper limit. Can be assigned to the virtual machine 320 at a lower or higher frequency so that it can be increased.

  Applications that run for the user 110 without managing physically different types of machines by managing the priority levels of the virtual machines 320, 322, 324 to reduce or increase the allocation of computer resources 112 An upper limit can be imposed on 114. Accordingly, in a cloud computing environment, such as the cloud computing environment 100 of FIG. 1, a user 110 who pays a relatively higher fee for an SLA having a relatively higher upper limit may have an SLA having a relatively lower upper limit. A pricing scheme may be implemented in which a relatively higher allocation of computer resources 112 is provided than a user 110 who pays a relatively lower fee.

  Some embodiments disclosed herein facilitate voluntary movement of consumption of computer resources 112 to periods such as nighttime or typical non-business periods where demand for computer resources may be low. Can do. For example, as described with respect to FIGS. 2A-2B, the values of upper limits 202, 204, 206 in FIG. 2A may be relatively higher during the evening and night, and during the evening and night, the user 110 can be accordingly motivated to plan to move consumption of computer resources 112 from core business time or normal business hours to economy time including evening and night. Similarly, the values of the upper limits 208, 210, 212 in FIG. 2B are relatively higher during the less busy business period of the year from around May to December, this period being given to the user 110 accordingly. It can provide motivation to plan to move consumption of computer resources 112 that may otherwise occur during the corporate accounting period to a less busy business period of the year from January to April.

  Alternatively or in addition, some of the embodiments disclosed herein may go to cloud computing by a user 110 who is otherwise unwilling or willing to migrate. Can facilitate the transition. For example, some cloud computing pricing schemes are usage-based, but with such pricing schemes, several users 110 occur during any given period of cloud computing services. It can be difficult or impossible to predict the amount of charges to be made and budgeted, which may discourage the user 110 from moving to cloud computing. However, according to the present disclosure, the user 110 can be charged a fixed fixed cost for cloud computing, and accordingly, the budget can be booked with high accuracy accordingly.

  Some of the disclosed embodiments may provide a fair pricing model for users 110 with high consumption rates and users 110 with low consumption rates. In particular, user 110 may pay a higher fee to accommodate higher consumption rates or a lower fee to accommodate lower consumption rates.

  By providing a cloud computing environment with a use application 116 that includes modules 328, 330, 332, some of the disclosed embodiments can be implemented in an existing cloud computing environment. Thus, some of the disclosed embodiments can be implemented in an existing cloud computing environment without replacing any existing software or hardware in the cloud computing environment.

  FIG. 4 illustrates an example flow diagram of a method 400 that may be implemented in the cloud computing environment 100 of FIG. 1 configured in accordance with at least some embodiments described herein. The method 400 may be performed in whole or in part by the computer resources 112 in the backend system 106 of FIG. 1 or FIG. 3, for example. Method 400 includes various operations, functions or acts, as indicated by one or more of blocks 402 and / or 404. The method 400 can begin at block 402.

  At block 402, the computing device can consume per unit time from the SLA with the user by at least one application executed for the user in the cloud computing environment. Determine the upper limit. The computing device may include a CPU, such as one of the physical servers 310, 312, 314 of FIG. 3, within the computer resource 112 of FIG. Determining the upper limit from the SLA with the user may be performed by the priority controller module 332 of FIG. 3 looking for the upper limit in the SLA information module 328 of FIG. As described above with respect to FIGS. 2A-2B, the upper limit may vary with time. Block 402 may be followed by block 404.

  At block 404, a fixed cost per period is charged based on the SLA. The fixed cost may be, for example, a monthly fixed cost and may be charged to a user such as one of the users 110 of FIG.

  Some embodiments disclosed herein include a computer for performing the operations included in the method 400 of FIG. 4 and / or variations thereof, such as the operations illustrated by blocks 402 and / or 404 of FIG. A computer storage medium storing computer-executable instructions that are executable by the storage device. The computer storage media may be included in one or more of the storage devices 302, 304 of FIG. 3 and / or one or more local storage devices of the physical servers 310, 312, 314 of FIG.

  Those skilled in the art will appreciate that for this and other processes and methods disclosed herein, the functions performed in the processes and methods can be performed in a different order. Furthermore, the outlined steps and operations are provided as examples only, and some of the steps and operations may be optional, and fewer steps and operations may be performed without detracting from the nature of the disclosed embodiments. Or may be expanded to additional steps and operations.

  For example, the method 400 includes estimating an amount of computer resources to satisfy an SLA and determining a fixed cost according to the estimated amount of computer resources compared to the total available amount of computer resources. Further may be included. In these and other embodiments, the fixed cost is relative if the predicted amount of computer resources is relatively large and / or if the total available amount of computer resources is relatively small compared to the predicted amount. Can be expensive.

  Alternatively or additionally, method 400 measures the consumption of computer resources by at least one application per unit time and determines that the consumption of computer resources by at least one application per unit time exceeds an upper limit. And in response to the determination, reducing the allocation of computer resources to the at least one application. Although not required, one or more of the above steps include one or more of the SLA information module 328, resource counter module 330 and / or priority controller module 332 of FIG. It can be executed by the usage application 116.

  In these and other embodiments, reducing the allocation of computer resources for at least one application may include lowering the priority level of a virtual machine executing at least one application in a cloud computing environment. For example, the priority controller module 332 of FIG. 3 can reduce the allocation of computer resources 112 to the application 114 by lowering the priority level of the virtual machine 320 executing the application 114.

  Alternatively or in addition, the measured consumption per unit time may include at least one of CPU cycles per unit time or I / O data amount per unit time.

  In some embodiments, the upper limit specified in a particular user's SLA may be insufficient for the user's desire. For example, a user may rarely or as a one-time run of an application more quickly and / or more computer resources than is possible at the upper limit specified in the user's SLA. You may want to run an application that requires In these and other embodiments, the user can indicate that the user wants to exceed the upper limit, for example, via a user interface (UI).

  Accordingly, the method 400 may further include receiving a request to increase computer resources that can be consumed by at least one application per unit time to exceed the upper limit. While at least one application is running for a user in a cloud computing environment, the SLA can be moved to a different SLA with a different relatively higher upper limit. In addition, after moving an SLA to a different SLA, different relatively higher fixed costs per period can be charged based on the different SLA.

  Alternatively or additionally, method 400 may further include receiving a request to increase computer resources that can be consumed by at least one application per unit time. Computer resources that exceed the upper limit may be allocated for execution of at least one application. For example, the user can be charged a usage-based fee for the consumption of computer resources exceeding the upper limit.

  FIG. 5 illustrates an example flow diagram of another method 500 that may be implemented in the cloud computing environment of FIG. 1 configured in accordance with at least some embodiments described herein. The method 500 may be performed in whole or in part by, for example, the computer resources 112 in the backend system 106 of FIG. 1 or FIG. For example, the method 500 may be performed in whole or in part by executing the use application 116 of FIG. 1 that includes the modules 328, 330, 332 of FIG. Method 500 includes various operations, functions, or acts, as indicated by one or more of blocks 502, 504, 506, and / or 508. The method 500 can begin at block 502.

  At block 502, an upper limit of computer resources in the cloud computing environment that can be consumed per unit time by at least one application executed for the user in the cloud computing environment is stored. The upper limit may be stored, for example, by the SLA information module 328 of FIG. 3 having an SLA and / or included in one of the storage devices 302, 304 or one of the physical servers 310, 312, 314 of FIG. Stored in a local storage device. Block 502 may be followed by block 504.

  At block 504, the consumption of computer resources by at least one application per unit time is measured. The consumption of computer resources can be measured, for example, by the resource counter module 330 of FIG. Block 504 may be followed by block 506.

  At block 506, it is determined whether the consumption of computer resources by at least one application per unit time exceeds an upper limit. Whether the consumption amount exceeds the upper limit can be determined, for example, by the priority controller module 332 of FIG. The determination may include, for example, comparing the measured consumption from the resource counter module 330 of FIG. 3 with an upper limit from, for example, the SLA information module 328. Block 506 may be followed by block 508.

  In block 508, in response to determining that the consumption by the at least one application exceeds an upper limit, the allocation of computer resources to the at least one application is reduced. The allocation of computer resources can be reduced, for example, by the priority controller module 332 of FIG.

  Alternatively or additionally, reducing the allocation of computer resources for at least one application may include lowering the priority level of a virtual machine executing at least one application in a cloud computing environment. For example, the priority controller module 332 of FIG. 3 can reduce the priority level of the virtual machine 320 of FIG. 3 executing the application 114 to reduce the allocation of computer resources 112 to the application 114.

  FIG. 6 is a block diagram illustrating an example computing device 600 configured for peak performance aware billing configured in accordance with at least some embodiments described herein. The computing device 600 may be included in the computer resource 112 of FIGS. 1 and 3, for example. In a very basic configuration 602, the computing device 600 typically includes one or more processors 604 and system memory 606. Memory bus 608 may be used for communication between processor 604 and system memory 606.

  Depending on the desired configuration, processor 604 may be of any type including, but not limited to, a microprocessor (μP), a microcontroller (μC), a digital signal processor (DSP), or any combination thereof. It can be. The processor 604 may include one or more levels of cache, such as a level 1 cache 610 and a level 2 cache 612, a processor core 614, and a register 616. The example processor core 614 may include an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP core), or any combination thereof. The example memory controller 618 can also be used with the processor 604, or in some implementations the memory controller 618 can be an internal part of the processor 604.

  Depending on the desired configuration, the system memory 606 may be of any type including, but not limited to, volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.) or any combination thereof. It can be. The system memory 606 may include an OS 620, one or more applications 622, and program data 624. Application 622 may include a charging algorithm 626 configured to perform the functions described herein, including those described with respect to methods 400 and 500 of FIGS. Application 622 may correspond to, for example, usage application 116 of FIG. Program data 624 may include billing data 628 that may be useful in configuring billing algorithm 626 as described herein. For example, billing data 628 may include upper limit (s) retrieved from SLA information module 328 of FIG. 3 and / or measured consumption received from resource counter module 330 of FIG. In some embodiments, the application 622 may provide program data 624 on the OS 620 such that an implementation of a billing method such as the methods 400 and 500 of FIGS. 4 and 5 may be provided as described herein. Can be configured to operate using This described basic configuration 602 is illustrated in FIG. 6 by these components within the inner dashed line.

  The computing device 600 may have additional features or functions and additional interfaces that facilitate communication between the base configuration 602 and any necessary devices and interfaces. For example, the bus / interface controller 630 may be used to facilitate communication between the base configuration 602 and one or more data storage devices 632 via the storage interface bus 634. The data storage device 632 can be a removable storage device 636, a non-removable storage device 638, or a combination thereof. Examples of removable and non-removable storage devices include magnetic disk devices such as flexible disk drives and hard disk drives (HDD), compact disk (CD) drives or digital versatile disk (DVD) drives, to name a few. Optical disk drives, solid state drives (SSD), and tape drives. Exemplary computer storage media are volatile and non-volatile, removable and non-removable implemented in any method or technique for storing information such as computer readable instructions, data structures, program modules, or other data. Formula media may be included.

  System memory 606, removable storage 636, and non-removable storage 638 are examples of computer storage media. Computer storage media can be RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage Including, but not limited to, an apparatus or any other medium that can be used to store desired information and that can be accessed by computing device 600. Any such computer storage media may be part of computing device 600.

  The computing device 600 is an interface bus for facilitating communication from various interface devices (eg, output device 642, peripheral interface 644, and communication device 646) to the base configuration 602 via the bus / interface controller 630. 640 may also be included. The exemplary output device 642 includes a graphics processing unit 648 and an audio processing unit 650 that communicate to various external devices, such as a display or speakers, via one or more A / V ports 652. Can be configured to. The exemplary peripheral interface 644 includes a serial interface controller 654 or a parallel interface controller 656, which interface controller via one or more I / O ports 658, for example, a keyboard, mouse, pen , Voice input devices, touch input devices, etc.) or other peripheral devices (eg, printers, scanners, etc.). The exemplary communication device 646 includes a network controller 660 that communicates with one or more other computing devices 662 via a network communication link via one or more communication ports 664. Can be configured to facilitate.

  A network communication link may be an example of a communication medium. Communication media typically may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and the communications media includes any information delivery media. obtain. A “modulated data signal” may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media can include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), microwave, infrared (IR), and other wireless media. . The term computer readable media as used herein may include both storage media and communication media.

  The computing device 600 is a small form such as a mobile phone, personal digital assistant (PDA), personal media player device, wireless webwatch device, personal headset device, application specific device, or a hybrid device that includes any of the above functions. It can be implemented as part of a factor portable (or mobile) electronic device. The computing device 600 may also be implemented as a personal computer that includes both laptop and non-laptop computer configurations.

  The present disclosure is not limited with respect to the particular embodiments described herein that are intended as illustrations of various aspects. Many modifications and variations can be made without departing from the spirit and scope of this disclosure, as will be apparent to those skilled in the art. In addition to those enumerated herein, functionally equivalent methods and apparatus within the scope of the present disclosure will be apparent to those skilled in the art from the foregoing description. Such modifications and variations are intended to be within the scope of the appended claims. The present disclosure should be limited only by the terms of such claims, along with the full scope of what is considered to be equivalent to the following claims. It is to be understood that this disclosure is not limited to particular methods, reagents, compounds, compositions or biological systems that can of course vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting.

  For the use of substantially all plural and / or singular terms herein, those skilled in the art will recognize from the plural to the singular and / or singular as appropriate to the situation and / or application. You can convert from shape to plural. Various singular / plural permutations can be clearly described herein for ease of understanding.

  In general, the terms used herein, particularly in the appended claims (eg, the body of the appended claims), are intended throughout as “open” terms. Will be understood by those skilled in the art (eg, the term “including” should be construed as “including but not limited to” and the term “having”). Should be interpreted as “having at least,” and the term “includes” should be interpreted as “including but not limited to”. ,Such). Where a specific number of statements is intended in the claims to be introduced, such intentions will be explicitly stated in the claims, and in the absence of such statements, such intentions It will be further appreciated by those skilled in the art that is not present. For example, as an aid to understanding, the appended claims use the introductory phrases “at least one” and “one or more” to guide the claims. May include that. However, the use of such phrases may be used even if the same claim contains indefinite articles such as the introductory phrases “one or more” or “at least one” and “a” or “an”. Embodiments in which the introduction of a claim statement by the indefinite article "a" or "an" includes any particular claim, including the claim description so introduced, is merely one such description. (Eg, “a” and / or “an” should be construed to mean “at least one” or “one or more”). Should be). The same applies to the use of definite articles used to introduce claim recitations. Further, even if a specific number is explicitly stated in the description of the claim to be introduced, it should be understood that such a description should be interpreted to mean at least the number stated. (For example, the mere description of “two descriptions” without other modifiers means at least two descriptions, or two or more descriptions). Further, in cases where a conventional expression similar to “at least one of A, B and C, etc.” is used, such syntax usually means that one skilled in the art would understand the conventional expression. Contemplated (eg, “a system having at least one of A, B, and C” includes A only, B only, C only, A and B together, A and C together, B and C together And / or systems having both A, B, and C together, etc.). In cases where a customary expression similar to “at least one of A, B, or C, etc.” is used, such syntax is usually intended in the sense that one skilled in the art would understand the customary expression. (Eg, “a system having at least one of A, B, or C” includes A only, B only, C only, A and B together, A and C together, B and C together, And / or systems having both A, B, and C together, etc.). Any disjunctive word and / or phrase that presents two or more alternative terms may be either one of the terms, anywhere in the specification, claims, or drawings. It will be further understood by those skilled in the art that it should be understood that the possibility of including either of the terms (both terms), or both of them. For example, it will be understood that the phrase “A or B” includes the possibilities of “A” or “B” or “A and B”.

  Further, if a feature or aspect of the present disclosure is described with respect to a Markush group, those skilled in the art will thereby recognize that the present disclosure is also described with respect to any individual member or sub-group of members. Let's be done.

  As will be appreciated by those skilled in the art, for any and all purposes, such as providing a written description, all ranges disclosed herein are in any and all possible parts. Also included are combinations of specific ranges as well as partial ranges thereof. Any range listed is easily described as fully enabling and enabling the same range that has been broken down into at least bisected, sliced, quasected, quasected, quasid, etc. Can be recognized. By way of non-limiting example, each range discussed herein can be easily broken down into the lower third, middle third, upper third, etc. As will also be appreciated by those skilled in the art, all words such as “up to”, “at least”, etc. include the stated number and are later broken down into subranges as described above. The range that can be done. Finally, as will be appreciated by those skilled in the art, each range includes individual elements. Thus, for example, a group having one to three cells refers to a group having one, two, or three cells. Similarly, a group having one to five cells refers to a group having one, two, three, four or five cells, and so on.

  From the foregoing, it will be appreciated that various embodiments of the present disclosure have been described herein for purposes of illustration, and that various modifications can be made without departing from the scope and spirit of the present disclosure. Like. Accordingly, the various embodiments disclosed herein are not intended to be limiting, with the true scope and spirit being indicated by the following claims.

Claims (18)

  1. Stores an upper limit of computer resources defined in a service level agreement (SLA) in the cloud computing environment that can be consumed per unit time by at least one application executed for the user in the cloud computing environment To do
    Charging a fixed cost per period based on the SLA;
    The upper limit is between a relatively high value when the demand for computer resources is expected to be relatively low and a relatively low value when the demand for computer resources is expected to be relatively high. A method that changes over time,
    Measuring consumption of the computer resource by the at least one application per unit time;
    Determining that consumption of the computer resource by the at least one application per unit time exceeds the upper limit;
    In response to the determination, further reducing the allocation of the computer resource to the at least one application;
    The method wherein reducing the allocation of the computer resource to the at least one application comprises lowering a priority level of a virtual machine executing the at least one application in the cloud computing environment.
  2. Estimating the amount of computer resources to satisfy the SLA;
    Determining the fixed cost according to the estimated amount of computer resources compared to the total available amount of computer resources;
    The method of claim 1, further comprising:
  3.   The method of claim 1, wherein the computer resource includes at least one processing resource and at least one storage resource.
  4.   The measured consumption per unit time includes at least one of a central processing unit (CPU) cycle per unit time and an input / output (I / O) data amount per unit time. The method described in 1.
  5.   The upper limit varies between a first value in a first time zone and a second value in a second time zone, and the first value is lower than the second value. The method described in 1.
  6.   6. The method of claim 5, wherein the first time zone is included in a daytime core business time and the second time zone is included in a nighttime economy time.
  7.   The method of claim 1, wherein the upper limit during a first period of one year corresponding to a corporate accounting period is relatively lower than during a second period of one year.
  8. The SLA includes a first SLA, the upper limit includes a first upper limit, the fixed cost includes a first fixed cost, and the method includes:
    Receiving a request to increase computer resources that can be consumed by the at least one application per unit time;
    While the at least one application is running for the user in the cloud computing environment, the first SLA is changed to a second SLA having a second upper limit that is higher than the first upper limit. Moving,
    Charging a second fixed cost per period higher than the first fixed cost based on the second SLA;
    The method of claim 1, further comprising:
  9. Receiving a request to increase computer resources that can be consumed by the at least one application per unit time;
    Allocating computer resources that exceed the upper limit for execution of the at least one application;
    Charging a usage-based fee for consumption of computer resources that exceeds the upper limit;
    The method of claim 1, further comprising:
  10. A computer program executable by a computing device to perform an operation, the operation comprising:
    Stores an upper limit of computer resources defined in a service level agreement (SLA) in the cloud computing environment that can be consumed per unit time by at least one application executed for the user in the cloud computing environment To do
    Measuring consumption of the computer resource by the at least one application per unit time;
    Determining whether consumption of the computer resource by the at least one application per unit time exceeds the upper limit;
    In response to determining that consumption by the at least one application exceeds the upper limit, reducing allocation of the computer resource to the at least one application;
    The upper limit is between a relatively high value when the demand for computer resources is expected to be relatively low and a relatively low value when the demand for computer resources is expected to be relatively high. Changes with time,
    A computer program, wherein reducing the allocation of the computer resource to the at least one application comprises lowering a priority level of a virtual machine that executes the at least one application in the cloud computing environment.
  11.   11. The upper limit varies between a first value in a first time zone and a second value in a second time zone, and the first value is lower than the second value. A computer program described in 1.
  12.   The computer program according to claim 11, wherein the first time zone is included in a daytime core business time, and the second time zone is included in a nighttime economy time.
  13.   The computer program product of claim 10, wherein the upper limit during a first period of one year corresponding to a corporate accounting period is relatively lower than during a second period of one year.
  14.   The computer program of claim 10, wherein the computer resource includes at least one central processing unit (CPU) and at least one storage device.
  15.   15. The measured consumption per unit time includes at least one of a central processing unit (CPU) cycle per unit time and an input / output (I / O) data amount per unit time. A computer program described in 1.
  16. A back-end system for a cloud computing environment,
    An upper limit of computer resources defined in a service level agreement (SLA) that can be consumed per unit time by at least one application executed for a user in the cloud computing environment is stored in at least one storage resource A service level agreement information module comprising computer executable instructions executable by at least one processing resource to:
    A resource counter module comprising computer-executable instructions executable by the at least one processing resource for measuring consumption of the computer resource by the at least one application per unit time;
    A priority controller module comprising computer-executable instructions that are executable by the at least one processing resource;
    Determining whether consumption of the computer resource by the at least one application per unit time exceeds the upper limit;
    Responsive to determining that consumption by the at least one application exceeds the upper limit, for reducing the allocation of the computer resources to the at least one application;
    A priority controller module comprising computer executable instructions;
    The upper limit is between a relatively high value when the demand for computer resources is expected to be relatively low and a relatively low value when the demand for computer resources is expected to be relatively high. Changes with time,
    Further comprising a virtual machine configured to execute the at least one application using a virtualized resource allocated from the computer resource;
    The priority level of the virtual machine determines the frequency of allocation of resources to the virtual machine for execution of the at least one application;
    The backend system, wherein the priority controller module is configured to reduce the allocation of the computer resources to the at least one application by lowering the priority level of the virtual machine.
  17.   The back-end system of claim 16 further comprising the computer resource including the at least one processing resource and the at least one storage resource.
  18.   The back-end system of claim 16, wherein the virtual machine comprises VMware ESX, VMware GSX, XEN 3.0, or KVM.
JP2014503642A 2011-06-14 2011-06-14 Billing with awareness of peak performance for cloud computing environments Active JP5925293B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2011/040368 WO2012173604A2 (en) 2011-06-14 2011-06-14 Peak-performance-aware billing for cloud computing environment

Publications (2)

Publication Number Publication Date
JP2014512048A JP2014512048A (en) 2014-05-19
JP5925293B2 true JP5925293B2 (en) 2016-05-25

Family

ID=47357655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014503642A Active JP5925293B2 (en) 2011-06-14 2011-06-14 Billing with awareness of peak performance for cloud computing environments

Country Status (5)

Country Link
US (1) US9727847B2 (en)
JP (1) JP5925293B2 (en)
KR (2) KR101780161B1 (en)
CN (1) CN103907128B (en)
WO (1) WO2012173604A2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5842646B2 (en) * 2012-02-02 2016-01-13 富士通株式会社 Information processing system, virtual machine management program, virtual machine management method
JP6602669B2 (en) * 2012-06-15 2019-11-06 サイクル コンピューティング,エルエルシー Method and system for automatically detecting and resolving infrastructure defects in a cloud infrastructure
US9760876B2 (en) * 2013-04-02 2017-09-12 Empire Technology Development Llc Flexibly pricing cloud computing services
US9183034B2 (en) * 2013-05-16 2015-11-10 Vmware, Inc. Managing availability of virtual machines in cloud computing services
US9619827B1 (en) 2014-03-12 2017-04-11 Google Inc. Flexible resource commitments for computing resources
US9417902B1 (en) * 2014-03-24 2016-08-16 Amazon Technologies, Inc. Managing resource bursting
WO2016018440A1 (en) * 2014-08-01 2016-02-04 Hewlett-Packard Development Company, L.P. Billing consumption of cloud-based resources
CN104580524A (en) * 2015-01-30 2015-04-29 华为技术有限公司 Resource scaling method and cloud platform with same
US10147110B2 (en) * 2015-06-29 2018-12-04 Vmware, Inc. Methods and systems to evaluate cost driver and virtual data center costs
US10568000B2 (en) 2015-12-11 2020-02-18 Lg Electronics Inc. Method and apparatus for indicating an offloading data size and time duration in a wireless communication system
CN105657042A (en) * 2016-02-18 2016-06-08 广东睿江科技有限公司 Elastic measurement and integration method of cloud resources
US10178173B2 (en) * 2016-08-02 2019-01-08 International Business Machines Corporation Cloud service utilization
CN108390913B (en) * 2018-01-19 2019-03-12 北京白山耘科技有限公司 A kind of control user uses the method and device of resource

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331187A (en) 1998-05-15 1999-11-30 Toshiba Corp Mobile communication system, base station equipment and mobile terminal equipment used for the same
US7028298B1 (en) 1999-09-10 2006-04-11 Sun Microsystems, Inc. Apparatus and methods for managing resource usage
JP3664021B2 (en) 2000-01-05 2005-06-22 日本電気株式会社 Resource allocation method by service level
JP2001195267A (en) * 2000-01-07 2001-07-19 Hitachi Ltd Control computer system and task control method
AU3486001A (en) * 2000-02-04 2001-08-14 Hrl Lab Llc A system for pricing-based quality of service (pqos) control in networks
JP4128751B2 (en) * 2001-01-12 2008-07-30 株式会社日立製作所 Storage subsystem and storage system
US7320131B1 (en) * 2001-06-06 2008-01-15 Cisco Technology, Inc. Methods and apparatus for selecting a server to process a request
JP4213445B2 (en) 2001-10-01 2009-01-21 株式会社エヌ・ティ・ティ・ドコモ Resource control method, mobile communication system, and base station
US7526452B2 (en) * 2002-12-16 2009-04-28 International Business Machines Corporation Apparatus, methods and computer programs for metering and accounting for services accessed over a network
US7184846B2 (en) * 2003-10-31 2007-02-27 Cornell Research Foundation, Inc. Systems and methods for providing optimal light-CO2 combinations for plant production
US7711594B2 (en) * 2004-05-13 2010-05-04 International Business Machines Corporation System, method and program product for optimizing usage based pricing and availability for a resource
US9015324B2 (en) * 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US7870044B2 (en) * 2008-10-02 2011-01-11 Verizon Patent And Licensing Inc. Methods, systems and computer program products for a cloud computing spot market platform
CN101364899A (en) 2008-10-10 2009-02-11 北京航空航天大学 Web QoS evaluating method based on cloud model
KR101125038B1 (en) 2008-12-15 2012-04-13 한국과학기술원 Method and apparatus for providing grid resource management in grid computing middleware system
JP5448032B2 (en) 2008-12-25 2014-03-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Resource management apparatus, resource management program, and resource management method
JP5380093B2 (en) 2009-02-02 2014-01-08 株式会社エヌ・ティ・ティ・データ Computer resource management apparatus and computer resource providing system
US9396042B2 (en) * 2009-04-17 2016-07-19 Citrix Systems, Inc. Methods and systems for evaluating historical metrics in selecting a physical host for execution of a virtual machine
JP5097747B2 (en) 2009-05-25 2012-12-12 株式会社エヌ・ティ・ティ・データ Billing apparatus and billing method
US8914511B1 (en) * 2009-06-26 2014-12-16 VMTurbo, Inc. Managing resources in virtualization systems
US20110035248A1 (en) * 2009-08-07 2011-02-10 Loic Juillard Distributed Service Platform Computing with a Guaranteed Quality of Service
US20110072431A1 (en) 2009-09-24 2011-03-24 Oracle International Corporation System and method for usage-based application licensing in a hypervisor virtual execution environment
US20110099095A1 (en) * 2009-10-28 2011-04-28 Microsoft Corporation Processing internal use of data-center resources
US20110213712A1 (en) * 2010-02-26 2011-09-01 Computer Associates Think, Ink. Cloud Broker and Procurement System and Method
US8909783B2 (en) * 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
US8462632B1 (en) * 2010-12-28 2013-06-11 Amazon Technologies, Inc. Network traffic control
US9450838B2 (en) * 2011-06-27 2016-09-20 Microsoft Technology Licensing, Llc Resource management for cloud computing platforms
US20130034015A1 (en) * 2011-08-05 2013-02-07 International Business Machines Corporation Automated network configuration in a dynamic virtual environment
US20130339200A1 (en) * 2012-06-19 2013-12-19 International Business Machines Corporation Fair Distribution Of Power Savings Benefit Among Customers In A Computing Cloud

Also Published As

Publication number Publication date
KR101780161B1 (en) 2017-09-19
WO2012173604A3 (en) 2013-12-19
KR20160030336A (en) 2016-03-16
CN103907128B (en) 2018-01-12
WO2012173604A2 (en) 2012-12-20
JP2014512048A (en) 2014-05-19
US9727847B2 (en) 2017-08-08
KR101799622B1 (en) 2017-11-20
US20140032405A1 (en) 2014-01-30
KR20130114729A (en) 2013-10-17
CN103907128A (en) 2014-07-02

Similar Documents

Publication Publication Date Title
US9684542B2 (en) Smart cloud workload balancer
US20180293110A1 (en) Capacity and load analysis using storage attributes
US9910480B2 (en) Monitoring and real-time adjustment of power consumption settings
JP6509895B2 (en) Resource management based on device specific or user specific resource usage profile
US9336059B2 (en) Forecasting capacity available for processing workloads in a networked computing environment
US9921809B2 (en) Scaling a cloud infrastructure
US20170163554A1 (en) Dynamic allocation of resources while considering resource reservations
Krebs et al. Metrics and techniques for quantifying performance isolation in cloud environments
US9983900B2 (en) Capacity risk management for virtual machines
US9742652B2 (en) Proactive identification of hotspots in a cloud computing environment
JP6049887B2 (en) Automatic profiling of resource usage
US20190303189A1 (en) Determining an optimal computing environment for running an image
US20200097185A1 (en) Allocation and balancing of storage resources
Palanisamy et al. Purlieus: locality-aware resource allocation for MapReduce in a cloud
US9323577B2 (en) Automated profiling of resource usage
US9135048B2 (en) Automated profiling of resource usage
Govindan et al. Cuanta: quantifying effects of shared on-chip resource interference for consolidated virtual machines
US8972956B2 (en) Application deployment in heterogeneous environments
US10061529B2 (en) Active control of memory for java virtual machines and other application runtime environments
US20160094401A1 (en) Dynamic metering adjustment for service management of computing platform
US8898291B2 (en) Dynamically expanding computing resources in a networked computing environment
Jin et al. Towards optimized fine-grained pricing of IaaS cloud platform
US8762525B2 (en) Managing risk in resource over-committed systems
Gulati et al. Vmware distributed resource management: Design, implementation, and lessons learned
US8862738B2 (en) Reallocating resource capacity among resource pools in a cloud computing environment

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140813

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141027

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150422

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150518

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20150717

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160301

R150 Certificate of patent or registration of utility model

Ref document number: 5925293

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160419

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250