METHODS AND SYSTEMS FOR OPTIMAL SNAPSHOT DISTRIBUTION WITHIN A PROTECTION SCHEDULE
First Claim
Patent Images
1. A method, comprising:
- for each of a plurality of candidate snapshot schedules, determining, by a snapshot scheduler of a storage array and based on one or more pre-existing snapshot schedules, the maximum number of snapshots that are simultaneously scheduled during a plurality of time instances within the candidate snapshot schedule;
selecting by the snapshot scheduler ones of the candidate snapshot schedules that are associated with the lowest maximum number of simultaneous snapshots; and
from the selected candidate snapshot schedules, selecting by the snapshot scheduler a subject one of the candidate snapshot schedules based on respective start times of the selected candidate snapshot schedules.
2 Assignments
0 Petitions
Accused Products
Abstract
Storage administrators would like to create snapshots of a storage array as frequently as possible, but too many concurrent snapshots can place an unnecessary load on the storage array. Described herein are techniques for scheduling snapshots on the storage array with the objective of minimizing the maximum number of simultaneous snapshots and/or temporally spacing apart snapshots from each other.
11 Citations
20 Claims
-
1. A method, comprising:
-
for each of a plurality of candidate snapshot schedules, determining, by a snapshot scheduler of a storage array and based on one or more pre-existing snapshot schedules, the maximum number of snapshots that are simultaneously scheduled during a plurality of time instances within the candidate snapshot schedule; selecting by the snapshot scheduler ones of the candidate snapshot schedules that are associated with the lowest maximum number of simultaneous snapshots; and from the selected candidate snapshot schedules, selecting by the snapshot scheduler a subject one of the candidate snapshot schedules based on respective start times of the selected candidate snapshot schedules. - View Dependent Claims (2, 3, 4, 6, 7)
-
-
5. The method of claim 5, wherein the start time of each of the candidate snapshot schedules falls within a user-specified period of time.
-
8. A storage array, comprising:
-
a plurality of storage elements; a main memory; a processor communicatively coupled to the storage elements and the main memory; and software instructions on the main memory that, when executed by the processor, cause the processor to; for each of a plurality of candidate snapshot schedules, determine, based on one or more pre-existing snapshot schedules, the maximum number of snapshots that are simultaneously scheduled during a plurality of time instances within the candidate snapshot schedule; select ones of the candidate snapshot schedules that are associated with the lowest maximum number of simultaneous snapshots; and from the selected candidate snapshot schedules, select a subject one of the candidate snapshot schedules based on respective start times of the selected candidate snapshot schedules. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory machine-readable storage medium for a storage array having (i) a plurality of storage elements, (ii) a main memory, and (iii) a processor communicatively coupled to the storage elements and the main memory, the non-transitory machine-readable storage medium comprising software instructions that, when executed by the processor, cause the processor to:
-
for each of a plurality of candidate snapshot schedules, determine, based on one or more pre-existing snapshot schedules, the maximum number of snapshots that are simultaneously scheduled during a plurality of time instances within the candidate snapshot schedule; select ones of the candidate snapshot schedules that are associated with the lowest maximum number of simultaneous snapshots; and from the selected candidate snapshot schedules, select a subject one of the candidate snapshot schedules based on respective start times of the selected candidate snapshot schedules. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification