CTFR 18/926,940 CTFR 82690 DETAILED ACTION Notice of Pre-AIA or AIA Status 07-03-aia AIA 15-10-aia 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 Amendment Applicant’s Remarks/Arguments filed on March 24 th , 2026, have been carefully considered. Claims 1, 12, and 17 have been amended. No claims have been added or canceled. Claims 1-20 are currently pending in the instant application. Claim Rejections - 35 USC § 103 07-06 AIA 15-10-15 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. 07-20-aia AIA 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. 07-23-aia AIA The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. 07-21-aia AIA Claim 1-2, 5-7, 10, 12-13, and 16-18 are rejected under 35 U.S.C. 103 as being unpatentable over Bigman et al. [US9,665,630] in view of Atkisson et al. [US2012/0124294]. Bigman teaches techniques for providing storage hints for use in connection with data movement optimization. Atkisson teaches apparatus, system, and method for destaging cached data . Regarding claims 1, 12, and 17, Bigman a method, comprising: receiving write requests at a first storage system [Bigman column 9, lines 49-52 “…when writing data of a received host I/O request to the physical device…”] ; destaging the write requests to a permanent storage of the first storage system [Bigman column 7, lines 33-35 “…mark the cache slot including the write operation data as write pending (WP), and then later destage the WP data from cache to one of the devices 16a-16n…” and collecting one or more destage statistics that are associated with the write requests [Bigman column 13, lines 38-39 “…a large amount of historical activity data may be analyzed…”]; Bigman fails to explicitly teach the one or more destage statistics identifying an outcome of a processing of the write requests that is performed at the first storage system, the processing of the write requests being performed over the course of destaging the write requests at the first storage system. However, Atkisson does teach the one or more destage statistics identifying an outcome of a processing of the write requests that is performed at the first storage system [Atkisson paragraph 0248, most lines “…the monitor module 602 determines, monitors, and/or samples various rates or other parameters for the cache 102 as feedback, allowing the direct cache module 116a to enforce a target cache write rate, a target user read rate, or the like during destaging using the rate enforcement module 606. The monitor module 602, in certain embodiments, samples a destage rate for the cache 102, a total cache write rate for the cache 102, a dirtied data rate for the cache 102, and/or other rates for the cache 102, from which to determine a target cache write rate for the cache 102. In another embodiment, to determine and enforce a target user read rate, the monitor module 602 further samples a total user read rate and a total backing store read rate for the cache 102…” and paragraph 0269, middle lines “…The target module 604 may base the selected destage read ratio on a corresponding destage write ratio, bandwidth limitations of the backing store 118 and/or the cache 102, one or more rates that the monitor module 602 samples, and/or other destaging characteristics…”], the processing of the write requests being performed over the course of destaging the write requests at the first storage system [Atkisson paragraph 0259, most lines “…where servicing user write operations has a greater priority than destaging, the target module 604 may dynamically adjust the destage write ratio over time to ensure that the target cache write rate satisfies a minimum write rate threshold as the dirtied data rate increases during the data flush operation. As a data flush operation progresses, the amount of dirty data remaining in the cache 102 decreases, so the amount of write operations that increase dirty data in the cache 102 increase, because the write operations are less likely to invalidate dirty data and are more likely to invalidate clean data. In certain embodiments, the target cache write rate also decreases as the data flush operation progresses, in response to the increase in the dirtied data rate during the data flush operation. To at least partially counteract this decrease in the target cache write rate, the target module 604, in one embodiment, may dynamically increase the destage write ratio over time to provide a greater target cache write rate at the expense of destaging. In this embodiment, the flush operation window may be open-ended so long as the target cache write rate remains at or above a minimum write rate threshold, or the like. In one embodiment, the minimum write rate threshold may be adjustable and/or user selectable...”(Where the examiner has determined the flush window reads on “over the course of destaging the write requests”.)]. Bigman and Atkisson are analogous arts in that they both deal with improving cache utilization. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Bigman’s cache memory destaging with Atkisson’s teachings of using destage statistics over operation time windows for the benefit of allowing the cache write rate to exceed the destage rate which increases the usefulness of the cache during destaging as the cache may continue to satisfy write requests [Atkisson paragraph 0260, last lines “…Allowing the target cache write rate to exceed the destage rate, even during a flush operation, in certain embodiments, increases the usefulness of the cache 102 during destaging as the cache 102 may continue to satisfy write requests…”]. generating a hint object corresponding to the write requests, the hint object being generated based at least in part on the destage statistics [Bigman column 10, lines 58-66 “…the optimizer 138 may use the hints provided by the hint generation component 133 to identify data portion candidates for data movement optimization processing (e.g., for promotion and/or demotion). Such hints may provide information identifying data portion candidates for data movement optimization processing based on other aspects of analyzed historical data…”]; transmitting the hint object to a second storage system [Bigman column 12, lines 37-42 “…may provide for hint generation for use in connection with performing data storage movement optimizations for VP device data portions to relocate the most active data to the highest available performance storage tier and/or relocating the least active data to the lowest or lower performance storage tier(s)…”]; and transmitting at least some of the write requests to the second storage system for remote replication [Bigman column 10, lines 44-49 “…The data portions may also be automatically relocated or moved to a different storage tier as the work load and observed performance characteristics for the data portions change over time…” and claim 1, middle lines “…with performing data storage movement optimizations to move selected ones of said plurality of data portions between different storage tiers…”]. Regarding claims 2 and 13, as per claim 1, Bigman teaches the hint object includes an indication of a relocation probability for the write requests [Bigman column 11, lines 3-6 “…one or more hints may be generated to identify data portions having large variations in their activity level over time and identify an activity level characterizing various high and low points of activity for the data portions…”(The examiner has determined activity level over time to read on the math behind the term probability.)]. Regarding claims 5 and 16, as per claim 1, Bigman teaches the hint object includes an indication of whether the write requests are part of random write pattern or a sequential write pattern [Bigman column 14, lines 17-46 “…hint generation may be application total I/O wait time…The multi-block read access may be also referred to as a sequential read access of multiple data blocks having consecutive logical addresses or locations in terms of database accesses. For example, accessing for read multiple data blocks or objects sequentially located in a database table. A single block I/O is a single read of a single block of data any may also be known as a random read I/O operation. As described in following paragraphs, the total I/O wait time may be used as associated with each database object for some calculations. In connection with other calculations, an embodiment may use the more detailed breakdown of one or more different types of I/O wait times based on the different types of read accesses (e.g., sequential and random) as noted above…”]. Regarding claim 6, as per claim 1, Bigman teaches destaging the transmitted write requests at the second storage system based on the hint object [Bigman column 12, lines 37-42 “…may provide for hint generation for use in connection with performing data storage movement optimizations for VP device data portions to relocate the most active data to the highest available performance storage tier and/or relocating the least active data to the lowest or lower performance storage tier(s)…”]. Regarding claims 7 and 18, as per claim 1, Bigman teaches destaging the transmitted write requests at the second storage system includes identifying a relocation probability based on the hint object [Bigman column 11, lines 3-6 “…one or more hints may be generated to identify data portions having large variations in their activity level over time and identify an activity level characterizing various high and low points of activity for the data portions…”(The examiner has determined activity level over time to read on the math behind the term probability.)] and selecting, based on the relocation probability, one of a relocation-write and an in-place write as a method for destaging the transmitted write requests at the second storage system [Bigman column 10, lines 43-49 “…Data portions may be automatically placed in a storage tier where the optimizer has determined the storage tier is best to service that data in order to improve data storage system performance. The data portions may also be automatically relocated or moved to a different storage tier as the work load and observed performance characteristics for the data portions change over time…”(The examiner has determined that the citation of placing in the storage tier reads on in-place write and automatically relocated reads on relocation-write.)]. Regarding claim 10, as per claim 1, destaging the transmitted write requests at the second storage system includes identifying, based on the hint object, when the transmitted write requests are associated with a random write pattern or a sequential write pattern [Bigman column 14, lines 17-46 “…hint generation may be application total I/O wait time…The multi-block read access may be also referred to as a sequential read access of multiple data blocks having consecutive logical addresses or locations in terms of database accesses. For example, accessing for read multiple data blocks or objects sequentially located in a database table. A single block I/O is a single read of a single block of data any may also be known as a random read I/O operation. As described in following paragraphs, the total I/O wait time may be used as associated with each database object for some calculations. In connection with other calculations, an embodiment may use the more detailed breakdown of one or more different types of I/O wait times based on the different types of read accesses (e.g., sequential and random) as noted above…”] and selecting one of a relocation-write and an in-place write as a method for destaging the write requests at the second storage system, the selection being made based on whether the transmitted write requests are associated with a random write pattern or a sequential write pattern [Bigman column 10, lines 43-49 “…Data portions may be automatically placed in a storage tier where the optimizer has determined the storage tier is best to service that data in order to improve data storage system performance. The data portions may also be automatically relocated or moved to a different storage tier as the work load and observed performance characteristics for the data portions change over time…”(The examiner has determined that the citation of placing in the storage tier reads on in-place write and automatically relocated reads on relocation-write.)] . 07-21-aia AIA Claim s 3-4, 8-9, 11, 14-15, 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Bigman et al. [US9,665,630] in view of Atkisson et al. [US2012/0124294] further in view of Aizman [US2016/0011816]. Bigman teaches techniques for providing storage hints for use in connection with data movement optimization. Atkisson teaches apparatus, system, and method for destaging cached data. Aizman teaches method to optimize inline I/O processing in tiered distributed storage systems . Regarding claims 3 and 14s, as per claim 1, Both Bigman and Atkisson fail to explicitly teach the hint object includes an indication of an expected compression rate for the write requests. However, Aizman does teach the hint object includes an indication of an expected compression rate for the write requests [Aizman paragraph 0199, all lines “…the resulting pipeline-modifiers include, as the name implies, parameters that define or hint on how to execute specific I/O pipeline stages, including check summing, inline compression, inline encryption, inline deduplication, data distribution (dispersion), read caching and writeback caching…Similarly, for inline compression the formula must include the tradeoff between CPU and I/O subsystem utilizations, and whether this tradeoff is warranted by the achieved compression ratio…”]. Bigman, Atkisson, and Aizman are analogous because they are both directed to improving data placement in storage. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Bigman and Atkisson with Aizman’s pipeline modifier hints for the benefit of allowing distributed storage to avoid maintaining extra states and to concentrate on carrying out the requested processing in the most efficient fashion [Aizman paragraph 0085, last lines “…This allows tiered distributed storage system to avoid maintaining extra states and to concentrate on carrying out the requested processing in the most efficient fashion…”]. Regarding claim 4 and 15, as per claim 1, Aizman teaches the hint object includes an indication of a probability of deduplication for the write requests [Aizman paragraph 0199, all lines “…the resulting pipeline-modifiers include, as the name implies, parameters that define or hint on how to execute specific I/O pipeline stages, including check summing, inline compression, inline encryption, inline deduplication, data distribution (dispersion), read caching and writeback caching. One of the examples above reflects a rather straightforward tradeoff for the inline deduplication, as far as CPU utilization (to compute cryptographically secure fingerprints for the deduplicated data, for instance) on one hand, size of the dedup index on another, and available storage capacity, on the third hand…”]. Regarding claims 8 and 19, as per claim 1, Aizman teaches destaging the transmitted write requests at the second storage system includes identifying , based on the hint object, an expected compression rate for the transmitted write requests, and detecting whether to use data compression when destaging the transmitted write requests at the second storage system, the detecting being performed based on the expected compression rate for the write requests [Aizman paragraph 0199, all lines “…the resulting pipeline-modifiers include, as the name implies, parameters that define or hint on how to execute specific I/O pipeline stages, including check summing, inline compression, inline encryption, inline deduplication, data distribution (dispersion), read caching and writeback caching…Similarly, for inline compression the formula must include the tradeoff between CPU and I/O subsystem utilizations, and whether this tradeoff is warranted by the achieved compression ratio…”]. Regarding claim 9, as per claim 1, Aizman teach destaging the transmitted write requests at the second storage system includes identifying, based on the hint object, a probability of deduplication for the transmitted write requests and detecting whether to use a deduplication path or a non-deduplication path for destaging the transmitted write requests at the second storage system, the detecting being performed based on the probability of deduplication for the write requests [Aizman paragraph 0199, all lines “…the resulting pipeline-modifiers include, as the name implies, parameters that define or hint on how to execute specific I/O pipeline stages, including check summing, inline compression, inline encryption, inline deduplication, data distribution (dispersion), read caching and writeback caching. One of the examples above reflects a rather straightforward tradeoff for the inline deduplication, as far as CPU utilization (to compute cryptographically secure fingerprints for the deduplicated data, for instance) on one hand, size of the dedup index on another, and available storage capacity, on the third hand…”]. Regarding claims 11 and 20, as per claim 1, Both Bigman and Aizman fail to explicitly teach destaging the transmitted write requests at the second storage system based on the hint object includes using a machine-learning model to generate another hint object based on the hint object, However, the examiner takes official notice (see MPEP 2144.03) that it is well known in the art that a machine-learning model can be a drop-in replacement for any previous used logic for computation or generative task such as generating hint objects. Bigman teaches destaging the transmitted write requests based on the other hint object [Bigman column 11, lines 3-6 “… one or more hints may be generated to identify data portions having large variations in their activity level over time and identify an activity level characterizing various high and low points of activity for the data portions…”(The examiner has determined the “or more” reads on another hint object.)]. Response to Arguments Applicant’s arguments with respect to claims 1, 12, and 17 have been considered but are moot in view of new grounds of rejection. Conclusion 07-40 AIA Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL . See MPEP § 706.07(a). 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 ERIC CARDWELL whose telephone number is (571)270-1379. The examiner can normally be reached on Monday - Friday 10-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, Reginald Bragdon can be reached on (571) 272-4204. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /ERIC CARDWELL/Primary Examiner, Art Unit 2139 Application/Control Number: 18/926,940 Page 2 Art Unit: 2139 Application/Control Number: 18/926,940 Page 3 Art Unit: 2139 Application/Control Number: 18/926,940 Page 4 Art Unit: 2139 Application/Control Number: 18/926,940 Page 5 Art Unit: 2139 Application/Control Number: 18/926,940 Page 6 Art Unit: 2139 Application/Control Number: 18/926,940 Page 7 Art Unit: 2139 Application/Control Number: 18/926,940 Page 8 Art Unit: 2139 Application/Control Number: 18/926,940 Page 9 Art Unit: 2139 Application/Control Number: 18/926,940 Page 10 Art Unit: 2139 Application/Control Number: 18/926,940 Page 11 Art Unit: 2139 Application/Control Number: 18/926,940 Page 12 Art Unit: 2139 Application/Control Number: 18/926,940 Page 13 Art Unit: 2139