Prosecution Insights
Last updated: May 29, 2026
Application No. 18/942,226

DATA MANAGEMENT SYSTEM FOR TRANSFERRING FILES BETWEEN DATABASES

Non-Final OA §103
Filed
Nov 08, 2024
Priority
Jul 22, 2022 — IN 202241042028 +1 more
Examiner
LEROUX, ETIENNE PIERRE
Art Unit
2161
Tech Center
2100 — Computer Architecture & Software
Assignee
Druva Inc.
OA Round
2 (Non-Final)
88%
Grant Probability
Favorable
2-3
OA Rounds
12m
Est. Remaining
94%
With Interview

Examiner Intelligence

Grants 88% — above average
88%
Career Allowance Rate
979 granted / 1107 resolved
+33.4% vs TC avg
Moderate +5% lift
Without
With
+5.4%
Interview Lift
resolved cases with interview
Typical timeline
2y 6m
Avg Prosecution
14 currently pending
Career history
1121
Total Applications
across all art units

Statute-Specific Performance

§101
3.2%
-36.8% vs TC avg
§103
83.1%
+43.1% vs TC avg
§102
7.2%
-32.8% vs TC avg
§112
1.8%
-38.2% vs TC avg
Black line = Tech Center average estimate • Based on career data from 1107 resolved cases

Office Action

