Legal claims defining the scope of protection, as filed with the USPTO.
1. A method, comprising: for each of a plurality of candidate snapshot schedules, each including a plurality of time instances at which snapshots are to be taken, determining, by a snapshot scheduler of a storage array and based on one or more pre-existing snapshot schedules, a maximum number of snapshots that are simultaneously scheduled in the one or more pre-existing snapshot schedules during the plurality of time instances within the candidate snapshot schedule; selecting by the snapshot scheduler at least one of the candidate snapshot schedules that are associated with a lowest maximum number of simultaneously scheduled 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. The method of claim 1 , further comprising: performing, by a snapshot manager of the storage array, snapshots of the storage array in accordance with the subject candidate snapshot schedule.
3. The method of claim 1 , wherein the selection of the subject one of the candidate snapshot schedules comprises: determining a longest sequence of consecutive start times of the selected candidate snapshot schedules; determining a time at a midpoint of the longest sequence of consecutive start times; and selecting the candidate snapshot schedule with a starting time at the midpoint time as the subject candidate snapshot schedule.
4. The method of claim 1 , wherein each of the candidate snapshot schedules is defined by a start time, an end time, a period of time which separates temporally adjacent snapshots scheduled between the start time and end time, and days of the week during which snapshots are to be performed.
5. The method of claim 4 , wherein the start time of each of the candidate snapshot schedules falls within a user-specified period of time.
6. The method of claim 1 , further comprising receiving by the snapshot scheduler a request to schedule snapshots.
7. The method of claim 6 , wherein the request includes a protection schedule that specifies a start hour, an end hour and a snapshot interval at which snapshots are to be taken.
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, each including a plurality of time instances at which snapshots are to be taken, determine, based on one or more pre-existing snapshot schedules, a maximum number of snapshots that are simultaneously scheduled in the one or more pre-existing snapshot schedules during the plurality of time instances within the candidate snapshot schedule; select at least one of the candidate snapshot schedules that are associated with a lowest maximum number of simultaneously scheduled 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.
9. The storage array of claim 8 , further comprising software instructions on the main memory that, when executed by the processor, cause the processor to perform snapshots of the storage array in accordance with the subject candidate snapshot schedule.
10. The storage array of claim 8 , wherein the selection of the subject one of the candidate snapshot schedules comprises: determining a longest sequence of consecutive start times of the selected candidate snapshot schedules; determining a time at a midpoint of the longest sequence of consecutive start times; and selecting the candidate snapshot schedule with a starting time at the midpoint time as the subject candidate snapshot schedule.
11. The storage array of claim 8 , wherein each of the candidate snapshot schedules is defined by a start time, an end time, a period of time which separates temporally adjacent snapshots scheduled between the start time and end time, and days of the week during which snapshots are to be performed.
12. The storage array of claim 11 , wherein the start time of each of the candidate snapshot schedules falls within a user-specified period of time.
13. The storage array of claim 8 , further comprising software instructions on the main memory that, when executed by the processor, cause the processor to receive a request to schedule snapshots.
14. The storage array of claim 13 , wherein the request includes a protection schedule that specifies a start hour, an end hour and a snapshot interval at which snapshots are to be taken.
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, each including a plurality of time instances at which snapshots are to be taken, determine, based on one or more pre-existing snapshot schedules, a maximum number of snapshots that are simultaneously scheduled in the one or more pre-existing snapshot schedules during the plurality of time instances within the candidate snapshot schedule; select at least one of the candidate snapshot schedules that are associated with a lowest maximum number of simultaneously scheduled 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.
16. The non-transitory machine-readable storage medium of claim 15 , further comprising software instructions that, when executed by the processor, cause the processor to perform snapshots of the storage array in accordance with the subject candidate snapshot schedule.
17. The non-transitory machine-readable storage medium of claim 15 , wherein the selection of the subject one of the candidate snapshot schedules comprises: determining a longest sequence of consecutive start times of the selected candidate snapshot schedules; determining a time at a midpoint of the longest sequence of consecutive start times; and selecting the candidate snapshot schedule with a starting time at the midpoint time as the subject candidate snapshot schedule.
18. The non-transitory machine-readable storage medium of claim 15 , wherein each of the candidate snapshot schedules is defined by a start time, an end time, a period of time which separates temporally adjacent snapshots scheduled between the start time and end time, and days of the week during which snapshots are to be performed.
19. The non-transitory machine-readable storage medium of claim 18 , wherein the start time of each of the candidate snapshot schedules falls within a user-specified period of time.
20. The non-transitory machine-readable storage medium of claim 15 , further comprising software instructions that, when executed by the processor, cause the processor to receive a request to schedule snapshots, wherein the request includes a protection schedule that specifies a start hour, an end hour and a snapshot interval at which snapshots are to be taken.
Unknown
August 8, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.