Method and apparatus for allocating resources among backup tasks in a data backup system
AssigneeSymantec Corporation
InventorsMichael Zeis, Thomas Hartnett, Adonijah Park
Life of this patent
Estimating the term…
Abstract
Method and apparatus for allocating resources among backup tasks in a data backup system is described. One aspect of the invention relates to managing backup tasks in a computer network. An estimated resource utilization is established for each of the backup tasks based on a set of backup statistics. A resource reservation is allocated for each of the backup tasks based on the estimated resource utilization thereof. The resource reservation of each of the backup tasks is dynamically changed during performance thereof.
Claims11
A method for managing backup tasks in a computer network, comprising:
- establishing an estimated resource utilization for a backup task of the backup tasks based on a set of backup statistics, wherein
- the estimated resource utilization comprises an identification of an amount of storage space;
- allocating a resource reservation for the backup task based on the estimated resource utilization thereof;
- and
- dynamically reducing the resource reservation of the backup task during execution of the backup task in response to detecting consumption of resources allocated in the resource reservation by the backup task, wherein
- the reducing the resource reservation of the backup task comprises:
- tracking resource usage for the backup task as the backup task is being performed;
- periodically releasing portions of the resource reservation over time throughout performance of the backup task wherein periodicity of the releasing is calculated based upon a rate of consumption of the resources;
- de-allocating the resource reservation of the backup task in response to completion thereof;
- suspending the backup task in response to resource usage thereof exceeding the resource reservation;
- requesting an additional resource reservation for the backup task;
- detecting additional resources becoming available;
- detecting that the additional resource reservation is granted;
- clearing a flag, where the flag indicates whether the backup task is suspended;
- and
- resuming the backup task.
An apparatus for managing backup tasks in a computer network, comprising:
- means for establishing an estimated resource utilization for a backup task of the backup tasks based on a set of backup statistics, wherein
- the estimated resource utilization identifies comprises an identification of an amount of storage space;
- means for allocating a resource reservation for the backup task based on the estimated resource utilization thereof;
- and
- means for dynamically reducing the resource reservation of the backup task during execution of the backup task in response to detecting consumption of resources allocated in the resource reservation generated by the backup task, wherein
- the reducing the resource reservation of the backup task comprises:
- means for tracking resource usage for the backup task as the backup task is being performed;
- means for periodically releasing portions of the resource reservation over time throughout performance of the backup task wherein periodicity of the releasing is calculated based upon a rate of consumption of the resources;
- means for de-allocating the resource reservation of the backup task in response to completion thereof;
- means for suspending the backup task in response to resource usage thereof exceeding the resource reservation;
- means for requesting an additional resource reservation for the backup task;
- means for detecting additional resources becoming available;
- means for detecting that the additional resource reservation is granted;
- means for clearing a flag, where the flag indicates whether the backup task is suspended;
- and
- means for resuming the backup task.
A non-transitory computer readable storage medium storing program instructions executable to:
- establish an estimated resource utilization for each of the backup tasks based on a set of backup statistics, wherein
- the estimated resource utilization identifies comprises an identification of an amount of storage space;
- allocate a resource reservation for each of the backup tasks based on the estimated resource utilization thereof;
- and
- dynamically reduce the resource reservation of a backup task of the backup tasks during execution of the backup task in response to detecting consumption of resources allocated in the resource reservation by the backup task, wherein
- the reducing the resource reservation of the backup task comprises:
- tracking resource usage for the backup task as the backup task is being performed;
- periodically releasing portions of the resource reservation over time throughout performance of the backup task wherein periodicity of the releasing is calculated based upon a rate of consumption of the resources;
- de-allocating the resource reservation of the backup task in response to the completion thereof;
- suspending the backup task in response to resource usage thereof exceeding the resource reservation;
- requesting an additional resource reservation for the backup task;
- detecting additional resources becoming available;
- detecting that the additional resource reservation is granted;
- clearing a flag, where the flag indicates whether the backup task is suspended;
- and
- resuming the backup task.
Dependencies are inferred from the claim text.