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 .
Remarks
The amendments were received on 8/10/26. Claims 1-27 are pending in the application. Applicants' arguments have been carefully and respectfully considered.
Claim(s) 1, 5-7, 9, 10, 14-16, 18, 19, 23-25, and 27 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor et al. (US 8,788,628), and further in view of Baird (US 7,257,689).
Claim(s) 2, 3, 11, 12, 20, and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor in view of Baird, and further in view of Birdwell et al. (US 6,741,983).
Claim(s) 4, 8, 13, 17, 22, and 26 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor in view of Baird, and further in view of Mathews et al. (US 2021/0342298).
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.
Claim(s) 1, 5-7, 9, 10, 14-16, 18, 19, 23-25, and 27 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor et al. (US 8,788,628), and further in view of Baird (US 7,257,689).
With respect to claim 1, Taylor teaches a method comprising:
receiving, at a replication receiver, a replication transaction of data blocks of a snapshot of a logical entity in accordance with a start replication command of a replication protocol initiated by a client (Taylor, Col. 8 Li. 4-17, receiving a request from a client to store a 10 GB file … sends out metadata snapshots that indicate the existence and location of the data blocks & Col. 8 Li. 14-16, The cloud controller then uploads the file data to the cloud storage system over a time interval (e.g., roughly ten minutes));
writing, by the replication receiver, the data blocks to objects of an object store (Taylor, Col. 8 Li. 14-16, The cloud controller then uploads the file data to the cloud storage system over a time interval (e.g., roughly ten minutes)), wherein modifications to the objects include copying unchanged information to the object store (Taylor, Col. 7 Li. 16-19, the filesystem might read out the original 4 KB block, modify the block to reflect the updates, and then write the modified file back to the same block.);
accumulating, as the data blocks are received at the replication receiver, metadata locating the blocks to transitory storage distinct from the object store at the replication receiver (Taylor, Col. 8 Li. 10-11, the cloud controller can …generate a set of corresponding metadata that indicates the respective disk addresses and CVAs for the file's data blocks & Col. 8 Li. 42-49, metadata snapshots may indicate files that are in the process of being uploaded, and include a field that indicates whether a given data block has been successfully stored in the cloud storage system. The cloud controller updates (and propagates) this metadata as it receives acknowledgments of receipt from the cloud storage system, thereby indicating that some of the data being uploaded is now already available in the cloud storage system.)
wherein the accumulated metadata is received throughout the replication transaction (Taylor, Col. 8 Li. 10-13, the cloud controller can already allocate a set of corresponding disk blocks and cloud files, and generate a set of corresponding metadata that indicates the respective disk addresses and CV As for the file's data blocks), and wherein the index data structure is constructed by reading the accumulated metadata in its entirety from the transitory storage to construct the index data structure as a complete object written to the object store to avoid read-modify-write to the object store for storage of the index data structure (Taylor, Col. 11 Li. 57-59, a cloud controller generates an additional set of filesystem overlay metadata that allows existing file data and metadata to be virtually linked together into a cloud file view. & Col. 12 Li. 11-21, For instance, the overlay metadata may facilitate accessing the virtual cloud file via a special filesystem directory that presents a view of the disparate data blocks as a single, consolidated cloud file that can be read and transferred. In many scenarios the cloud controller primarily maintains overlay metadata for data that has not yet been written out to a cloud file; in some embodiments, once the data has been uploaded to the cloud storage system, the cloud controller clears the overlay metadata and begins generating new overlay metadata to track changes destined for a subsequent set of cloud files.).
Taylor doesn't expressly discuss deferring construction of an index data structure until the replication transaction completes according to a complete replication command received at the replication receiver prior to writing the index data structure to the object store.
Baird teaches deferring construction of an index data structure until the replication transaction completes according to a complete replication command received at the replication receiver prior to writing the index data structure to the object store (Baird, Col. 19 Li. 46-55, While a data producer 101 may generate bursts of updates, update manager 149 may distribute the corresponding I/O operations over a desired period using an appropriate batch size and/or merge delay. Thus, a set of physical I/O operations that requires N minutes for completion at underlying hardware devices, performed in response to an M-minute burst of update requests from data producer 101, (where M is less than N), may be spread out uniformly over N or more minutes by update manager 149.).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Taylor to have included the teachings of Baird because it allows update performance to be smoothed over time, reducing update performance variability (i.e. , reducing the size and likelihood of spikes and troughs in update throughput.) That is, asynchronous or deferred merging may support load leveling of underlying resources such as disk arrays, I/O channels, network paths to I/O devices (Baird, Col. 19 Li. 40-46).
With respect to claim 5, Taylor in view of Baird teaches the method of claim 1, wherein the logical entity is organized according to extents (Taylor, Col. 10 Li. 40-42, The modified data is then packaged into units that match the granularity of cloud files (e.g., into 32 MB segments)) and wherein the extents are organized in the objects according to a preferred size of the objects for the object store (Taylor, Col. 10 Li. 12-18, Variable-sized cloud files allow some level of customization to match network and application characteristics, but also involve additional complexity to manage the different sizes. Hence, in some embodiments the system reduces management overhead by using a single fixed cloud file size (e.g., 32 MB) throughout the cloud controllers and cloud storage system.).
With respect to claim 6, Taylor in view of Baird teaches the method of claim 1, wherein the data blocks are included in a first object of the object store different from a second object of the object store having the index data structure (Taylor, Col. 10 Li. 44-48, Note that cloud files are also written to in an incremental, transactional fashion, to preserve data consistency. More specifically, new and modified file data is written to a separate cloud file, as in a transactional filesystem, to ensure that the consistency of previous file versions is preserved.).
With respect to claim 7, Taylor in view of Baird teaches the method of claim 1, further comprising organizing the index data structure in a repository according to snapshot (Taylor, Col. 10 Li. 48-51, an initial set of data for a given file is written to one cloud file, and later additions or modifications to the file detected by a subsequent snapshot are written to a new, different cloud file.).
With respect to claim 9, Taylor in view of Baird teaches the method of claim 1, wherein accumulating, as the data blocks are received at the replication receiver, the metadata locating the blocks to transitory storage further comprises recording the metadata in a database (Taylor, Col. 8 Li. 10-11, the cloud controller can …generate a set of corresponding metadata that indicates the respective disk addresses and CVAs for the file's data blocks).
With respect to claims 10, 14-16, and 18, the limitations are essentially the same as claims 1, 5-7, and 9, in the form of a non-transitory computer readable medium, and are rejected for the same reasons.
With respect to claims 19, 23-25, and 27, the limitations are essentially the same as claims 1, 5-7, and 9, in the form of an apparatus comprising a network interface of a node having a processor executing a replication receiver (Taylor, Col. 22 Li. 32-34, servers 930-950 can generally include any node on a network including a mechanism for servicing requests from a client for computational and/or data storage resources), and are rejected for the same reasons.
Claim(s) 2, 3, 11, 12, 20, and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor in view of Baird, and further in view of Birdwell et al. (US 6,741,983).
With respect to claim 2, Taylor in view of Baird teaches the method of claim 1, as discussed above. Taylor in view of Baird doesn’t expressly discuss wherein the index data structure is constructed such that a maximum index structure depth is maintained to locate any of the data blocks.
Birdwell teaches wherein the index data structure is constructed such that a maximum index structure depth is maintained to locate any of the data blocks (Birdwell, Col. 27 Li. 35-40, The tree has a maximum depth of 11 (levels 0 through 10) with most branches having a length of 7 to 9. Similar results have been obtained for 400,000 stored DNA profiles where the tree's maximum depth was 13.).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Taylor in view of Baird to have included the teachings of Birdwell because this creates a tree that is balanced and provides the average and worse case search times (Birdwell, Col. 27 Li. 35-45).
With respect to claim 3, Taylor in view of Baird teaches the method of claim 2, wherein the maximum index structure depth is maintained by controlling a branch factor for internal nodes of the index data structure (Birdwell, Col. 27 Li. 35-40, The tree has a maximum depth of 11 (levels 0 through 10) with most branches having a length of 7 to 9. Similar results have been obtained for 400,000 stored DNA profiles where the tree's maximum depth was 13.).
With respect to claims 11 and 12, the limitations are essentially the same as claims 2 and 3, in the form of a non-transitory computer readable medium, and are rejected for the same reasons.
With respect to claims 20 and 21, the limitations are essentially the same as claims 2 and 3, in the form of an apparatus, and are rejected for the same reasons.
Claim(s) 4, 8, 13, 17, 22, and 26 are rejected under 35 U.S.C. 103 as being unpatentable over Taylor in view of Baird, and further in view of Mathews et al. (US 2021/0342298).
With respect to claim 4, Taylor in view of Baird teaches the method of claim 1, as discussed above.
Mathews teaches wherein internal nodes of the index data structure include keys as a list of offsets in a logical address space of the snapshot, wherein each key is associated with a corresponding reference to a child node (Mathews, pa 0052, The tree structure comprises a plurality of logical page nodes representing the plurality of storage objects. The plurality of logical page nodes specify respective logical page addresses in a logical address space of the storage system, arrays of pointers to one or more other logical page addresses in the logical address space, snapshot group identifiers for snapshot groups in the storage system, and logical extent offsets in the logical address space.).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Taylor in view of Baird with the teachings of Mathews because it ensures data is not stored in a duplicative manner (Mathews, pa 0002).
With respect to claim 8, Taylor in view of Baird teaches the method of claim 1, as discussed above. Taylor in view of Baird doesn’t expressly discuss wherein a first leaf node of the index data structure identifies a first object of the object store having the data blocks of the snapshot, and wherein a second leaf node of another index data structure identifies a second object of the object store having data blocks changed from the snapshot.
Mathews teaches wherein a first leaf node of the index data structure identifies a first object of the object store having the data blocks of the snapshot, and wherein a second leaf node of another index data structure identifies a second object of the object store having data blocks changed from the snapshot (Mathews, pa 0046, The tree structure is assumed to comprise a plurality of logical page nodes representing the plurality of storage objects.).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Taylor in view of Baird with the teachings of Mathews because it ensures data is not stored in a duplicative manner (Mathews, pa 0002).
With respect to claims 13 and 17, the limitations are essentially the same as claims 4 and 8, in the form of a non-transitory computer readable medium, and are rejected for the same reasons.
With respect to claims 22 and 26, the limitations are essentially the same as claims 4 and 8, in the form of an apparatus, and are rejected for the same reasons.
Response to Arguments
35 U.S.C. 103 rejections
Applicant seems to argue a newly amended limitation. Applicant’s amendment has rendered the previous rejection moot. Upon further consideration of the amendment, a new grounds of rejection is made in view of Baird (US 7,257,689).
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 BRITTANY N ALLEN whose telephone number is (571)270-3566. The examiner can normally be reached M-F 9 am - 5:00 pm 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, Sherief Badawi can be reached on 571-272-9782. 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.
/BRITTANY N ALLEN/ Primary Examiner, Art Unit 2169