This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2016-158518, filed on Aug. 12, 2016, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to technology of managing use of a service.
A user who uses a virtual machine, a virtual disk, an application, or the like that is provided by a cloud service pays a usage fee to a service provider in accordance with a usage amount. In order to avoid too much increase in a usage amount, not only a user himself or herself pays attention but also a system that manages a usage amount or a usage fee is provided in a cloud system.
When an amount of resources actually allocated to a user has exceeded the predetermined amount, such a system may perform a prescribed action (for example, transmission of an e-mail).
Furthermore, such a system may send a notification to a user who uses a service based on a result of monitoring of service consumption, a consumption rate, a service activity level, or the like.
According to an aspect of the invention, A device includes, a memory configured to store a limit value, a first unit value, a first remaining period, and a first usage value, the limit value indicating an upper limit of usage of one or more services through a period, excess usage of the one or more services over the upper limit being restricted in the period, the first unit value relating to maximum possible usage per unit time, the first usage value indicating an amount of the one or more services which have been used between a beginning of the period and a first time point in the period, the first remaining period indicating duration between the first time point and an end of the period, and a processor coupled to the memory. And the processor is configured, to determine a first multiplication value of the first unit value and the first remaining period, to determine a first addition value of the first multiplication value and the first usage value, to perform a first comparison of the first addition value and the limit value, to perform a determination of whether it is necessary to output a first alert based on the first comparison, the first alert being with respect to the usage of the one or more services, and to output the first alert to a terminal when the determination indicates that it is necessary to output the first alert.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Under conventional technology, a threshold for notification of an alert to a user is set in advance. For this reason, when setting of a threshold is not appropriate, notification of an alert is not performed, disabling suppression of an operation that causes an increase in a usage fee (for example, an excessive usage of a service, addition of a service, or the like).
According to an aspect, an embodiment discloses a method of suppressing an operation that causes an increase in a usage fee of a service.
The fee management unit 101 manages a usage fee of the cloud service for each user. The service control unit 102 performs management of the cloud service provided by the plurality of physical servers 5. The network management unit 103 performs management of a band or the like in a network used by the plurality of physical servers 5 for communication. The user management unit 104 manages information on a user of the cloud service.
With reference to
Next, with reference to
Firstly, a fee management unit 101 of the management server 1 performs calculation processing (step S1 in
The fee management unit 101 specifies one unprocessed element out of elements assigned to the user by the cloud service (for example, a virtual machine, a virtual disk, an application, or the like) (step S31 in
The fee management unit 101 calculates, based on the unit price data (
For example, it is assumed that one virtual machine in the cloud service, one virtual disk of 500 gigabytes (GB), and communication of 32 megabits per second (Mbps) are used, and the unit time is one hour. With respect to the unit prices, the one virtual machine is 10 (yen/hour), the one virtual disk of 500 GB is 0.01 (yen/(time·GB)), and hypertext transfer protocol (HTTP) communication is 15 (yen/GB). In this case, a fee per unit time with respect to the virtual machine is 10 (yen/time)*one (machine)=10 (yen/time). A fee per unit time with respect to the virtual disk is 0.01 (yen/(time·GB))*500 (GB)*one (machine)=5 (yen/time). A fee per unit time with respect to the HTTP communication is 15 (yen/GB)*(32 (Mbps)/(8*1000))*3600 (seconds)=216 (yen/time). It is to be noted that a fee for using in a unit time is a fee in a case where a unit time element continues to be used and thus corresponds to the highest fee possibly generated per unit time.
The fee management unit 101 determines whether an unprocessed element is present (step S35). When an unprocessed element is present (Yes route at step S35), the processing returns to step S31. On the other hand, when an unprocessed element is not present (No route at step S35), the fee management unit 101 calculates a total sum of a fee of each element (step S37). Furthermore, the fee management unit 101 causes the data storage unit 11 to store therein the calculated total sum and the user ID of the user using the cloud service in an associated manner as second fee data. The processing then returns to a caller.
Now back to the description of
The fee management unit 101 assumes that the highest fee possibly generated in a remaining period of the payment cycle has been generated, and calculates a fee of the payment cycle (hereinafter, referred to as a maximum fee) with respect to the target cloud service (step S7). The fee management unit 101 then causes the data storage unit 11 to store therein the calculated fee and the user ID of the user using the target cloud service in an associated manner as third fee data. It is to be noted that the maximum fee is calculated by adding a fee registered in the first fee data (
The fee management unit 101 determines whether the fee calculated at step S7 exceeds the upper limit value registered in the upper limit value data (
On the other hand, when the fee calculated at step S7 exceeds the upper limit value registered in the upper limit value data (
The service control unit 102 determines whether an end instruction has been received from a manager of the cloud system (step S13). When an end instruction has not been received from the manager of the cloud system (No route at step S13), the processing proceeds to step S19 in
The processing after the terminal B will be described. Firstly, the fee management unit 101 determines whether a current time acquired from a system dock, for example, is a calculation time of the fee (step S15 in
When the current time is a calculation time of the fee (Yes route at step S15), the fee management unit 101 calculates the fee to be paid by the user with respect to the target cloud service at the time point of processing at step S15 and updates the fee in the first fee data (step S17). The fee is calculated based on the server data, the storage data, the unit price data, the event data, and the like, for example. The processing then returns to step S7 in
On the other hand, when the current time is not a calculation time of the fee (No route at step S15), the fee management unit 101 determines whether a specification of the target cloud service has been changed (step S19). The specification of the target cloud service is changed by specification by the user or the manager of the cloud system, for example.
When the specification of the target cloud service has not been changed (No route at step S19), the processing returns to step S15. On the other hand, when the specification of the target cloud service has been changed (Yes route at step S19), the fee management unit 101 performs processing described below. Specifically, the fee management unit 101 updates the fee registered in the first fee data (
Performing processing as described above enables the user to recognize that the fee possibly exceeds the upper limit value at an early stage and to stop an operation that causes an increase in the fee (for example, an excessive usage of a service).
With reference to
In a case where a configuration is employed in which a method as described in the first embodiment is not employed and the fee generated up to the current time point and a predetermined threshold are compared, as illustrated in
By contrast, with the method in the present embodiment, when the fee does not possibly exceed the upper limit value, an alert is not notified. Furthermore, the user is able to grasp to what degree the fee will be when the cloud service is used to the maximum, whereby a guide for the user to raise the upper limit value becomes clear.
According to the first embodiment, the user is able to recognize that the fee possibly reaches the upper limit value at an early stage. However, at an early stage of the payment cycle or before the actual fee exceeds a certain degree level, for example, there is a case where notification of an alert is not desired by the user. For this reason, in a second embodiment, processing as described below is performed.
With reference to
Firstly, the fee management unit 101 in the management server 1 performs calculation processing (step S41 in
The user management unit 104 receives a request for using a cloud service from the user terminal 3 (step S43). The cloud service specified in the request for using is hereinafter referred to as a “target cloud service”. Furthermore, when a user operating the user terminal 3 has not been registered, the user management unit 104 adds data of the user to the user data (
The fee management unit 101 assumes that the highest fee possibly generated in the remaining period of the payment cycle has been generated, and calculates a fee of the payment cycle (hereinafter, referred to as a maximum fee) with respect to the target cloud service (step S47). The fee management unit 101 then causes the data storage unit 11 to store therein the calculated fee and the user ID of the user using the target cloud service in an associated manner as third fee data. It is to be noted that the maximum fee is calculated by adding a fee registered in the first fee data (
The fee management unit 101 determines whether the fee calculated at step S47 exceeds the upper limit value registered in the upper limit value data (
On the other hand, when the fee calculated at step S47 exceeds the upper limit value registered in the upper limit value data (
When the notification condition is not satisfied (No route at step S51), the processing proceeds to step S55. On the other hand, when the notification condition is satisfied (Yes route at step S51), the service control unit 102 transmits, to the user terminal 3, an alert for notifying that the fee possibly exceeds the upper limit value (step S53).
The service control unit 102 determines whether an end instruction has been received from a manager of the cloud system (step S55). When an end instruction has not been received from the manager of the cloud system (No route at step S55), the processing proceeds to step S19 in
Performing processing as described above enables to notify the user terminal 3 of an alert at a timing desirable for the user.
In the first and the second embodiments, the maximum fee for the payment cycle is compared with the upper limit value. However, the fee to be compared may be a fee other than the maximum fee. For this reason, in a third embodiment, processing as described below is performed.
With reference to
The fee management unit 101 calculates, based on the unit price data (
The fee management unit 101 determines whether an unprocessed element is present (step S65). When an unprocessed element is present (Yes route at step S65), the processing returns to step S61. On the other hand, when an unprocessed element is not present (No route at step S65), the fee management unit 101 calculates a total sum of a fee of each element (step S67). Furthermore, the fee management unit 101 causes the data storage unit 11 to store therein the calculated total sum and the user ID of the user using the cloud service in an associated manner as the second fee data. The processing then returns to a caller.
In the case of the third embodiment, at step S7 or step S47, the fee is calculated assuming that not the highest fee possibly generated but a fee obtained by multiplying the highest fee possibly generated by the prescribed ratio has been generated. With this, an alert is notified to the user at an earlier stage, enabling to suppress the fee from reaching the upper limit value.
In the first and the second embodiments, it is assumed that the highest fee possibly generated in the remaining period of the payment cycle has been generated. In the third embodiment, it is assumed that a fee obtained by multiplying the highest fee possibly generated in the remaining period of the payment cycle by the prescribed ratio is generated. In a fourth embodiment described below, it is assumed that a fee is generated also in the remaining period of the payment cycle in the same manner as in the already elapsed period out of the payment cycle.
With reference to
The fee management unit 101 calculates, based on the read first fee data, a fee generated per unit time (for example, one hour) in the payment cycle (step S73). The fee management unit 101 then updates the fee in the second fee data (
Performing the processing as described above enables to perform notification of an alert based on an actual usage condition.
An embodiment of the present disclosure has been described above. However, the present disclosure is not limited to this. For example, the functional block configurations of the management server 1 and the physical servers 5 described above do not coincide with an actual program module configuration in some cases.
Furthermore, each data format described above is merely an example and does not have to have a configuration as described above. In the processing flows also, the orders of the pieces of the processing may be changed as long as processing results are unchanged. Furthermore, the pieces of the processing may be performed in parallel.
It is to be noted that the management server 1 described above is a computer device, in which, as illustrated in
An embodiment of the present disclosure described above is summarized as below.
An Information processing device (for example, the management server 1) according to a first aspect of the present embodiment includes (A) a storage unit (for example, a data storage unit 11) configured to store information on a first fee being a fee per unit time, information on a remaining period of a payment cycle, an upper limit value of the fee, and information on a fee at a current time point, and (B) a control unit (for example, the control unit 10) configured to multiply the first fee by the remaining period of the payment cycle based on the information stored in the storage unit and add the fee calculated by the multiplying to the fee at the current time point stored in the storage unit to calculate a maximum fee, and to determine whether notification of an alert is transmitted based on comparison between the maximum fee and the upper limit value stored in the storage unit.
Whether notification of an alert is transmitted is determined based on the maximum fee possibly generated, whereby a user is able to recognize that the fee possibly exceeds the upper limit value at an early stage and stop an operation that causes an increase in the fee (for example, an excessive usage of a service).
Furthermore, when the service is changed, the control unit may further (b1) update the information on the first fee with information on a second fee being a fee per unit time for a service after change, cause the storage unit to store the information on the second fee, multiply the second fee by the remaining period of the payment cycle based on the information stored in the storage unit, and add the fee calculated by the multiplying to the fee at the current time point stored in the storage unit to calculate a maximum fee, and determine whether notification of an alert is transmitted based on comparison between the maximum fee and the upper limit value stored in the storage unit. In a case where the service is changed in the middle of the payment cycle also, the user is able to know whether the fee possibly exceeds the upper limit value.
Furthermore, the control unit may further (b2) determine whether a first condition that the maximum fee is higher than the upper limit value and the current time point is on or after a prescribed point in the payment cycle is satisfied, and when the first condition is satisfied, transmit notification of an alert. This enables to transmit notification of an alert at a timing desirable for the user, as described above, because some users do not want notification of an alert to be transmitted at an early stage.
Furthermore, the control unit may further (b3) determine whether a second condition that the maximum fee is higher than the upper limit value and the fee at the current time point exceeds a prescribed threshold is satisfied, and when the second condition is satisfied, transmit notification of an alert. This enables to transmit notification of an alert at a timing desirable for the user, as described above, because some users do not want notification of an alert to be transmitted at an early stage.
Furthermore, the storage unit may further (a1) store therein information on a third fee obtained by multiplying the first fee by a prescribed ratio. The control unit may further (b4) multiply the third fee by the remaining period of the payment cycle based on the information stored in the storage unit and add the fee calculated by the multiplying to the fee at the current time point stored in the storage unit to calculate a fourth fee, and determine whether notification of an alert is transmitted based on comparison between the fourth fee and the upper limit value stored in the storage unit. With this, the user is able to know that the fee more possibly reaches the upper limit value.
Furthermore, the storage unit may further (a2) store therein information on a fifth fee generated per unit time in a period from a start time point of the payment cycle up to the current time point. The control unit may further (b5) multiply the fifth fee by the remaining period of the payment cycle based on the information stored in the storage unit and add the fee calculated by the multiplying to the fee at the current time point stored in the storage unit to calculate a sixth fee, and determine whether notification of an alert is transmitted based on comparison between the sixth fee and the upper limit value stored in the storage unit. This enables to transmit notification of an alert based on an actual usage condition.
An information processing method according to a second aspect of the present disclosure includes (c) multiplying a first fee by a remaining period of a payment cycle based on information stored in a storage unit that stores information on the first fee being a fee per unit time, information on the remaining period of the payment cycle, an upper limit value of the fee, and information on a fee at a current time point, (D) adding the fee calculated by the multiplying to the fee at the current time point stored in the storage unit to calculate a maximum fee, and (E) determining whether notification of an alert is transmitted based on comparison between the maximum fee and the upper limit value stored in the storage unit.
It is to be noted that a program for causing a computer to execute the processing using the above-described method is able to be created. The program is stored in a computer readable storage medium, such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, a hard disk, or the like, or a storage device, for example. It is to be noted that an intermediate result of the processing is temporarily stored in the storage device such as a main memory.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2016-158518 | Aug 2016 | JP | national |