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 have been fully considered. Upon further review and claim amendments, the 101 rejection is withdrawn.
Applicant’s arguments regarding the 102/103 rejections have been fully considered but respectfully not persuasive. See the rejection below for how the current references, in light of a new reference teach the new limitations.
Claim Rejections - 35 USC § 103
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 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.
Claim(s) 7 is/are rejected under 35 U.S.C. 103 as being rejected over Li, Jianxin, et al. "Towards an efficient snapshot approach for virtual machines in clouds." [herein Li1] in view of Jackson, II et al. US 2022/0114080 [herein JacksonII]
Regarding claim 7, Li1 teaches “a method for duration prediction, comprising: receiving a request for deleting a target snapshot of a data object in a storage system, the request comprising an identification of the target snapshot” (Li1 pg. 9 §3.4.3 “The iROW snapshot deletion is the most complex operation. Because of the dependency of snapshots, we have to merge the disk data from the snapshot to its children snapshots before deleting it in the prior iROW. This leads to a long deletion time and may result in physical disk over-usage if the snapshot has multiple children” wherein deleting would entail receiving a request for deleting);
“acquiring a set of parameter values related to the target snapshot based on the identification” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration); and
“determining, based on the set of parameter values, a duration required for deleting the target snapshot” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration, and pg. 9 ¶1 “The “virtual deletion “method greatly reduces the VM snapshot deletion time, and avoids physical disk over-usage”)
“[…] and a size of the data object when the target snapshot is created” (fig. 1 shows amount of data in snapshot i.e. the data object size)
“controlling deletion of the target snapshot from the storage system based on the determined duration” (pg. 8 §3.4.3 “The iROW snapshot deletion is the most complex operation. Because of the dependency of snapshots, we have to merge the disk data from the snapshot to its children snapshots before deleting it in the prior iROW. This leads to a long deletion time and may result in physical disk over-usage if the snapshot has multiple children, as shown in Figs. 12 and 13. In Fig. 12, A is the snapshot to be deleted, and B, C, D are its children. In Fig. 13, BTX denotes the bitmap table of the snapshot X, and this figure shows the bitmap tables of the snapshots correspondingly shown in Fig. 12. We must merge snapshot A with B, C and D, respectively, and then delete it” wherein the merging is done due to the duration, see figs. 11-14)
Li1 does not explicitly teach the number of snapshots. JacksonII however teaches “wherein the set of parameter values comprises at least the number of snapshots being deleted when the target snapshot is deleted” (JacksonII [0043] “A virtual machine monitor may be configured to manage the new incremental snapshots using checkpoint objects, which comprise arrays of pointers to every page in the guest memory. The contents of each page may be stored individually with an associated reference count thereby tracking the number of checkpoints which include that page.” [… ] “Also, when a checkpoint is deleted, the virtual machine monitor may check the reference counts of all the pages in that checkpoint and delete the pages that aren't used by any other checkpoint.” which the tracks the number of snapshots and subsequently number of snapshots that would be deleted)
It would have been obvious to one having ordinary skill in the art at the time that the invention was effectively filed to combine the teachings of Li1 with that of JacksonII since a combination of known methods would yield predictable results. It is known in the art to account for the number of snapshots that exist and subsequently number of snapshots that would be deleted when a given snapshot is deleted. Therefore this would operate in a known and predictable manner with the systems above.
Claim(s) 1-3, 8-12, and 16-18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Li, Jianxin, et al. "Towards an efficient snapshot approach for virtual machines in clouds." [herein Li1]
in view of Li, Lianpeng, et al. "SLA-aware and energy-efficient VM consolidation in cloud data centers using robust linear regression prediction model." [herein Li2]
further in view of Jackson, II et al. US 2022/0114080 [herein JacksonII]
Regarding claims 1 and 10, Li1 teaches “a method for model training, comprising: acquiring a first set of parameter values related to a first snapshot of a data object” (Li1 pg.1 ¶2 “The virtual machine snapshot is a file-based approach greatly enhancing the availability of the data and services in the VM. It can back up a VM at a specific time point by the disk snapshot saving the disk of the VM, and the state snapshot which saves the running state of the VM including the states of the virtual CPUs and of all connected virtual devices of the VM [2,6,10,26]”), the first snapshot being deleted from a storage system through a first deletion operation” (pg. 9 §3.4.3 “The iROW snapshot deletion is the most complex operation. Because of the dependency of snapshots, we have to merge the disk data from the snapshot to its children snapshots before deleting it in the prior iROW. This leads to a long deletion time and may result in physical disk over-usage if the snapshot has multiple children”);
“acquiring a first duration during which the first deletion operation is performed” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration, and pg. 9 ¶1 “The “virtual deletion “method greatly reduces the VM snapshot deletion time, and avoids physical disk over-usage”)
Li1 however does not explicitly teach a prediction model. In the same field of endeavor, Li2 more specifically teaches “generating a prediction model based on at least the first set of parameter values and the first duration” (Li2 pg. 2 ¶1 “So in this paper, we focuses on predicting the host CPU utilization to determine when a host is overloaded or underloaded. A prediction model is proposed to forecast the future CPU utilization and named Robust Simple Linear Regression (RobustSLR) prediction model”), “the prediction model being used for determining a predicted duration required for deleting each of one or more additional snapshots from the storage system” (bottom of pg. 1 into top of pg. 2 “it is important to predict the future host state accurately, and make plan for migration of VMs based on the prediction. For example, if a host will be overloaded at next time unit, some VMs should be migrated from the host to keep the host from overloading, and if a host will be underloaded at next time unit, all VMs should be migrated from the host, so that the host can be turn off to save power” wherein VM consolidation is analogous to deleting a snapshot)
It would have been obvious to one having ordinary skill in the art at the time that the invention was filed to combine the teachings of Li1 with that of Li2 since “However, the aggressive consolidation of virtual machines may lead to service-level agreements (SLA) violation, which is essential for data centers and their users. Therefore, it is very meaningful to strike a tradeoff between power efficient and reduction of SLA violation level” Li2 abstract. Aggressive consolidation, i.e. deletion of snapshots may cause issues so a technique is needed to mitigate that which Li2 provides.
Li1 further teaches “controlling deletion of the one or more additional snapshots from the storage system based on one or more respective predicted durations generated by the preidciton model for one or more additional sets of parameter values” (pg. 8 §3.4.3 “The iROW snapshot deletion is the most complex operation. Because of the dependency of snapshots, we have to merge the disk data from the snapshot to its children snapshots before deleting it in the prior iROW. This leads to a long deletion time and may result in physical disk over-usage if the snapshot has multiple children, as shown in Figs. 12 and 13. In Fig. 12, A is the snapshot to be deleted, and B, C, D are its children. In Fig. 13, BTX denotes the bitmap table of the snapshot X, and this figure shows the bitmap tables of the snapshots correspondingly shown in Fig. 12. We must merge snapshot A with B, C and D, respectively, and then delete it” wherein the merging is done due to the duration, see figs. 11-14, wherein the predicted durations are established and combined with Li2)
The references does not explicitly teach the number of snapshots. JacksonII however teaches “wherein the set of parameter values comprises at least the number of snapshots being deleted when the target snapshot is deleted” (JacksonII [0043] “A virtual machine monitor may be configured to manage the new incremental snapshots using checkpoint objects, which comprise arrays of pointers to every page in the guest memory. The contents of each page may be stored individually with an associated reference count thereby tracking the number of checkpoints which include that page.” [… ] “Also, when a checkpoint is deleted, the virtual machine monitor may check the reference counts of all the pages in that checkpoint and delete the pages that aren't used by any other checkpoint.” which the tracks the number of snapshots and subsequently number of snapshots that would be deleted)
It would have been obvious to one having ordinary skill in the art at the time that the invention was effectively filed to combine the teachings of Li1 and Li2 with that of JacksonII since a combination of known methods would yield predictable results. It is known in the art to account for the number of snapshots that exist and subsequently number of snapshots that would be deleted when a given snapshot is deleted. Therefore this would operate in a known and predictable manner with the systems above.
Note that independent claim 10 recites the same substantial subject matter as independent claim 1, only differing in embodiment. The difference in embodiment, a processor and memory would be inherent to any computing system such as the one provided by Li1 and Li2 above.
Regarding claims 2, 9, 11, and 18 the Li1, Li2, and JacksonII references have been addressed above. Li1 further teaches “wherein the first set of parameter values further comprises at least one of the following: central processing unit (CPU) usage and a storage duration of the first snapshot” (Li1 pg.1 ¶2 “The virtual machine snapshot is a file-based approach greatly enhancing the availability of the data and services in the VM. It can back up a VM at a specific time point by the disk snapshot saving the disk of the VM, and the state snapshot which saves the running state of the VM including the states of the virtual CPUs and of all connected virtual devices of the VM [2,6,10,26]” where states of CPU is analogous to CPU usage)
Regarding claims 3 and 12, the Li1, Li2, and JacksonII references have been addressed above. Li2 further teaches “wherein generating the prediction model comprises: obtaining parameters of the prediction model by training a linear regression model using the first set of parameter values and the first duration” (Li2 pg. 2 ¶1 “So in this paper, we focuses on predicting the host CPU utilization to determine when a host is overloaded or underloaded. A prediction model is proposed to forecast the future CPU utilization and named Robust Simple Linear Regression (RobustSLR) prediction model” and pgs. 4-5 algorithms 1-3 which show the various parameters obtained which include utilization time (duration))
Regarding claims 8 and 17, the Li1, Li2, and JacksonII references have been addressed above. Li2 further teaches “wherein determining a duration required for deleting the target snapshot comprises: determining the duration by applying the set of parameter values to a prediction model” (Li2 bottom of pg. 1 into top of pg. 2 “it is important to predict the future host state accurately, and make plan for migration of VMs based on the prediction. For example, if a host will be overloaded at next time unit, some VMs should be migrated from the host to keep the host from overloading, and if a host will be underloaded at next time unit, all VMs should be migrated from the host, so that the host can be turn off to save power” wherein VM consolidation is analogous to deleting a snapshot)
Regarding claim 16, the Li1, Li2, and JacksonII references have been addressed above. Li1 further teaches
“receiving a request for deleting a target snapshot of a data object in a storage system, the request comprising an identification of the target snapshot” (Li1 pg. 9 §3.4.3 “The iROW snapshot deletion is the most complex operation. Because of the dependency of snapshots, we have to merge the disk data from the snapshot to its children snapshots before deleting it in the prior iROW. This leads to a long deletion time and may result in physical disk over-usage if the snapshot has multiple children” wherein deleting would entail receiving a request for deleting);
“acquiring a set of parameter values related to the target snapshot based on the identification” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration); and
“determining, based on the set of parameter values, a duration required for deleting the target snapshot” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration, and pg. 9 ¶1 “The “virtual deletion “method greatly reduces the VM snapshot deletion time, and avoids physical disk over-usage”)
Claim(s) 4-6, 13-15, and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Li1 in view of Li2 and JacksonII, further in view of
Li et al. US 2019/0342181 [herein Li3].
Regarding claims 4 and 13, the Li1, Li2, and JacksonII references have been addressed above. Li1 further teaches “further comprising: acquiring a second set of parameter values related to a second snapshot of the data object, the second snapshot being deleted from the storage system through a second deletion operation” (Li1 pg.1 ¶2 “The virtual machine snapshot is a file-based approach greatly enhancing the availability of the data and services in the VM. It can back up a VM at a specific time point by the disk snapshot saving the disk of the VM, and the state snapshot which saves the running state of the VM including the states of the virtual CPUs and of all connected virtual devices of the VM [2,6,10,26]” acquiring either first or second parameters are functionally the same);
“acquiring a second duration during which the second deletion operation is performed” (pg. 3 “For the disk snapshot, the time incurred during the iROW’s disk snapshot creation, rollback and deletion is 17x, 35x, and 47x faster than that of qcow2 respectively” which entails acquiring the duration, and pg. 9 ¶1 “The “virtual deletion “method greatly reduces the VM snapshot deletion time, and avoids physical disk over-usage”);
Li2 further teaches “applying the second set of parameter values to the trained linear regression model to determine a predicted duration for the second deletion operation” (Li2 bottom of pg. 1 into top of pg. 2 “it is important to predict the future host state accurately, and make plan for migration of VMs based on the prediction. For example, if a host will be overloaded at next time unit, some VMs should be migrated from the host to keep the host from overloading, and if a host will be underloaded at next time unit, all VMs should be migrated from the host, so that the host can be turn off to save power” wherein VM consolidation is analogous to deleting a snapshot);
The references however do not explicitly teach confidence metrics and model availability. Li3 however teaches “determining the availability of the trained linear regression model based on the predicted duration and the second duration” (Li3 [0049] “Another field depicted in the example of FIG. 6 is a “Confidence Level %” field 152. In practice, such a field may be used to allow a user to specify a degree or measure of certainty (e.g., 60%, 70&, 75%, 90%, and so forth) ” availability is determined based on a confidence, where confidence would be determined based off the data being fed into the model)
It would have been obvious to one having ordinary skill in the art at the time that the invention was filed to combine the teachings of Li1, Li2, and JacksonII with that of Li3 since a combination of known methods would yield predictable results. As shown in Li3, confidence metrics are known in the art in order to determine how well a model performs and by extension, if it is available to use. Therefore by combining these know techniques, the system of Li1-3 would have more robust learning and better prediction.
Regarding claims 5 and 14, the Li1-3 and JacksonII references have been addressed above. Li3 further teaches “wherein determining the availability of the trained linear regression model comprises: determining a fitting degree for the trained linear regression model based on the predicted duration and the second duration” (Li3 [0049] “Another field depicted in the example of FIG. 6 is a “Confidence Level %” field 152. In practice, such a field may be used to allow a user to specify a degree or measure of certainty (e.g., 60%, 70&, 75%, 90%, and so forth) ” wherein the fitting can be based on any data that has been collected before); and
“if it is determined that the fitting degree is equal to or higher than a threshold degree, determining the trained linear regression model as an available prediction model” ([0049] “ a fitted model for which the measure of confidence meets or exceeds the specified confidence may be deemed usable”)
Regarding claims 6 and 13, the Li1-3 and JacksonII references have been addressed above. Li3 further teaches “further comprising: if it is determined that the fitting degree is less than the threshold degree, continuing training the linear regression model by using parameter values of the deleted snapshot and a duration of the corresponding deletion operation” (Li3 [0049] “ a current fitted model for which the measure of confidence is less than the specified confidence may be deemed unusable for determining whether or not to perform an action”)
Regarding claims 19 and 20, the Li1-3 and JacksonII references have been addressed above. While Li1-2 teach general computing systems, Li3 more specifically teaches “a computer program product tangibly stored on a non-volatile computer-readable medium and comprising machine-executable instructions, wherein the machine-executable instructions, when executed by a machine, cause the machine to perform steps of the method according to claim 1/7” (Li3 [0016] “s used herein, the term “medium” refers to one or more non-transitory, computer-readable physical media that together store the contents described as being stored thereon. Embodiments may include non-volatile secondary storage, read-only memory (ROM), and/or random-access memory (RAM). As used herein, the term “application” refers to one or more computing modules, programs, processes, workloads, threads and/or a set of computing instructions executed by a computing system.”)
It would have been obvious to one having ordinary skill in the art at the time that the invention was filed to combine the teachings of Li1 and Li2 with that of Li3 since a combination of known methods would yield predictable result, that it is, computer programs are known to run specific tasks.
Note that Claim 7 does not explicitly rely upon Li2 and subsequently claim 20 does not rely upon Li2. However, for brevity, the rejections are grouped here. Subsequently, claim 20 is formally rejected over Li1 and view of Li3.
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 KEVIN W FIGUEROA whose telephone number is (571)272-4623. The examiner can normally be reached Monday-Friday, 10AM-6PM EST.
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, MIRANDA HUANG can be reached at (571)270-7092. 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.
KEVIN W FIGUEROA
Primary Examiner
Art Unit 2124
/Kevin W Figueroa/Primary Examiner, Art Unit 2124