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
In amendments dated 11/12/25, Applicant amended claims 16, 30, and 312, canceled no claims, and added no new claims. Claims 16-23 and 26-31 are presented for examination.
Rejections under 35 U.S.C. 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 16-23 and 26-31 are rejected under 35 U.S.C. 101 because the claimed invention is directed to mental processes without significantly more. Independent claims 16 and 30-31 each recites generating a query execution plan, wherein the query execution plan comprises a plurality of query operators including a semi-join query operator; using the semi-join query operator to generate a signature, wherein generating the signature comprises capturing semantics of the semi-join query operator and capturing a state of a data table, wherein the state of the data table comprises a filtered set of records from the data table; and executing the semi-join query operator to generate an output comprising a list of record identifiers. Generating a query execution plan and generating a signature are recited broadly and are mental processes accomplishable in the human mind or on paper, and executing a semi-join query operator is also a mental process accomplishable in the human mind or on paper. Examiner notes a semi-join operator is a filtering operator in SQL and that filtering records involves judgement and can be done mentally. Each of these claims recites additional elements of receiving a query, which is an input step and insignificant extra-solution activity; and using the signature to store the output of the semi-join query operator, which is an output step and insignificant extra-solution activity. Examiner found discussion in specification pages 2-3 lines 26-8 (pre-grant publication paragraphs 0011-0013) of problems in the technology of caching query results of a semi-join operator, specifically how conventional semantic query caching is not efficient for evaluating join operations against cached entries and are not robust against data changes, and how storing the results may be costly in terms of memory and may impact network communication. Claim 30 recites a non-transitory storage medium and claim 31 also recites a non-transitory storage medium and one or more hardware processors, which are each generic components of a computer system. Examiner found additional discussion of improvements in specification pages 6-7 lines 30-9 (pre-grant publication paragraphs 0072-0073) as capturing semantics of the query and the data tables and pushing part of the semantic query model down to the data model to increase cache efficiency, and a caching mechanism distributed across nodes to reduce communication between nodes. The claims do not show these improvements in the technology and the claim steps do not recite a particular improvement in any technology or function of a computer per MPEP 2106.04(d) and do not recite any unconventional steps in the invention per MPEP 2106.05(a). Therefore, the recited mental processes are not integrated into a practical application. Taking the claims as a whole, the non-transitory storage medium and one or more hardware processors are each still generic components of a computer system. Receiving a query is recited broadly and amounts to receiving data across a network per specification paragraph 0092 and figure 1, which is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II. Storing output is also routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II. Also, as stated above, the claims do not recite improvements to any technology or to any function of a computer. Thus the claims do not include additional elements that are sufficient to amount to significantly more than the recited mental processes.
Claim 17 recites wherein executing the semi-join query operator to generate the output further comprises using the signature to retrieve a stored output of the semi-join query operator, and retrieving a stored output is retrieving data from a memory, which is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II. Claim 18 recites wherein generating the query execution plan further comprises rewriting the semi-join query operator to output record identifiers instead of the record itself, and rewriting a semi-join operator is rewriting data and a mental processes accomplishable in the human mind or on paper. Claim 19 recites wherein generating the query execution plan further comprises rewriting the semi-join query operator into a query operator that reuses stored output to generate its output, and rewriting a semi-join operator is rewriting data and a mental processes accomplishable in the human mind or on paper. Claim 20 recites wherein the output of the semi-join query operator is stored in a cache storage area, and storing output is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II.
Claim 21 recites dividing the cache storage area into one or more data table storage areas, data partition storage areas and data segment storage areas to preserve consistency of the record identifiers, and diving a storage area into more storage areas is a mental processes accomplishable in the human mind or on paper. Claim 22 recites distributing the cache storage area across the data table partition storage areas, and distributing a storage area is a mental processes accomplishable in the human mind or on paper. Claim 23 recites wherein the data table storage areas are identified by a data table identifier, the data partition storage areas by a data table partition identifier and the data segment storage areas by a data table segment identifier, and identifying data by an identifier is evaluating the data and a mental process; and the method further comprises deriving a global record identifier from the data table identifier, data table partition identifier and the data table segment identifier, and deriving an identifier from data is a mental processes accomplishable in the human mind or on paper. Claim 26 recites generating a signature for a data table segment using a list of record identifiers, and generating data is a mental processes accomplishable in the human mind or on paper; generating a signature for a data table partition combining one or more signatures of data table segments, and generating data is a mental processes accomplishable in the human mind or on paper; and generating a signature for a data table combining one or more signatures of data table partitions, and generating data is a mental processes accomplishable in the human mind or on paper.
Claim 27 recites acquiring a table read lock before generating the signatures of the semi-join query operators, and acquiring a lock is acquiring data and a mental processes accomplishable in the human mind or on paper; and acquiring a cache read lock when searching the signature in the cache storage area, and acquiring a lock is acquiring data and a mental processes accomplishable in the human mind or on paper. Claim 28 recites storing a reference of a data table segment at a time t, and storing data is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II; and using a reference of a data table segment in the query plan execution, and using data in an execution is a mental processes accomplishable in the human mind or on paper. Claim 29 recites wherein the acquisition of a cache read lock in a distributed shared-nothing and log-structured storage system further comprises: storing a reference of a cache entry at a time t, and storing data is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II; and using a reference of a cache entry in the query plan execution, and using data in an execution is a mental processes accomplishable in the human mind or on paper.
Relevant Prior Art
During his search for prior art, Examiner found the following references to be relevant to Applicant's claimed invention. Each reference is listed on the Notice of References form included in this office action:
Singamshetty (US 20140280031 teaches processing a join query with tables in a MPP database system, generating and executing a plan for the join query to obtain results, does not explicitly teach a semi-join operator of generating a signature of a join query operator (paragraphs 0004, 0014, 0021 figure 4); and
Bensberg et al (US 20200175008) teaches receiving a query and creating a query plan that has a semi-join operator but does not teach generating a signature using the semi-join operator or capturing the state of a data table (paragraphs 0003, 0025, 0027, figure 1).
Responses to Applicant’s Remarks
Regarding objections to claims 16, 30, and 31 for antecedent basis of :”the semi-join operator,” in view of amendments reciting the query execution plan includes a semi-join operator, these objections are withdrawn. Regarding rejections to claims 16-23 and 26-31 under 35 U.S.C. 101 for reciting mental processes without significantly more, Applicants arguments have been considered but are not persuasive. On pages 8-9 of his Remarks Applicant asserts the claims are not directed to mental processes. Applicant paraphrases the claim elements and asserts “these elements define particular data structures (cache partitions and segments, hierarchical signatures, global record identifiers) and particular coordination protocols (table read locks, cache read locks, use of time-t references) implemented in a distributed storage system.” Applicant further states the elements “are not mere mental steps that can practically be carried out in the human mind or with pencil and paper.” Examiner disagrees and notes the parenthesized examples of particular data structures and particular coordination protocols are not claimed, so this question of whether or not they are mental processes is moot. Applicant mentioned other elements such as “maintain and update hierarchical signatures across segments, partitions, and tables; coordinate table read locks and cache read locks in a shared-nothing, log-structured system; ensure consistency of global record identifiers derived from table/partition/segment identifiers; or efficiently reuse semi-join results from a distributed cache,” which are also not claimed. Examiner identified mental processes in the claims as shown in the rejection maintained above, namely “generating a query execution plan, wherein the query execution plan comprises a plurality of query operators including a semi-join query operator; using the semi-join query operator to generate a signature, wherein generating the signature comprises capturing semantics of the semi-join query operator and capturing a state of a data table, wherein the state of the data table comprises a filtered set of records from the data table; and executing the semi-join query operator to generate an output comprising a list of record identifiers.”
On page 9 Applicant asserts the claims are directed to an improvement in computer technology and notes “the claims require that the signature captures semantics of the semi-join query operator as well as the state of a filtered data table, and that this signature is used to control reuse of semi-join results.” Examiner agrees that the claims require that the signature captures semantics of the semi-join query operator as well as the state of a filtered data table but the claims do nothing with that with that information until storing output of the semi-join query operator, and recites no particular improvement in a computer technology. The signature as claimed is merely generated data and storing output of the semi-join operator with it is still storing output, which itself is not an improvement on storing data or anything else. Furthermore, using the signature to control reuse of semi-join results is not claimed, thus the improvement of “query processing performance and correctness in the presence of data changes” by using this signature “as a particular way of encoding semantics and data state to drive cache reuse” is not recited either.
On pages 9-10 Applicant asserts the claims are integrated into a practical application and states “The method is explicitly tied to computerized execution and caching mechanisms that produce tangible performance and consistency benefits.” Examiner disagrees and notes the claims recite no inventive details that show such tangible performance and consistency benefits and thus recite no practical application. On page 10 Applicant asserts the claims recite significantly more than generic computer functions. Examiner notes the additional elements of “receiving a query” and “using the signature to store the output of the semi-join query operator” were identified as being routine sand conventional in the rejections because they are each recited broadly and amount to receiving data across a network and storing data, which are routine and conventional activities in the list of such activities in MPEP 2106.05(d) part II. Thus Examiner does not believe those activities amount to significantly more than the recited mental processes. Applicant asserts that “the use of a semi-join operator to produce semantic-and-state signatures, caching those outputs for reuse, and executing within a database query engine is not ‘well-understood, routine, or conventional’ as alleged in the Office Action.” Caching outputs for reuse is not claimed and Examiner did not allege the use of a semi-join operator to produce semantic-and-state signatures and executing anything within a database query engine were routine and conventional activities.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Inquiry
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRUCE M MOSER whose telephone number is (571)270-1718. The examiner can normally be reached M-F 9a-5p.
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, Boris Gorney can be reached at 571 270-5626. 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.
/BRUCE M MOSER/Primary Examiner, Art Unit 2154 2/12/26