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 .
DETAILED ACTION
Claims 1-20 are presented for examination.
Claims 1, 5, 7, 8, 12, 14, 15, 18 and 20 were amended.
This is a Non-Final Action.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 12/22/2025 has been entered.
Response to Arguments
Applicant's arguments filed 12/22/2025 have been fully considered but they are not persuasive.
Examiner respectfully disagrees with the applicant, Specifically applicant makes the following arguments:
On pages 7-8 – applicant argues in regards to “Array Provider vs. Carter In-Memory Structures”. Specifically applicant argues that Carter’s in-memory data structures store actual intermediate query results, whereas the claimed “array provider data structures” store only arrays of record identifiers, enabling deferred materialization.
Examiner respectfully disagrees with the applicant. Specifically, with respect to claim 1:
The claims do not exclude storing data beyond identifiers.
Claim 1 recites “a given array provider data structure storing an array of responsive record identifiers…”. The claim does not recite that the 1. The structures stores only identifiers, 2. No additional metadata or values are stored or 3. The structure is prohibited from containing intermediate results. Under BRI, a data structure that stores identifiers and additional data satisfies “storing an array of responsive record identifiers.”
Carter’s shard-returned structures necessarily include identifiers.
Carter explicitly discloses shard machines returning in-memory data structures containing intermediate query results and table identifiers (Paragraph 81 and Fig 4B). An array of identifiers is inherently present in such structures.
Claim language does not require “lightweight” or “identifier-only” semantics. Applicant’s reliance on specification paragraphs is improperly importing limitations from the specification into the claims.
Therefore Carter’s shard-returning in-memory data structures reasonably read on the claimed “array provider data structures” under BRI. The distinction asserted by Applicant is semantic, not claim-limiting.
On pages 8-9 – applicant argues in regards to “Union Array Provider is Architecturally Distinct”. Specifically applicant argues that carter merely merges operation lists, not a “union array provider,” and that the claimed union provider is a composite reference structure that avoids duplication.
Examiner respectfully disagrees with the applicant. Specifically, with respect to claim 1:
The claims do not define structural requirements for a “union array provider”.
The “Union array provider” is not structurally constrained in the claims. There is no requirement for: no duplication, reference-only layering, no instantiation of intermediate structures or index-only composition.
Carter explicitly discloses merging shard-returned data into a unified structure.
Carter teaches “The lists of operations received from the shards are merged into a merged set of operations” (Fig 3: 312). A merged set of arrays is, under BRI, a union of arrays.
Applicant again relies on unclaimed specification features.
Applicant’s reliance on specification paragraphs discussing avoiding duplication is not recited in the claim and therefore is improperly importing limitations from the specification into the claims.
Therefore Carter’s merge step meets the claim as written. The alleged architecture distinction is not reflected in the claim language.
On pages 9-10 – applicant argues in regards to “Park is limited to Streaming Data”. Specifically applicant argues Park applies only to continuous event streams and not discrete query materialization.
Examiner respectfully disagrees with the applicant. Specifically, with respect to claim 1:
Park’s memory management is not limited to streaming semantics.
Park teaches, 1. Monitoring free memory, 2. Evicting data structures to disk, 3. During execution of query operators. These techniques are generic memory-management mechanism, not inherently tied to unbound streams.
The claims do not exclude streaming or continuous contexts.
Claim 1 recites: “monitoring… memory usage while receiving materialized data” This read on any scenario where data arrives incrementally, including: shard responses, partial materialization, staged query execution.
The 103 combination does not require identical problem domains.
Under KSR, Park is analogous art because it address the same problem: memory pressure during data processing.
Therefore park properly supplies the memory-monitoring and eviction limitation. Applicant’s attempt to limit Park to streaming contexts Is unsupported by the claim language.
Arguments On pages 10-11 – applicant argues in regards to “Lui Is Only About Joins” and on pages 11-12 – applicant argues in regards to “No Reference Teaches the Full Architecture” has been obviated due to current removal of Liu and incorporating new reference O’Krafka et al.
Furthermore, Applicant’s arguments rely on: importing unclaimed limitations from the specification, artificially narrowing claim terms, and improperly restricting analogous art. Therefore examiner respectfully disagrees and requests that applicant further amend the claims by extensive writing the argued points from specification into the claims.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3, 5-11, 13-17 and 19-20 rejected under 35 U.S.C. 103 as being unpatentable over Carter et al. (US 2022/0414100) in view of Park et al. (US 2010/0223305) and Min et al. (US 2010/0042624)
1. Carter teaches, A method comprising:
receiving, by a processor, a query from a client device (Paragraphs 33, 43 – teaches user interface used for input search queries);
distributing, by the processor, the query to a plurality of shards (Paragraph 50 & Fig 3: 302, 304 and 308– dividing a query and assigning the operations to shard machines);
receiving, by the processor, a plurality of array provider data structures from the plurality of shards, a given array provider data structure storing an array of responsive record identifiers identifying responsive identifiers from a corresponding shard (Fig 3:310 – teaches receiving, from each shard machine, a list of operations completed by the shard machine within the limits – this discloses shard-returned lists (i.e. arrays) of identifiers/results corresponding to each shard; and Paragraphs 59 & 90, Fig 4B: 454 – teaches a in-memory data structure storing a set of intermediate query results, wherein the query results contain tables, broker to shard mapping data and identifiers of the tables, wherein the table would be array provider data structure);
materializing, by the processor, the plurality of array provider data structures by generating a union array provider from the plurality of array provider data structures (Abstract, Fig 3: 312 – teaches the lists of operations received from the shards are merged into a merged set of operations – teaches materialization via merging shard result lists into a unified structure; and Paragraph 81– teaches materializing shard -returned data into in-memory structures);
returning, by the processor, a result set based on the merged data to the client device (Paragraph 110 and Fig 3: 310, 312 and 316 – once the results are returned from each shard, they are merged and once query processing is finished the results are provided to the user).
Carter does not explicitly teach,
monitoring, by the processor, memory usage while receiving materialized data from the plurality of shards;
persisting, by the processor, a portion of the materialized data on disk while materializing the plurality of array provider data structures the portion determined based on the memory usage;
merging, by the processor, the materialized data stored on the disk;
However, Park teaches,
monitoring, by the processor, memory usage while receiving materialized data from the plurality of shards; (Fig 3B:351, 353, 355 & 357 – determining free memory level… comparing free memory level with identified thresholds; and Paragraph 29 - teaches monitoring memory usage (free memory level) during receipt of streaming data, Park);
persisting, by the processor, a portion of responsive data on disk while materializing the plurality of array provider data structures the portion determined based on the memory usage; (Paragraph 24 – Pages… are automatically spilled from the memory to persistent storage (e.g. disk( based upon memory usage level – thus teaching spilling only a portion of in-memory materialized data based on memory pressure, Park);
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which said subject matter pertains to incorporate Park’s memory-monitoring and spill-to-disk techniques into Carter’s distributed query system in order to manage memory usage during result materialization because they are both in the same field of endeavor, namely database query processing systems and the combination would yields predictable improvements in scalability and robustness.
Min teaches, merging, by the processor, the materialized data stored on the disk (Paragraph 18 – teaches already-stored input can be spilled onto disks for merge phase).
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which said subject matter pertains to combine Carter, Park and Min because all the references are in the same field of endeavor concerned with execution of database queries and handling of intermediate data during query processing, by incorporating Min’s merge-phase techniques into the combination of Carter and park system in order to merge disk-resident intermediate data and complete query execution, yielding predictable and expected results.
2. The combination of Carter, Park and Min, The method of claim 1, wherein the given array provider data structure stores an array of responsive record identifiers (Paragraph 81, 89-90 – teaches that in-memory structures (tables) returned by shards store rows of query results (identifiers), Carter).
3. The combination of Carter, Park and Min, The method of claim 2, wherein the given array provider data structure supports at least one operation on the array of responsive record identifiers (Paragraph 85 – teaches operations applied to intermediate in-memory tables (arrays of results) further teaching performing operations on the arrays, Carter).
5. The combination of Carter, Park and Min, The method of claim 1, wherein persisting a portion of responsive data on disk while materializing the plurality of array provider data structures comprises:
monitoring, by the processor, memory usage while receiving the materialized data; (Paragraph 29 - teaches monitoring memory usage by determining free memory level and comparing it to one or more thresholds during execution as pages or tuples are received into memory. Under BRI, receiving pages or tuples into memory during query execution constitutes receiving materialized data, Park)
detecting, by the processor, that an amount of used memory is at or exceeds a threshold (paragraph 29 - teaches threshold based detection of memory usage, Park); and
copying, by the processor, the materialized data from a queue to a persistent storage device (Paragraph 24 – teaches copying data structure (pages/tuples) from memory (queues/stores) to disk, Park).
6. The combination of Carter, Park and Min, The method of claim 5, further comprising limiting a concurrency of incoming data from the plurality of shards while copying the responsive data (Paragraph 55 - teaches limiting concurrency (stopping operators) during eviction, which parallels limiting shard data concurrency while persisting, Park).
7. The combination of Carter, Park and Min The method of claim 5, wherein copying the responsive data comprises persisting the materialized data as on disk provider data structures (Paragraph 24 - teaches persisting spilled data in structured disk-based storage, consistent with “on disk provider data structures”, Park).
Claims 8 and 15 are similar to claim 1 hence rejected similarly
Claims 9 and 16 are similar to claim 2 hence rejected similarly.
Claims 10 and 16 are similar to claim 3 hence rejected similarly.
Claims 11 and 17 are similar to claim 4 hence rejected similarly.
Claims 13 and 19 are similar to claim 6 hence rejected similarly.
Claims 14 and 20 are similar to claim 7 hence rejected similarly.
Claims 1-3, 5-11, 13-17 and 19-20 rejected under 35 U.S.C. 103 as being unpatentable over Carter et al. (US 2022/0414100) in view of Park et al. (US 2010/0223305) and Min et al. (US 2010/0042624) further in view of Mishra et al. (US 2017/0031975)
All the limitations of claim 3 are taught above.
4. The combination of Carter, Park and Min do not explicitly teach, wherein the given array provider data structure comprises one of a dimension-backed array provider or a measure-backed array provider.
However, Mishra teaches,
wherein the given array provider data structure comprises one of a dimension-backed array provider (Paragraph 116, Page 10, First paragraph “In Q5…” – teaches dimension tables used in query processing, which correspond to a dimension-backed provider because they supply identifiers from dimension columns (key, attributes) for joins and filtering, Mishra) or a measure-backed array provider (Paragraph 20 – teaches analytic queries often contain complex expressions of calculations…; Paragraph 46 – teaches Virtual column units store results derived by evaluation an expression on at least one column … e.g. expression a/b produces a column vector, Mishra).
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which said subject matter pertains to modify Carter’s invention as taught by Mishra because both Carter and Mishra as analogous art in the realm of query execution and optimization and by allowing Carter to established framework for representing and materializing intermediate results. Doing so would have predictably improved Carter’s system by enabling more efficient analytic query processing across distributed shards.
Claims 12 and 18 are similar to claim 5 hence rejected similarly.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to AMRESH SINGH whose telephone number is (571)270-3560. The examiner can normally be reached Monday-Friday 8am-5pm.
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, Ann J. Lo can be reached at (571) 272-9767. 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.
/AMRESH SINGH/Primary Examiner, Art Unit 2159