§103
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 . Claim Status Claims 1-19 and 21 are pending. 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 is/are rejected under 35 U.S.C. 103 as being unpatentable over Amano (US 2019/0369588) in view of Gupta (US 12,001,685) in view of Yue (US 2021/0011685) in view of Venkivolu (US 10,630,760) Examiner Note: Hereafter, above references will be entered as combination A. Amano discloses: adding a key-value pair of the file to a file map, the key-value pair with a key corresponding to the file and a value comprising a set of write offsets; Amano [0064] Next, the coordinated file generation unit 212 generates the map file 210 such that the information program 219 can access the shared storage area 224 using the structure of the structure variable defined in the header file 209. Specifically, the coordinated file generation unit 212 outputs the shared storage area name 501, the size 502 of a file generated with the shared storage area name, the read offset 503, and the write offset 504 to the map file 210. The coordinated file generation unit 212 generates the map file 210 for accessing the shared storage area 224 such that the variables set as “Read” can be stored and continuously the variables set as “Write” can be stored in order from the start address of the shared storage area 224. The coordinated file generation unit 212 calculates the size 502, the read offset 503, and the write offset 504 from the size of the structure defined in the header file 209. Next, the coordinated file generation unit 212 outputs the type 505, the variable name 506, and the variable offset 507 of the variable defined in the structure 401 for reading to the map file 210. Next, the coordinated file generation unit 212 outputs the type 508, the variable name 509, and the variable offset 510 of the variable defined in the structure 402 for writing to the map file 210. The coordinated file generation unit 212 calculates the variable offsets (507 and 510) in consideration of the definition order of the variable, the size of the variable, and the alignment of the structure of the information program 219 and outputs the calculated variable offsets. writing a plurality of data chunks of the file to the data storage using a plurality of concurrent writers; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Gupta discloses: Gupta col 3 lines 45-55, In some embodiments, the storage system reads the data chunks associated with a subsequent chunk file group in parallel as the storage system is writing the data chunks associated with a previous chunk file group to a selected storage device. For example, the storage system may read the data chunks associated with a second chunk file group in parallel as the storage system is writing the data chunks associated with the first chunk file group to a first selected storage device. In some embodiments, the storage system reads, in parallel, the data chunks associated with all of the chunk file groups and writes, in parallel, the data chunks to selected storage devices as corresponding chunk files. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Gupta for the purpose of performing an in-line erasure coding process using a write-ahead log, see title. removing, responsive to successfully writing a particular data chunk to the data storage, [[the]] a data offset corresponding to the particular data chunk from the set of write offsets of the file map; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Yue discloses: Yue [0032] In another embodiment, in a complex file F, the name of a simple file (S1, S2, etc) contains the global offset of the file. In one embodiment, the global offset is the only component in the file name. In another embodiment, the offset is part of the file name. When comparing the order of file names, the system uses the numerical value of the offset in the file name for the numerical comparison. For example, in FIG. 2, file S1 has the name “O1”, the global offset of the file. File S2 has the name “O2”, the global offset of the file, and so on and so forth. When the offset of a simple file S.sub.i (i is the i-th simple file) is changed either because of inserting or removing block of records, then the name and offset of files S.sub.j (j>i) will also be updated to reflect the changes. The offset is decreased by the same amount of data that is removed. The offset is increased by the same amount of data that is inserted. The control module M in FIG. 3 may also need to be updated. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Yue for the purpose of using the global offset as the file name. creating a checkpoint based on the data offset of the particular data chunk that has been completely written to the data storage. Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Venkivolu discloses: Venkivolu col 11 lines 20-30 44) Checkpoint file 236A may be created and updated during a file transfer process. During the file transfer, file transfer parameters (e.g., checkpoint count, file offset, etc.) may be stored and updated in the checkpoint file 236A. Checkpoint file 236A may be stored in persistent storage device 208A in at least one embodiment. In some embodiments, checkpoint file 236A may be temporarily stored in other memory (e.g., memory element 202A, cache, etc.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Venkivolu for the purpose of creating a checkpoint file. Claim(s) 2 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae (US 2021/0303189) in view of Xie (US 2023/0367482) in view of Weil (US 11,418,822) in view of Ghemawat (US 11,272,002). Combination A discloses elements of the claimed invention as noted but does not disclose generating a bounded number of read requests, each read request causing a data chunk identified by a data offset to be loaded into a buffer, wherein one or more data chunks are loaded into the buffer concurrently. However, Bae discloses: Bae [0048] The in-storage computing block 1210 may provide the streaming access command to the SSD 1230 in response to a request of the host device 1100. The in-storage computing block 1210 may process stream data transferred from the SSD 1230 in the in-storage computing manner and may transfer the processed data to the host device 1100. The DMA engine 1211 may read stream data of a chunk size loaded onto the buffer 1235 of the SSD 1230 and may transfer the read data to the kernel memory 1213. The chunk size defines a management unit of the stream data. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Bae for the purpose of providing a streaming access command in response to a request of the host device. Combination A discloses elements of the claimed invention as noted but does not disclose queuing loaded data chunks for generating write requests to release the loaded data chunks. However, Xie discloses: Xie [0110] Some embodiments of the present invention are directed to a simplified process as follows: (i) if the desired tier is the same as the default tier assigned to the data chunk based on existing logical configuration mapping, allocate a chunk from the default tier, if not already allocated, and write the data to the default tier. If the desired tier is different than the default tier, allocate a chunk from the desired tier, update logical configuration mapping to point the logical chunk to the newly-allocated physical chunk and write data to the desired tier. At the same time when writing the data, release the physical chunk from the default tier if it is already allocated. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Xie for the purpose of writing data to storage in a multi-tier storage system, see [0001] Combination A discloses elements of the claimed invention as noted but does not disclose wherein one or more write requests are generated responsive to one or more data chunks associated with a consecutive order of data offsets are successfully loaded to the buffer. However, Weil discloses: Weil claim 20. The system of claim 15 wherein the media processing application is further configured to form content segments from the set of encoded content chunks by writing the set of encoded content chunks in the load buffer, parsing the load buffer to identify a marker in a chunk indicative of information related to an ending portion of a previous segment, and composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings Weil for the purpose of providing a content streaming system and methodology for facilitating the management of content streaming, see abstract. Combination A discloses elements of the claimed invention as noted but does not disclose generating an additional read request in response to a release of a loaded data chunk. However, Ghemawat discloses: Ghemawat col 13 lines 4-15, Client 110 may cache the chunk handle and replica locations using, for example, the file name and the chunk index as a key (act 1040). Client 110 may cache this information to facilitate further reads from the same chunk. This way, client 110 need not interact any further with master 130 for additional reads from the same chunk until the cached information expires. Cached information may be configured to expire after a predetermined (possibly user configurable) amount of time. composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Ghemawat for the purpose of facilitating distribution and redistribution of chunks of data among multiple servers, see abstract. Claim(s) 3 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view Green (US 9,817,582). Combination A discloses elements of the claimed invention as noted but does not disclose determining a bounded number of read tokens based on a desired level of read concurrency, and wherein a bounded number of read requests is generated based on the bounded number of read tokens. However, Green discloses: Green col 15 lines 5-12 (118) At block 620, in response to the offload read request, the token is provided. For example, referring to FIG. 3, the token provider 320 may provide the token to the data access components 315, which may provide the token to the data access components 310, which may provide the token to the requestor 210. composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Green for the purpose of providing an offload read and write provider, see title. Claim(s) 4 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Green in view of Bhat (US 12,596,596). Combination A discloses elements of the claimed invention as noted but does not disclose wherein each read request is associated with a plurality of parameters comprising a read buffer, a read-offset, and a size. However, Bhat discloses: Bhat col 6 lines 35-50, FIG. 6B depicts the flow of operations of the AFU processing a read request to an open file, in an embodiment. In step 622, the AFU 114 checks the ‘ready_to_read flag’. If as determined in step 622, the flag indicates that the AFU 114 has been set up for reads, then the AFU 114 awaits a read request in step 624. Upon receipt of the read request message specifying the file handle the file offset, the size of the read and the user space buffer, the AFU 114 checks, in step 626, the file table for a process id (PID) matching the requesting user process 108a. If there is a match, then in step 628, the AFU 114 converts the file offset to a block number and in step 630 adds one or more blocks starting at the computed block number to the user space buffer 110. In step 632, the AFU 114 sends a ‘complete’ message to the user process 108a indicating that the requested one or more blocks are available to the user process 108a. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Green to obtain above limitation based on the teachings of Bhat for the purpose of providing a method for accessing blocks of a file in a file system, see column 1 lines 15-16. Claim(s) 5 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat in view of Yu (US 20140016910). Combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat discloses elements of the claimed invention as noted but does not disclose receiving a read result corresponding to each read request, wherein the read result includes a read-offset; maintaining an array of read-offsets that are ready to be pushed to an output channel; maintaining a next read-offset that corresponds to a next read offset that should be pushed; and pushing the read result to the output channel, wherein the read result is pushed based on an order determined based on the array of read offsets. However, Yue discloses: Yue [0009] According to an aspect of one or more exemplary embodiments, the electronic apparatus may further include: a pusher which is configured to acquire the offset information of the video frame to be displayed based on the calculated time information and the stored index list, to read the video frame data based on the acquired offset information, and to push the read video frame data to a decoder; the decoder which is configured to maintain a buffer queue which includes the received video frame data, to decode the video frame data which is included in the buffer queue, and to push the decoded video frame data to a frame buffer controller; and the frame buffer controller which is configured to store the decoded video frame data, and to determine a time for displaying a current video frame based on time information which relates to the current video frame and the set frame rate. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat to obtain above limitation based on the teachings of Yu for the purpose of providing an electronic apparatus based on touch control and a method for using the apparatus, see abstract. Claim(s) 6 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat in view of Machinaga (US 2009/0310249). Combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat discloses elements of the claimed invention as noted but does not disclose wherein the reading stage further comprises: increasing, responsive to receiving a read result, a write-offset value by a size of the read result. However, Machinaga discloses: Machinaga [0094] Herein, the recording of the measurement signal sought the target position X at steps S2 and S3 in the write-once center offset measurement of FIG. 16 is the same as the recording process at steps S2 and S3 of the write/read offset measuring process shown in FIG. 14. Therefore, when the recording result of the write/read offset measuring process of FIG. 14 is utilized without change, the processes at steps S2 and S3 of FIG. 16 can be omitted. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat to obtain above limitation based on the teachings of Machinaga for the purpose of providing a write-once type storage apparatus, a control circuit, and a control method capable of improving the reproduction performance by appropriately enabling offset correction of the reading element to a center position of an effective recorded track,, see [0006] Claim(s) 7 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Varadarajan (US 7,895,164). Combination A discloses elements of the claimed invention as noted but does not disclose removing, responsive to a consecutive order of data offsets being an empty array, the file from the file map, the removal indicative of the file being backed up. However, Varadarajan discloses: Varadarajan col 7 lines 30-38 48) In some embodiments, this can be accomplished by removing fragmentation in the file map, and therefore within the dense data structure of the checkpoint file. Whenever a process releases a page back to the OS, there is no longer need to track that page. The freed page is removed from the file map, e.g., by zeroing the corresponding map entry. The position in the dense data structure associated with the cleared map entry is essentially wasted space, or fragmentation. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Varadarajan for the purpose of performing a checkpoint operation on a process which detects a change in the contents of a memory page associated with the process, see abstract. Claim(s) 8 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Dai (US 10,860,441). Combination A discloses elements of the claimed invention as noted but does not disclose maintaining a number of checkpoints, wherein the number of checkpoints is determined based on a bounded number based on a number of active read requests. However, Dai discloses: Dai col 6 lines 40-50 The module 238 for managing metadata, responsive to detecting the request for node switching, reads the latest created checkpoints and further obtains information about data that has been backed up and restored currently, and information about data that is to be backed up and restored, so as to inform the system about how much data has been backed up/restored and how much data is to be backed up/restored, namely, learn the approximate the position where the ongoing data backup and restore operation stops. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Dai for the purpose of providing data backup and restoration in a cluster system. Claim(s) 9 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Hongwei (US 6,904,526). Combination A discloses elements of the claimed invention as noted but does not disclose wherein the checkpoint is created by storing a copy of the file map, the copy of the file map including a file size and a value of commit offset, wherein the value of commit offset is calculated as a minimum value of a consecutive order of data offsets. However, Hongwei discloses: Hongwei col 9 lines 30-40, In the above methods, the method of estimating segment initial values and the range of offsets is based on the second segment initial value and the second offset, selecting the second segment initial value and adjacent segment initial values in front of or behind the second segment initial value as the estimated segment initial values, selecting the second offset and adjacent offsets in front of and behind the second offset as the range of offsets; and the number of selected estimated segment initial values cannot be greater than two, and the number of offsets within the range of offsets can be greater than one. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Hongwei for the purpose of providing a method of estimating segment initial values and the range of offsets is based on the second segment initial value and the second offset. Claim(s) 10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Amano (US 2019/0369588) in view of Gupta (US 12,001,685) in view of Yue (US 2021/0011685) in view of Venkivolu (US 10,630,760) Examiner Note: Hereafter, above references will be entered as combination A. Amano discloses: add a key-value pair of the file to a file map, the key-value pair with a key corresponding to the file and a value comprising a set of write offsets; Amano [0064] Next, the coordinated file generation unit 212 generates the map file 210 such that the information program 219 can access the shared storage area 224 using the structure of the structure variable defined in the header file 209. Specifically, the coordinated file generation unit 212 outputs the shared storage area name 501, the size 502 of a file generated with the shared storage area name, the read offset 503, and the write offset 504 to the map file 210. The coordinated file generation unit 212 generates the map file 210 for accessing the shared storage area 224 such that the variables set as “Read” can be stored and continuously the variables set as “Write” can be stored in order from the start address of the shared storage area 224. The coordinated file generation unit 212 calculates the size 502, the read offset 503, and the write offset 504 from the size of the structure defined in the header file 209. Next, the coordinated file generation unit 212 outputs the type 505, the variable name 506, and the variable offset 507 of the variable defined in the structure 401 for reading to the map file 210. Next, the coordinated file generation unit 212 outputs the type 508, the variable name 509, and the variable offset 510 of the variable defined in the structure 402 for writing to the map file 210. The coordinated file generation unit 212 calculates the variable offsets (507 and 510) in consideration of the definition order of the variable, the size of the variable, and the alignment of the structure of the information program 219 and outputs the calculated variable offsets. write a plurality of data chunks of the file to the data storage using a plurality of concurrent writers; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Gupta discloses: Gupta col 3 lines 45-55, In some embodiments, the storage system reads the data chunks associated with a subsequent chunk file group in parallel as the storage system is writing the data chunks associated with a previous chunk file group to a selected storage device. For example, the storage system may read the data chunks associated with a second chunk file group in parallel as the storage system is writing the data chunks associated with the first chunk file group to a first selected storage device. In some embodiments, the storage system reads, in parallel, the data chunks associated with all of the chunk file groups and writes, in parallel, the data chunks to selected storage devices as corresponding chunk files. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Gupta for the purpose of performing an in-line erasure coding process using a write-ahead log, see title. remove, responsive to successfully writing a particular data chunk to the data storage, [[the]] a data offset corresponding to the particular data chunk from the set of write offsets of the file map; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Yue discloses: Yue [0032] In another embodiment, in a complex file F, the name of a simple file (S1, S2, etc) contains the global offset of the file. In one embodiment, the global offset is the only component in the file name. In another embodiment, the offset is part of the file name. When comparing the order of file names, the system uses the numerical value of the offset in the file name for the numerical comparison. For example, in FIG. 2, file S1 has the name “O1”, the global offset of the file. File S2 has the name “O2”, the global offset of the file, and so on and so forth. When the offset of a simple file S.sub.i (i is the i-th simple file) is changed either because of inserting or removing block of records, then the name and offset of files S.sub.j (j>i) will also be updated to reflect the changes. The offset is decreased by the same amount of data that is removed. The offset is increased by the same amount of data that is inserted. The control module M in FIG. 3 may also need to be updated. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Yue for the purpose of using the global offset as the file name. create a checkpoint based on the data offset of the particular data chunk that has been completely written to the data storage. Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Venkivolu discloses: Venkivolu col 11 lines 20-30 44) Checkpoint file 236A may be created and updated during a file transfer process. During the file transfer, file transfer parameters (e.g., checkpoint count, file offset, etc.) may be stored and updated in the checkpoint file 236A. Checkpoint file 236A may be stored in persistent storage device 208A in at least one embodiment. In some embodiments, checkpoint file 236A may be temporarily stored in other memory (e.g., memory element 202A, cache, etc.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Venkivolu for the purpose of creating a checkpoint file. Claim(s) 11 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae (US 2021/0303189) in view of Xie (US 2023/0367482) in view of Weil (US 11,418,822) in view of Ghemawat (US 11,272,002). Combination A discloses elements of the claimed invention as noted but does not disclose generating a bounded number of read requests, each read request causing a data chunk identified by a data offset to be loaded into a buffer, wherein one or more data chunks are loaded into the buffer concurrently. However, Bae discloses: Bae [0048] The in-storage computing block 1210 may provide the streaming access command to the SSD 1230 in response to a request of the host device 1100. The in-storage computing block 1210 may process stream data transferred from the SSD 1230 in the in-storage computing manner and may transfer the processed data to the host device 1100. The DMA engine 1211 may read stream data of a chunk size loaded onto the buffer 1235 of the SSD 1230 and may transfer the read data to the kernel memory 1213. The chunk size defines a management unit of the stream data. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Bae for the purpose of providing a streaming access command in response to a request of the host device. Combination A discloses elements of the claimed invention as noted but does not disclose queuing loaded data chunks for generating write requests to release the loaded data chunks. However, Xie discloses: Xie [0110] Some embodiments of the present invention are directed to a simplified process as follows: (i) if the desired tier is the same as the default tier assigned to the data chunk based on existing logical configuration mapping, allocate a chunk from the default tier, if not already allocated, and write the data to the default tier. If the desired tier is different than the default tier, allocate a chunk from the desired tier, update logical configuration mapping to point the logical chunk to the newly-allocated physical chunk and write data to the desired tier. At the same time when writing the data, release the physical chunk from the default tier if it is already allocated. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Xie for the purpose of writing data to storage in a multi-tier storage system, see [0001] Combination A discloses elements of the claimed invention as noted but does not disclose wherein one or more write requests are generated responsive to one or more data chunks associated with a consecutive order of data offsets are successfully loaded to the buffer. However, Weil discloses: Weil claim 20. The system of claim 15 wherein the media processing application is further configured to form content segments from the set of encoded content chunks by writing the set of encoded content chunks in the load buffer, parsing the load buffer to identify a marker in a chunk indicative of information related to an ending portion of a previous segment, and composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings Weil for the purpose of providing a content streaming system and methodology for facilitating the management of content streaming, see abstract. Combination A discloses elements of the claimed invention as noted but does not disclose generating an additional read request in response to a release of a loaded data chunk. However, Ghemawat discloses: Ghemawat col 13 lines 4-15, Client 110 may cache the chunk handle and replica locations using, for example, the file name and the chunk index as a key (act 1040). Client 110 may cache this information to facilitate further reads from the same chunk. This way, client 110 need not interact any further with master 130 for additional reads from the same chunk until the cached information expires. Cached information may be configured to expire after a predetermined (possibly user configurable) amount of time. composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Ghemawat for the purpose of facilitating distribution and redistribution of chunks of data among multiple servers, see abstract. Claim(s) 12 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view Green (US 9,817,582). Combination A discloses elements of the claimed invention as noted but does not disclose determining a bounded number of read tokens based on a desired level of read concurrency, and wherein a bounded number of read requests is generated based on the bounded number of read tokens. However, Green discloses: Green col 15 lines 5-12 (118) At block 620, in response to the offload read request, the token is provided. For example, referring to FIG. 3, the token provider 320 may provide the token to the data access components 315, which may provide the token to the data access components 310, which may provide the token to the requestor 210. composing the content segments based on the identified marker. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Green for the purpose of providing an offload read and write provider, see title. Claim(s) 13 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Green in view of Bhat (US 12,596,596). Combination A discloses elements of the claimed invention as noted but does not disclose wherein each read request is associated with a plurality of parameters comprising a read buffer, a read-offset, and a size. However, Bhat discloses: Bhat col 6 lines 35-50, FIG. 6B depicts the flow of operations of the AFU processing a read request to an open file, in an embodiment. In step 622, the AFU 114 checks the ‘ready_to_read flag’. If as determined in step 622, the flag indicates that the AFU 114 has been set up for reads, then the AFU 114 awaits a read request in step 624. Upon receipt of the read request message specifying the file handle the file offset, the size of the read and the user space buffer, the AFU 114 checks, in step 626, the file table for a process id (PID) matching the requesting user process 108a. If there is a match, then in step 628, the AFU 114 converts the file offset to a block number and in step 630 adds one or more blocks starting at the computed block number to the user space buffer 110. In step 632, the AFU 114 sends a ‘complete’ message to the user process 108a indicating that the requested one or more blocks are available to the user process 108a. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Green to obtain above limitation based on the teachings of Bhat for the purpose of providing a method for accessing blocks of a file in a file system, see column 1 lines 15-16. Claim(s) 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat in view of Yu (US 20140016910). Combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat discloses elements of the claimed invention as noted but does not disclose receiving a read result corresponding to each read request, wherein the read result includes a read-offset; maintaining an array of read-offsets that are ready to be pushed to an output channel; maintaining a next read-offset that corresponds to a next read offset that should be pushed; and pushing the read result to the output channel, wherein the read result is pushed based on an order determined based on the array of read offsets. However, Yue discloses: Yue [0009] According to an aspect of one or more exemplary embodiments, the electronic apparatus may further include: a pusher which is configured to acquire the offset information of the video frame to be displayed based on the calculated time information and the stored index list, to read the video frame data based on the acquired offset information, and to push the read video frame data to a decoder; the decoder which is configured to maintain a buffer queue which includes the received video frame data, to decode the video frame data which is included in the buffer queue, and to push the decoded video frame data to a frame buffer controller; and the frame buffer controller which is configured to store the decoded video frame data, and to determine a time for displaying a current video frame based on time information which relates to the current video frame and the set frame rate. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat to obtain above limitation based on the teachings of Yu for the purpose of providing an electronic apparatus based on touch control and a method for using the apparatus, see abstract. Claim(s) 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat in view of Machinaga (US 2009/0310249). Combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat discloses elements of the claimed invention as noted but does not disclose wherein the reading stage further comprises: increasing, responsive to receiving a read result, a write-offset value by a size of the read result. However, Machinaga discloses: Machinaga [0094] Herein, the recording of the measurement signal sought the target position X at steps S2 and S3 in the write-once center offset measurement of FIG. 16 is the same as the recording process at steps S2 and S3 of the write/read offset measuring process shown in FIG. 14. Therefore, when the recording result of the write/read offset measuring process of FIG. 14 is utilized without change, the processes at steps S2 and S3 of FIG. 16 can be omitted. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A in view of Bae in view of Xie in view of Weil in view of Ghemawat to obtain above limitation based on the teachings of Machinaga for the purpose of providing a write-once type storage apparatus, a control circuit, and a control method capable of improving the reproduction performance by appropriately enabling offset correction of the reading element to a center position of an effective recorded track,, see [0006] Claim(s) 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Varadarajan (US 7,895,164). Combination A discloses elements of the claimed invention as noted but does not disclose removing, responsive to a consecutive order of data offsets being an empty array, the file from the file map, the removal indicative of the file being backed up. However, Varadarajan discloses: Varadarajan col 7 lines 30-38 48) In some embodiments, this can be accomplished by removing fragmentation in the file map, and therefore within the dense data structure of the checkpoint file. Whenever a process releases a page back to the OS, there is no longer need to track that page. The freed page is removed from the file map, e.g., by zeroing the corresponding map entry. The position in the dense data structure associated with the cleared map entry is essentially wasted space, or fragmentation. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Varadarajan for the purpose of performing a checkpoint operation on a process which detects a change in the contents of a memory page associated with the process, see abstract. Claim(s) 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Dai (US 10,860,441). Combination A discloses elements of the claimed invention as noted but does not disclose maintaining a number of checkpoints, wherein the number of checkpoints is determined based on a bounded number based on a number of active read requests. However, Dai discloses: Dai col 6 lines 40-50 The module 238 for managing metadata, responsive to detecting the request for node switching, reads the latest created checkpoints and further obtains information about data that has been backed up and restored currently, and information about data that is to be backed up and restored, so as to inform the system about how much data has been backed up/restored and how much data is to be backed up/restored, namely, learn the approximate the position where the ongoing data backup and restore operation stops. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Dai for the purpose of providing data backup and restoration in a cluster system. Claim(s) 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Hongwei (US 6,904,526). Combination A discloses elements of the claimed invention as noted but does not disclose wherein the checkpoint is created by storing a copy of the file map, the copy of the file map including a file size and a value of commit offset, wherein the value of commit offset is calculated as a minimum value of a consecutive order of data offsets. However, Hongwei discloses: Hongwei col 9 lines 30-40, In the above methods, the method of estimating segment initial values and the range of offsets is based on the second segment initial value and the second offset, selecting the second segment initial value and adjacent segment initial values in front of or behind the second segment initial value as the estimated segment initial values, selecting the second offset and adjacent offsets in front of and behind the second offset as the range of offsets; and the number of selected estimated segment initial values cannot be greater than two, and the number of offsets within the range of offsets can be greater than one. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Hongwei for the purpose of providing a method of estimating segment initial values and the range of offsets is based on the second segment initial value and the second offset. Claim(s) 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Amano (US 2019/0369588) in view of Gupta (US 12,001,685) in view of Yue (US 2021/0011685) in view of Venkivolu (US 10,630,760) Examiner Note: Hereafter, above references will be entered as combination A. Amano discloses: one or more processors; and memory configured to store code comprising instructions, the instructions when executed by the one or more processors, cause the one or more processors to: Amano [0035] add a key-value pair of the file to a file map, the key-value pair with a key corresponding to the file and a value comprising a set of write offsets; Amano [0064] Next, the coordinated file generation unit 212 generates the map file 210 such that the information program 219 can access the shared storage area 224 using the structure of the structure variable defined in the header file 209. Specifically, the coordinated file generation unit 212 outputs the shared storage area name 501, the size 502 of a file generated with the shared storage area name, the read offset 503, and the write offset 504 to the map file 210. The coordinated file generation unit 212 generates the map file 210 for accessing the shared storage area 224 such that the variables set as “Read” can be stored and continuously the variables set as “Write” can be stored in order from the start address of the shared storage area 224. The coordinated file generation unit 212 calculates the size 502, the read offset 503, and the write offset 504 from the size of the structure defined in the header file 209. Next, the coordinated file generation unit 212 outputs the type 505, the variable name 506, and the variable offset 507 of the variable defined in the structure 401 for reading to the map file 210. Next, the coordinated file generation unit 212 outputs the type 508, the variable name 509, and the variable offset 510 of the variable defined in the structure 402 for writing to the map file 210. The coordinated file generation unit 212 calculates the variable offsets (507 and 510) in consideration of the definition order of the variable, the size of the variable, and the alignment of the structure of the information program 219 and outputs the calculated variable offsets. write a plurality of data chunks of the file to the data storage using a plurality of concurrent writers; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Gupta discloses: Gupta col 3 lines 45-55, In some embodiments, the storage system reads the data chunks associated with a subsequent chunk file group in parallel as the storage system is writing the data chunks associated with a previous chunk file group to a selected storage device. For example, the storage system may read the data chunks associated with a second chunk file group in parallel as the storage system is writing the data chunks associated with the first chunk file group to a first selected storage device. In some embodiments, the storage system reads, in parallel, the data chunks associated with all of the chunk file groups and writes, in parallel, the data chunks to selected storage devices as corresponding chunk files. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Gupta for the purpose of performing an in-line erasure coding process using a write-ahead log, see title. remove, responsive to successfully writing a particular data chunk to the data storage, [[the]] a data offset corresponding to the particular data chunk from the set of write offsets of the file map; Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Yue discloses: Yue [0032] In another embodiment, in a complex file F, the name of a simple file (S1, S2, etc) contains the global offset of the file. In one embodiment, the global offset is the only component in the file name. In another embodiment, the offset is part of the file name. When comparing the order of file names, the system uses the numerical value of the offset in the file name for the numerical comparison. For example, in FIG. 2, file S1 has the name “O1”, the global offset of the file. File S2 has the name “O2”, the global offset of the file, and so on and so forth. When the offset of a simple file S.sub.i (i is the i-th simple file) is changed either because of inserting or removing block of records, then the name and offset of files S.sub.j (j>i) will also be updated to reflect the changes. The offset is decreased by the same amount of data that is removed. The offset is increased by the same amount of data that is inserted. The control module M in FIG. 3 may also need to be updated. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Yue for the purpose of using the global offset as the file name. create a checkpoint based on the data offset of the particular data chunk that has been completely written to the data storage. Amano discloses elements of the claimed invention as noted but does not disclose above limitation. However, Venkivolu discloses: Venkivolu col 11 lines 20-30 44) Checkpoint file 236A may be created and updated during a file transfer process. During the file transfer, file transfer parameters (e.g., checkpoint count, file offset, etc.) may be stored and updated in the checkpoint file 236A. Checkpoint file 236A may be stored in persistent storage device 208A in at least one embodiment. In some embodiments, checkpoint file 236A may be temporarily stored in other memory (e.g., memory element 202A, cache, etc.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Amano to obtain above limitation based on the teachings of Venkivolu for the purpose of creating a checkpoint file. Claim(s) 21 is/are rejected under 35 U.S.C. 103 as being unpatentable over combination A in view of Wilkinson (US 11,151,062) combination A discloses elements of the claimed invention as noted but does not disclose wherein each write offset comprises a data offset, the set of write offsets are maintained in a consecutive order. However, Wilkinson discloses: Wilkinson col 5 lines 53-67 At this point, node N 123 can send a message to another node in the cluster, node M 124, which shadows its non-volatile journal, containing the volume number, offset, and length of the write, together with the sequence number generated for the write. Node M 124 sends an acknowledgement back that it has recorded this write back to node N 123, and node N 123 applies the write to the local storage and replicates it to the remote system with the sequence number. Node N 123 determines the write is complete on the local storage, at which point it completes the write to the host. In other embodiments, the remainder of this process to free up the sequence number and clear the write from node M 124 journal can happen after the host has seen the write complete to ensure these processes don't affect write latency. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify combination A to obtain above limitation based on the teachings of Wilkinson for the purpose of sending a message to another node in the cluster, for example a node which shadows its non-volatile journal, containing the volume number, offset, and length of the write, together with the sequence number generated for the write. Response to Arguments Applicant’s arguments with respect to claim(s) 1-19 and 21 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Any inquiry concerning this communication or earlier communications from the examiner should be directed to ETIENNE PIERRE LEROUX whose telephone number is (571)272-4022. The examiner can normally be reached M-F 8:00 am to 4: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, Apu Mofiz can be reached at 571 272 4080. 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. /ETIENNE P LEROUX/Primary Examiner of Art Unit 2161
Read full office action

Prosecution Timeline

Nov 08, 2024
Application Filed
Sep 18, 2025
Non-Final Rejection mailed — §103
Mar 11, 2026
Response Filed
May 06, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12632474
Clustering Key Selection Based on Machine-Learned Key Selection Models for Data Processing Service
1y 4m to grant Granted May 19, 2026
Patent 12605143
ULTRASONIC DIAGNOSTIC APPARATUS AND PROGRAM
3y 5m to grant Granted Apr 21, 2026
Patent 12591806
OPTIMIZING CONTENT DISTRIBUTION USING A MODEL
3y 4m to grant Granted Mar 31, 2026
Patent 12591863
SYSTEM AND METHOD FOR USER COMMUNICATION IN A NETWORK
1y 6m to grant Granted Mar 31, 2026
Patent 12591598
Systems and Methods for Determining Entity Attribute Representations
1y 5m to grant Granted Mar 31, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

2-3
Expected OA Rounds
88%
Grant Probability
94%
With Interview (+5.4%)
2y 6m (~12m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 1107 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month