DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Arguments
Applicant's arguments filed June 23, 2026 have been fully considered, but are not persuasive.
Applicant argues that Nagpal does not disclose “sending, by a first backup service of a data management system, a command to a second backup service”. Applicant argues that Nagpal instead recites that an administrator performs access to the scheduler, which is not the same as sending a command. The examiner respectfully disagrees. The involvement of the administrator does not preclude the scheduler from the broadest reasonable interpretation of the claim term “backup service”. Furthermore, the “deployment” of backup jobs and tasks by the scheduler falls within the broadest reasonable interpretation of the claim term “command”.
Applicant argues that the relied upon Nagpal reference does not disclose “a first quantity of computing resources of the first set of cloud computing resources is static” and “a second quantity of computing resources of the second cloud computing resources is dynamic”. Applicant argues that the rejection, with respect to the “wherein a first quantity of computing resources of the first set of cloud computing resources is static” limitation, attempts to import limitations from the Specification into the claims, citing MPEP section 2111.01(II). The Examiner respectfully disagrees. The cited section of the MPEP is to improperly narrowing the scope of the claims. The cited paragraph 0010 of the Specification was not relied on to narrow the scope of the claims. Claim terms are to be given their broadest reasonable interpretation consistent with the specification. The cited paragraph of the Specification was relied on to demonstrate that an interpretation of the claim term “static” encompassing “cloud computing resources that are reserved in advance from a cloud computing provider” would be consistent with the Specification, not to limit the claims to that interpretation.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1, 4 – 6, 13 – 17 and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Nagpal et al. (US Patent 10,089,144), hereinafter Nagpal.
Regarding claim 1, Nagpal teaches a method, comprising:
sending, by a first backup service (Column 1 line 14, the primary recited example of a computing job that may be scheduled is a storage backup job) of a data management system (Column 6 lines 24 – 30, the dynamic scheduler 101; Referring to paragraphs 0010 and 0012 of the present application’s specification, scheduling tasks may be the responsibility of the first backup service), a command to a second backup service of the data management system to perform one or more first tasks associated with a backup operation for a computing object (Fig. 1A2, the stimuli and input jobs sent to the computing devices on the computing platforms; Column 13 lines 20 – column 4 line 6, the scheduler or a user with access to the scheduler can instruct a scheduled backup job to run on a node), wherein the first backup service is hosted at a first set of cloud computing resources (Fig. 1A2, the stimulus capture module, behavior capture module, and platform response predictive model; Columns 17 – 19, the service can be embodied in a number of ways, including a Docker container or Kubernetes pod), wherein a first quantity of computing resources of the first set of cloud computing resources is static (Paragraph 0010 of the present application’s specification notes that static cloud computing resources refer to cloud computing resources that are reserved in advance. Accordingly, broadest reasonable interpretation of the claims is taken in view of the Specification to include, but not be limited to, such resources. Column 12 line 65 – Column 13 line 19, the dynamic scheduler can be implemented in virtualized controllers, on multiple nodes of the cluster, therefore the dynamic scheduler is hosted on cloud computing resources. The scheduler is shown to have been initialized in advance of the dynamic scheduling, column 7 lines 55 – 67 discloses an initial schedule that is used as a starting point for the dynamic allocation. Because the dynamic scheduler itself does not reallocate its own resources dynamically in the same way it reallocates jobs, it is static), and wherein a second quantity of computing resources of the second set of cloud computing resources is dynamic based at least in part on the one or more first tasks (Abstract and Column 1 Field, the scheduler dynamically schedules jobs and their resources based on availability for the backup job);
receiving, by the first backup service, an indication of completion of the one or more first tasks (Fig. 1A2, the responses 110 from the computing devices; Column 10 lines 48 – 54 describes completion being reported to a reward system); and
performing, by the first backup service and based at least in part on the indication of the completion of the one or more first tasks, one or more second tasks associated with the backup operation (Column 2, Summary, the reevaluation of the system is continuous, i.e. there will be tasks following a given set of tasks; There are a number of operations that may be considered second tasks: Claim 1 recites forming an updated predictive model, scheduling new jobs, rescheduling old jobs, and performing other scheduling operations.).
Regarding claim 4, Nagpal teaches the method of claim 1, further comprising:
scheduling, by the first backup service, the one or more second tasks based at least in part on a load of the first set of cloud computing resources (Column 2 Summary).
Regarding claim 5, Nagpal teaches the method of claim 1, wherein the one or more first tasks comprise ingestion of the backup information associated with the computing object (Column 13 lines 20 – 37, streams of I/O can be processed by any backup job and gather data), storage of the backup information at a storage environment (Column 13 lines 20 – 37, storing information can be via the same storage I/O), or a combination thereof.
Regarding claim 6, Nagpal teaches the method of claim 1, further comprising:
dynamically increasing the second quantity of computing resources of the second set of cloud computing resources based on an increase in an instantaneous load at the second backup service (Column 9 line 65 – Column 12 line 17 describes the dynamic allocation process. In the scenario where new job specs arrive, changing the load of the backup service, the algorithm will greedily schedule the most rewarding tasks, increasing the allocations);
dynamically decreasing the second quantity of computing resources of the second set of cloud computing resources based on a decrease in the instantaneous load at the second backup service (Fig. 3, finished jobs are removed. The jobs are no longer part of the load at the second backup service, and their resources are deallocated from them).
Regarding claim 13, Nagpal teaches the method of claim 1, further comprising:
obtaining, by the first backup service, an indication of a second network address associated with the second backup service, wherein sending the command is based at least in part on the second network address, and wherein the command is indicative of a first network address associated with the first backup service (Column 16 line 18 – 31, the computing platforms contain a communications link to communicate with any organization of data items, where the data items can comprise a destination address and a source address; Column 17 line 24 – 33, the platform is further connected to the internet through ports with an IP address; Column 18 lines 19 – 33, the containers can communicate via addresses such as IP addresses. Fig. 7B shows the containers also have the communications link described in column 16).
Regarding claim 14, Nagpal teaches the method of claim 1, further comprising:
obtaining, by the first backup service from a user interface associated with the data management system, a request to perform the backup operation for the computing object, wherein the backup operation is based at least in part on the request (Column 13 lines 48 – 55, the user may directly schedule and manage the storage).
Regarding claim 15, Nagpal teaches the method of claim 1, further comprising:
sending, by the first backup service, a second command to the second backup service to perform one or more third tasks associated with a second backup operation for a second computing object, and wherein the second quantity of computing resources of the second set of cloud computing resources is dynamic based at least in part on the one or more third tasks, and wherein the one or more third tasks overlap in time with the one or more first tasks (Column 3 lines 54 – 58, the system schedules multiple backup jobs that run concurrently);
receiving, by the first backup service, an indication of completion of the one or more third tasks (As with the first tasks, the responses 110); and
performing, by the first backup service and based at least in part on the indication of the completion of the one or more third tasks, one or more fourth tasks associated with the second backup operation (As with the second tasks, Column 2, Summary, the reevaluation of the system is continuous, i.e. there will be tasks following a given set of tasks; There are a number of operations that may be considered fourth tasks: Claim 1 recites forming an updated predictive model, scheduling new jobs, rescheduling old jobs, and performing other scheduling operations.).
Regarding claim 16, Nagpal teaches the method of claim 15, further comprising:
scheduling the one or more second tasks and the one or more fourth tasks based at least in part on the first quantity of computing resources (The second and fourth tasks are run on the first quantity of computing resources).
Regarding claim 17, Nagpal teaches an apparatus, comprising:
one or more memories storing processor-executable code (Claim 14); and
one or more processors coupled with the one or more memories and individually or collectively operable to execute the code to cause the apparatus to perform a method (Claim 14).
Claim 17 otherwise recites similar language to claim 1, and is similarly rejected.
Regarding claim 20, Nagpal teaches a non-transitory computer-readable medium storing code, the code comprising instructions executable by one or more processors to perform a method (Claim 8).
Claim 20 otherwise recites similar language to claim 1, and is similarly rejected.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 2, 3, 7 – 12, 18 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Nagpal in view of Singh et al. (US Patent Application Publication 2019/0179918, same assignee as current application), herein Singh.
Regarding claim 2, Nagpal teaches the method of claim 1.
Nagpal does not explicitly teach that performing the one or more first tasks comprises updating metadata associated with a snapshot chain for the computing object based at least in part on a storage location of a snapshot of the computing object associated with the backup operation, wherein the indication of completion of the one or more first tasks indicates the storage location of a snapshot of the computing object (Although Nagpal teaches that the backup operations include snapshots in Column 1 Background, it does not teach the specific mechanics of performing a snapshot).
Singh teaches updating metadata associated with a snapshot chain based at least in part on a storage location of a snapshot of the computing object associated with the backup operation (Paragraph 0104, the merged file that is stored in a metadata store, associated with a snapshot, the merged file including a pointer to the file; Paragraph 0059, the metadata information may include a location of the file), wherein the indication of completion of the one or more first tasks indicates the storage location of a snapshot of the computing object (The act of writing the updated metadata to the store is an indication of completion).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention that the snapshot operation of Nagpal would be a snapshot operation similar to that taught by Singh. It would be obvious because, given that Nagpal does not teach the details of a snapshot operation, one of ordinary skill in the art would be drawn to known methods of performing snapshot operations, such as those taught by Singh. Paragraph 0061 of Singh teaches a distributed job scheduler which operates in a similar manner to the job scheduler of Nagpal. In view of the two documents, on of ordinary skill in the art would recognize the scheduler of Nagpal would be compatible with scheduling snapshots similar to Singh.
Regarding claim 3, Nagpal in view of Singh teaches the method of claim 2, wherein:
the snapshot is an incremental snapshot (Singh Abstract), and
updating the snapshot chain comprises updating pointers to one or more prior snapshots of the computing object (Singh paragraph 0066, the merged files include pointers to other versions of the snapshot in the form of forward and reverse incrementals; Singh paragraphs 0115/0116 and Fig. 4A, for example, updating a version of a snapshot involves updating the subchain pointers, including forward and reverse incrementals).
Regarding claim 7, Nagpal teaches the method of claim 1, further comprising:
determining, by the first backup service, and expiration of a first snapshot of the computing object (Column 1 Background, snapshots may be scheduled with tight intervals based on an SLA).
Nagpal does not explicitly teach performing, by the first backup service or the second backup service and based at least in part on the expiration, a consolidation operation of the first snapshot with a second snapshot of the computing object (Although Nagpal teaches that the backup operations include snapshots, it does not teach the specific mechanics of performing a snapshot).
Singh teaches performing, by the first backup service or the second backup service and based at least in part on the expiration (Paragraph 0101, the snapshot process begins based on a timed schedule for performing backups), a consolidation operation of the first snapshot with a second snapshot of the computing object (Paragraph 0030).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention that the snapshot operation of Nagpal would be a snapshot operation similar to that taught by Singh. It would be obvious because, given that Nagpal does not teach the details of a snapshot operation, one of ordinary skill in the art would be drawn to known methods of performing snapshot operations, such as those taught by Singh. Paragraph 0061 of Singh teaches a distributed job scheduler which operates in a similar manner to the job scheduler of Nagpal. In view of the two documents, on of ordinary skill in the art would recognize the scheduler of Nagpal would be compatible with scheduling snapshots similar to Singh.
Regarding claim 8, Nagpal in view of Singh teaches the method of claim 7, further comprising:
scheduling the consolidation operation based at least in part on a load on the first set of cloud computing resources (The scheduling is performed by the first set of cloud computing resources as taught by Nagpal) or the second set of cloud computing resources (The scheduling is dynamic based on a load on the second set of cloud computing resources as taught by Nagpal Column 2 Summary).
Regarding claim 9, Nagpal teaches the method of claim 1, further comprising:
sending, by the first backup service, a second command to the second backup service to perform one or more third tasks associated with an operation for the computing object, wherein the second quantity of computing resources of the second set of cloud computing resources is dynamic based at least in part on the one or more third tasks (Column 3 lines 54 – 58, the system schedules multiple backup jobs that run concurrently);
receiving, by the first backup service, an indication of completion of the one or more third tasks (As with the first tasks, the responses 110); and
performing, by the first backup service, one or more fourth tasks associated with the operation (There are a number of operations that may be considered fourth tasks: Claim 1 recites forming an updated predictive model, scheduling new jobs, rescheduling old jobs, and performing other scheduling operations.).
Nagpal does not explicitly teach that the operation is a restore operation (Although Nagpal teaches backup operations, it does not explicitly mention restore operations).
Singh teaches that the backup operation may be a restore operation (Paragraph 0047).
It would have been obvious to one of ordinary skill in the art that the scheduling system of Nagpal could scheduling restore operations such as those taught by Singh. It would be obvious because a restore operation follows a backup operation or snapshot, and provides a purpose for that snapshot (Singh paragraph 0112, a VM is restored from a set of incremental files and a base image, i.e. a snapshot). Nagpal teaches snapshots in Column 1 Background. It would be clear to one of ordinary skill in the art that, if the system can make a snapshot as taught by Nagpal, it would be advantageous for that system to be capable of restoring the data from that snapshot.
Regarding claim 10, Nagpal in view of Singh teaches the method of claim 9, wherein the one or more third tasks comprise retrieval of backup information corresponding to a restore time for the computing object from a storage environment (Singh paragraph 0113, retrieving the portion of the file. This corresponds to a restore time as it is related to the desired version of the VM).
Regarding claim 11, Nagpal in view of Singh teaches the method of claim 9, wherein the one or more fourth tasks comprise identifying one or more storage locations at a storage environment of backup information corresponding to a restore time for the computing object based at least in part on a snapshot chain (Singh paragraph 0112, step 386, determining the set of incremental files for generating the version).
Regarding claim 12, Nagpal in view of Singh teaches the method of claim 9, further comprising:
obtaining, by the first backup service from a user interface associated with the data management system, a request to restore the computing object to a version corresponding to a restore time, the restore operation based at least in part on the request (Singh paragraph 0049, there is a user interface that allows the user to interact with the storage and control snapshot versions of the VMs; Nagpal column 13 lines 48 – 55, the user may directly schedule and manage the storage).
Claim 18 recites similar language to claim 2, and is similarly rejected.
Claim 19 recite similar language to claim 3, and is similarly rejected.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRYAN PAI SONG HUANG whose telephone number is (571)272-0510. The examiner can normally be reached Monday - Friday 11:30 AM - 8:30 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, ASHISH THOMAS can be reached at (571) 272-0631. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/B.P.H./Examiner, Art Unit 2114
/ASHISH THOMAS/Supervisory Patent Examiner, Art Unit 2114