Adaptive quota management system
A system for determining a quota comprises an input interface and a processor. The input interface is configured to receiving a current workload. The processor is configured to: determine whether the current workload less than or equal to target workload; and in response to the current workload being less than or equal to target workload: indicate no modification to input values; set output values to input values; and provide the output values.
1. A system for determining a quota, comprising;
an input interface configured to:
receive a current workload; and
a processor configured to:
determine whether the current workload less than or equal to a target workload; and
in response to the current workload being less than or equal to the target workload:
indicate no modification to input values; and
set output values to input values; and
in response to the current workload not being less than or equal to the target workload:
calculate a modification ratio; and
determine a new target amount; and
determine whether the new target amount is greater than a maximum quota;
in response to the new target amount being greater than the maximum quota, set the output quota to the maximum quota; and
in response to the new target amount not being greater than the maximum quota, set the output quota to the new target amount; and
provide the output values and the output quota.
2. The system of claim 1 , further comprising determining a new target validity time.
3. The system of claim 2 , further comprising determining whether the new target validity time is greater than a maximum time.
4. The system of claim 3 , wherein in response to the new target validity time being greater than the maximum time, set an output validity time to the maximum time.
5. The system of claim 3 , wherein in response to the new target validity time not being greater than the maximum time, set an output validity time to the new target validity time.
6. The system of claim 1 , wherein the current workload comprises a measurement of one or more of the following: a CPU utilization, a network utilization, a storage system utilization, a memory utilization, a rate of requests being received, and/or a latency of responses to requests.
7. The system of claim 1 , wherein calculating the modification ratio uses a lookup table to determine a quota scaling coefficient used to scale an input quota amount.
8. A method for determining a quota, comprising;
receiving a current workload;
determining, using a processor, whether the current workload less than or equal to a target workload; and
in response to the current workload being less than or equal to the target workload:
indicating no modification to input values; and
setting output values to input values; and
in response to the current workload not being less than or equal to the target workload:
calculating a modification ratio; and
determining a new target amount; and
determining whether the new target amount is greater than a maximum quota;
in response to the new target amount being greater than the maximum quota, setting the output quota to the maximum quota; and
in response to the new target amount not being greater than the maximum quota, setting the output quota to the new target amount; and
providing the output values and the output quota.
9. The method of claim 8 , further comprising determining a new target validity time.
10. The method of claim 9 , further comprising determining whether the new target validity time is greater than a maximum time.
11. The method of claim 10 , wherein in response to the new target validity time being greater than the maximum time, setting an output validity time to the maximum time.
12. The method of claim 10 , wherein in response to the new target validity time not being greater than the maximum time, setting an output validity time to the new target validity time.
13. The method of claim 8 , wherein the current workload comprises a measurement of one or more of the following: a CPU utilization, a network utilization, a storage system utilization, a memory utilization, a rate of requests being received, and/or a latency of responses to requests.
14. The method of claim 8 , wherein calculating the modification ratio uses a lookup table to determine a quota scaling coefficient used to scale an input quota amount.
15. A computer program product for determining a quota, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
receiving a current workload;
determining whether the current workload less than or equal to a target workload; and
in response to the current workload being less than or equal to the target workload:
indicating no modification to input values; and
setting output values to input values; and
in response to the current workload not being less than or equal to the target workload:
calculating a modification ratio; and
determining a new target amount; and
determining whether the new target amount is greater than a maximum quota;
in response to the new target amount being greater than the maximum quota, setting the output quota to the maximum quota; and
in response to the new target amount not being greater than the maximum quota, setting the output quota to the new target amount; and
providing the output values and the output quota.
16. The method of claim 15 , further comprising determining a new target validity time.
17. The method of claim 16 , further comprising determining whether the new target validity time is greater than a maximum time.
18. The method of claim 17 , wherein in response to the new target validity time being greater than the maximum time, setting an output validity time to the maximum time.
19. The method of claim 17 , wherein in response to the new target validity time not being greater than the maximum time, setting an output validity time to the new target validity time.
20. The method of claim 15 , wherein the current workload comprises a measurement of one or more of the following: a CPU utilization, a network utilization, a storage system utilization, a memory utilization, a rate of requests being received, and/or a latency of responses to requests.
21. The method of claim 15 , wherein calculating the modification ratio uses a lookup table to determine a quota scaling coefficient used to scale an input quota amount.