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
The instant application having Application No. 19/079,910 filed on 03/14/2025 in which claims 1-20 are canceled and claims 21-40 added. Claims 21-40 are pending in the application, all of which are ready for examination by the examiner.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 21-40 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AlA), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor, or for pre-AlA the applicant regards as the invention.
Claims 21, 23, 25, 28, 31, 32, 36, 38, 40 recite the limitation “substantially”. The term "substantially" in the said claims is a relative term which renders the claim indefinite. The term "substantially" is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. Examiner will not give any patentable weight to these limitations and will interpret the remaining claim limitations, merely as ‘real-time’.
The remaining claims are rejected being dependent claims above.
Claim Rejections - 35 USC §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 21-40 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claim 21, 28, and 36 recite writing transactional changes made to the one or more tables to a change-data-capture log.
The limitations of writing…, as drafted, are processes that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “method…,” nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “method…,” “of “writing…” in the context of these claims encompass the user manually writing transactional changes using pen and paper. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application. In particular, the claim only recites additional elements – making…, applying…, committing... The “making”, “applying”, and “committing” limitation amounts to mere instructions to apply an exception (see MPEP 2106.05f). The “maintaining”, “providing” limitations are insignificant extra-solution activity (mere data gathering, outputting, please see MPEP 2106.05g). Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims are directed to an abstract idea.
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. “Making”, “applying”, and “committing” amounts to mere instructions to apply an exception (see MPEP 2106.05f). The additional elements of “maintaining” and “providing” is a well-understood, routine, and conventional activity (data gathering, outputting, see MPEP 2106.05d). The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claims 22, 29, and 37 recite wherein the data lake is implemented using a data storage service that is separate from a database service that implements the SQL database, wherein the separate computing resources used to implement the data lake comprise computing resources of the data storage service. The limitations only recite additional elements recited at a high level of generality. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claims 23, 32, and 38 recite the data storage service is an object-based storage service that stores the data items of the one or more tables as objects, and applying, in substantially real-time, at the data lake, the checkpoints comprises modifying one or more affected data items stored in the data storage service to reflect the committed transactional change in substantially real-time with the transactional change being written at the SQL database.
This judicial exception is not integrated into a practical application. In particular, the claim only recites additional elements – applying…, modifying... The “applying” and “modifying” limitation amounts to mere instructions to apply an exception (see MPEP 2106.05f). The “stores” limitations are insignificant extra-solution activity (mere data gathering, please see MPEP 2106.05g). Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims are directed to an abstract idea.
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. “Applying”, and “modifying” amounts to mere instructions to apply an exception (see MPEP 2106.05f). The additional elements of “stores” is a well-understood, routine, and conventional activity (data gathering, see MPEP 2106.05d). The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claim 24 recites wherein said providing the results of the incoming query using the committed transactional changes maintained at the data lake comprises: accessing, by a node of a node cluster of an analytical database, one or more data items of the data lake to which the committed transactional changes have been applied; and generating a query result using the accessed one or more data items. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., providing, accessing) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claims 25, 31, and 40 recite maintaining, in substantially real-time, at a data warehouse service, a representation of one or more tables of the searchable query language (SQL) database, wherein said maintaining the representation at the data warehouse service comprises: making, via at least one transport mechanism, snapshots of the one or more tables accessible to the data warehouse service; making, via a respective one of the at least one transport mechanism, checkpoints accessible to the data warehouse service; applying, in substantially real-time, at the data warehouse service, the checkpoints; and committing the transactional changes of the respective checkpoints to the representation of the one or more tables maintained at the data warehouse service. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., maintaining, making, applying, committing) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claims 26 and 33 recite receiving, from a client of the searchable query language (SQL) database, an indication of one or more tables of the SQL database that have been chosen to be replicated to the data lake, wherein the one or more tables for which snapshots and checkpoints are transported to the data lake are the one or more tables that the client has indicated. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., receiving) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claims 27, 35 and 39 recite wherein making the one or more snapshots and the one or more checkpoints accessible to the data lake comprises: reading the transactional changes written to change-data-capture log; and publishing the transactional changes to a data storage service, wherein the data storage service is used, at least in part, to implement the data lake. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., reading, publishing) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claim 30 recites a plurality of compute nodes organized into a node cluster, wherein the plurality of compute nodes are configured to: implement an analytical database; and maintain, at the analytical database, a representation of at least one portion of the table using data items maintained at the data. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., implement, maintain) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
The claim 34 recites wherein the one or more computing devices are further configured to: poll the SQL database to determine whether an additional checkpoint that comprises one or more transactional changes that have been applied at the SQL database have a later transaction identifier than a latest transaction identifier committed at the data lake. The limitations only recite additional elements at a high level of generality. These limitations are recited at a high-level of generality (i.e., poll) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional elements do not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The additional elements, individually and in combination, also do not amount to significantly more than the abstract idea.
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 21-40 are rejected under 35 U.S.C. 103 as being unpatentable over Botev et al. (U.S. PGPub 2019/0171650; hereinafter “Botev”) in view of Promhouse et at. (U.S. PGPub 2015/0081623; hereinafter “Promhouse”).
As per claim 21, Botev discloses a method, comprising: maintaining, at a data lake, a representation of one or more tables of a searchable query language (SQL) database implemented using separate computing resources from computing resources used to implement the data lake, wherein said maintaining comprises: (See paras. 112, 442, wherein data lakes, target system are disclosed, also See para. 435, wherein snapshot table are disclosed; as taught by Botev.)
writing, at the SQL database, transactional changes made to the one or more tables to a change-data-capture log; (See paras. 102, 267, wherein load generator functions on creating database updates, logging to capture timestamps, transactional replication bus functions are disclosed; as taught by Botev.)
making, via at least one transport mechanism, snapshots of the one or more tables accessible to the data lake; (See Figs. 56, 58, paras. 102-103, 420-421, wherein snapshot materialization features are disclosed; as taught by Botev.)
making, via a respective one of the at least one transport mechanism, checkpoints accessible to the data lake, wherein the checkpoints comprise respective portions of the transactional changes of the change-data-capture log; (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See paras. 10, 102, wherein data lake and features of the target system are disclosed; as taught by Botev.)
applying, in substantially real-time, at the data lake, the checkpoints; (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See Fig. 2, paras. 109-112, 115, wherein real-time integration process are disclosed; as taught by Botev.)
and committing the transactional changes of the respective checkpoints to the representation of the one or more tables maintained at the data lake; (See Fig. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See Fig. 21, paras. 299, 321, wherein committer component functions are disclosed; as taught by Botev.)
However, Botev fails to disclose responsive to receiving an incoming query pertaining to at least one data item in the representation, providing the results of the incoming query using the committed transactional changes maintained at the data lake.
On the other hand, Promhouse teaches responsive to receiving an incoming query pertaining to at least one data item in the representation, providing the results of the incoming query using the committed transactional changes maintained at the data lake. (See paras. 28, 38, 93, wherein process of providing data consistency for query results are disclosed, also See paras. 32, 238-239, wherein transactional changes and query operation in which “When one of said one or more operations of said transaction is a query operation with a query, said step of executing comprises performing said query against each of said data stores of which information has been stored in said transactional state” [0032] are disclosed; as taught by Promhouse.)
Therefore, it would have been obvious to a person of ordinary skill in the computer art before the effective filing date of the claimed invention to incorporate the Promhouse teachings in the Botev system. Skilled artisan would have been motivated to incorporate system for performing transactions on data and a transactional database taught by Promhouse in the Botev system to improve data synchronization and integration of heterogeneous databases. In addition, both of the references (Botev and Promhouse) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as distribution or synchronization of data. This close relation between both of the references highly suggests an expectation of success.
As per claims 28 and 36, are the system and computer-readable, storage media version of claim 21 and rejected on the same basis.
As per claims 22, 29, and 37, the combination of Botev and Promhouse discloses wherein the data lake is implemented using a data storage service that is separate from a database service that implements the SQL database, wherein the separate computing resources used to implement the data lake comprise computing resources of the data storage service. (See paras. 444, wherein polling for new resources process are disclosed, also See paras. 112, 442, wherein data lakes, target system are disclosed; as taught by Botev.)
As per claims 23, 32, and 38, the combination of Botev and Promhouse discloses the data storage service is an object-based storage service that stores the data items of the one or more tables as objects, (See paras. 112, 442, wherein data lakes, target system are disclosed, also See para. 164, wherein tables and objects related to tables are disclosed; as taught by Botev.)
and applying, in substantially real-time, at the data lake, the checkpoints comprises modifying one or more affected data items stored in the data storage service to reflect the committed transactional change in substantially real-time with the transactional change being written at the SQL database. (See paras. 102, 267, wherein load generator functions on creating database updates, logging to capture timestamps, transactional replication bus functions, are disclosed, also See Fig. 2, paras. 109-112, 115, wherein real-time integration process are disclosed; as taught by Botev.)
As per claim 24, the combination of Botev and Promhouse discloses wherein said providing the results of the incoming query using the committed transactional changes maintained at the data lake comprises: accessing, by a node of a node cluster of an analytical database, one or more data items of the data lake to which the committed transactional changes have been applied; (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See paras. 10, 102, wherein data lake and features of the target system are disclosed, also See paras. 102, 267, wherein load generator functions on creating database updates, logging to capture timestamps, transactional replication bus functions, are disclosed; as taught by Botev.)
and generating a query result using the accessed one or more data items. (See para. 125, wherein fetcher features on returning results are disclosed; as taught by Botev.)
As per claims 25, 31, and 40, the combination of Botev and Promhouse discloses maintaining, in substantially real-time, at a data warehouse service, a representation of one or more tables of the searchable query language (SQL) database, wherein said maintaining the representation at the data warehouse service comprises: making, via at least one transport mechanism, snapshots of the one or more tables accessible to the data warehouse service; (See paras. 112, 118, wherein data warehouse, SQL databases are disclosed, also See Figs. 56, 58, paras. 102-103, 420-421, wherein snapshot materialization features are disclosed; as taught by Botev.)
making, via a respective one of the at least one transport mechanism, checkpoints accessible to the data warehouse service; (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See paras. 10, 102, wherein data lake and features of the target system are disclosed; as taught by Botev.)
applying, in substantially real-time, at the data warehouse service, the checkpoints; (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See Fig. 2, paras. 109-112, 115, wherein real-time integration process are disclosed; as taught by Botev.)
and committing the transactional changes of the respective checkpoints to the representation of the one or more tables maintained at the data warehouse service. (See Fig. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See Fig. 21, paras. 299, 321, wherein committer component functions are disclosed; as taught by Botev.)
As per claims 26 and 33, the combination of Botev and Promhouse discloses receiving, from a client of the searchable query language (SQL) database, an indication of one or more tables of the SQL database that have been chosen to be replicated to the data lake, wherein the one or more tables for which snapshots and checkpoints are transported to the data lake are the one or more tables that the client has indicated. (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See paras. 10, 102, wherein data lake and features of the target system are disclosed, also See Figs. 56, 58, paras. 102-103, 420-421, wherein snapshot materialization features are disclosed; as taught by Botev.)
As per claims 27, 35 and 39, the combination of Botev and Promhouse discloses making the one or more snapshots and the one or more checkpoints accessible to the data lake comprises: reading the transactional changes written to change-data-capture log; (See paras. 102, 267, wherein load generator functions on creating database updates, logging to capture timestamps, transactional replication bus functions are disclosed, also See paras. 146, 171, wherein data reading process are disclosed; as taught by Botev.)
and publishing the transactional changes to a data storage service, wherein the data storage service is used, at least in part, to implement the data lake. (See Figs. 25-26, paras. 206-207, wherein delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 108-109, wherein distributed/subscriber transaction bus features are disclosed are disclosed; as taught by Botev.)
As per claim 30, the combination of Botev and Promhouse discloses a plurality of compute nodes organized into a node cluster, wherein the plurality of compute nodes are configured to: implement an analytical database; (See Fig. 13A, 13B,13D, paras. 170, 173, wherein internal implementation of ACDS object materialization architecture are disclosed; as taught by Botev.)
and maintain, at the analytical database, a representation of at least one portion of the table using data items maintained at the data lake. (See Figs. 19D, 25-26, paras. 192, 206-207, wherein representation of changed data and delivering each change to client at checkpoint in which “checkpoint may record a point in the source stream. The main attributes of the checkpoint may include the source, the SCN and the event position in the transaction” [0207] are disclosed, also See paras. 294, 399, wherein sharing checkpoints, partitioning process are disclosed, also See paras. 10, 102, wherein data lake and features of the target system are disclosed; as taught by Botev.)
As per claim 34, the combination of Botev and Promhouse discloses wherein the one or more computing devices are further configured to: poll the SQL database to determine whether an additional checkpoint that comprises one or more transactional changes that have been applied at the SQL database have a later transaction identifier than a latest transaction identifier committed at the data lake. (See Fig. 10, paras. 162-165, wherein determining data changes are disclosed; as taught by Botev.)
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
1) Bensberg et al. (U.S. PGPub 2019/0324676) discloses paging and disk storage for document store.
2) Vermeulen et al. (U.S. PGPub 2016/0085772) discloses automated configuration of log-coordinated storage groups.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to LIN LIN M HTAY whose telephone number is (571)272-7293. The examiner can normally be reached on M-F, 7am-3pm, PST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kavita Stanley can be reached on (571)272-8352. 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.
/L. L. H./
Examiner, Art Unit 2153
/KAVITA STANLEY/Supervisory Patent Examiner, Art Unit 2153