DETAILED ACTION
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 .
Claims 1-16 are pending.
Claim Objections
Claim 2 is objected to because of the following informalities: failure to spell out acronyms “API” and “REST”. Appropriate correction is required.
Claim 12 is objected to because of the following informalities: failure to spell out acronym “SQL”. Appropriate correction is required.
Claim 15 is objected to because of the following informalities: failure to spell out acronym “ODBC”. Appropriate correction is required.
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 1-16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
The claims do not fall within at least one of the four categories of patent eligible subject matter because the components of the claimed system (e.g. data center, data serve, application server) may be interpreted as software per se, which render the system being directed to software per se and fails to fall within at least one of the four categories of patent eligible subject matter.
It is suggested to add a hardware component (e.g. a processor) to the claimed system for directing the claims to a statutory subject matter.
Claims 1-16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract without significantly more.
Independent claim 1 recites a mental process in the limitations of “…access data from the in-memory database when a target table is a regular table; access external data via the external table/external records when the target table is an external table; and return corresponding query results to the application server”. These limitations could be done mentally based on gathered information and data evaluation. Mental process is directed to one of the abstract ideas groups as set forth by Prong One in Step 2A of the 2019 Patent Subject Matter Eligibility Guidance.
Th claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Additional elements (e.g. external table/external records, regular tables ) are directed to types of information materials, which do not impose a meaningful limit on the judicial exception, such that the claims are more than a drafting effort design to monopolize exception, because the claimed steps could be performed in a same manner to achieve the same outcome with other types of information other than the ones being used in the claims.
Hence, the claims do not include additional elements or the combination of the elements are sufficient to amount to significantly more than the judicial exception and fail to integrate the judicial exception into practical application according to Prong Two in Step 2A of the 2019 Patent Subject Matter Eligibility Guidance because the claimed elements or their combination do not impose any meaningful limits on practicing the abstract idea.
Further, in view of Step 2B of the 2019 Patent Subject Matter Eligibility Guidance, it is determined that the computing elements (such as data center, data server, application server, external data schema, in-memory database, query engine) in the claims amount to no more than usages of generic computing components of a generic computing system, which fails to provide an inventive concept or significantly more than abstract idea because the elements do not necessary improve the functional of a computing system or an improvement to a technical field since network computing is well known.
Dependent claims 2-5, 7-9 and 15-16 each further recites additional computing elements (such as public cloud, external system, API interface, storage/disk, Open Database Connectivity, REST API, secure socket layer) in the claims amount to no more than additional generic usages of the generic computing components in the generic computing system with different types of generic data information (e.g. formatted file), which fails to provide an inventive concept or significantly more than abstract idea because the elements do not necessary improve the functional of a computing system or an improvement to a technical field since network computing is well known.
Dependent claim 6 further recites additional elements (e.g. a parquet file) that are directed to types of information materials, which do not impose a meaningful limit on the judicial exception, such that the claims are more than a drafting effort design to monopolize exception, because the claimed steps could be performed in a same manner to achieve the same outcome with other types of information other than the ones being used in the claims.
Dependent claims 10-13 each further recites the mental process include addition limitations, including “access data, and to return query result”, “execution of filter, aggregation or join at external data source”, “translate a worksheet” which could be done mentally based on the gathered information. Also, the dependent claims 10-13 each further recites that the additional limitations are being performed by a the query engine, which is merely directed to using a generic computing component to perform the mental processes and fails to provide an inventive concept or significantly more than abstract idea because the elements do not necessary improve the functional of a computing system or an improvement to a technical field since network computing is well known.
Dependent claim 14 further recites the mental process include addition limitations, including “receiving the query result and provide the query search” which are directed to insignificant extra-solution activities at Step 2A Prong Two, and is also would be well-understood, routine, and conventional at Step 2B. This is nothing more than gathering/receiving information on which the mental process is performed. Also, the dependent claim further recites that the additional limitations are being performed by a the application server, which is merely directed to using a generic computing component to perform the mental processes and fails to provide an inventive concept or significantly more than abstract idea because the elements do not necessary improve the functional of a computing system or an improvement to a technical field since network computing is well known.
Thus, for at least the reasonings above, the claims are not patent eligible.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-16 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-12 of U.S. Patent No. 12,430,336 (Application No. 17/956,362).
Although the claims at issue are not identical, they are not patentably distinct from each other because both are directed to similar invention with similar limitations as demonstrated in the table below:
Claims 5-8 of U.S. Patent No. 12,430,336 recite similar to limitations as claims 1-4 and 9-12. Hence claims 5-8 are being used as representative for demonstration in the table below.
Instant Application
U.S. Patent No. 12,430,336
1. A system comprising:
a data center including a data server and an application server communicatively coupled with one another;
the data server comprising:
an external table schema coupled to external table/external records;
an in-memory database configured to store regular tables; and
one or more interfaces configured to access a plurality of external sources;
wherein the data center is in two-way communication with the plurality of external sources; and
a query engine operable to handle queries directed to tables in the data server, the query engine being configured to:
access data from the in-memory database when a target table is a regular table;
access external data via the external table/external records when the target table is an external table; and
return corresponding query results to the application server.
9. The system of claim 1, wherein the in-memory database of the data server is configured to store regular tables distinct from the external table/external records.
10. The system of claim 2, wherein the query engine is configured to access data in a regular table from the in-memory database and to access data for an external table via the external table/external records, and to return a query result to the application server.
11. The system of claim 10, wherein, when the target table is an external table, the query engine is further configured to cause execution of filters, aggregations, or joins at the external data source prior to returning results to the data server.
14. The system of claim 1, wherein the application server is configured to receive the corresponding query results from the data server and provide the corresponding query results to one or more client-facing resources.
2. The system of claim 1, wherein the plurality of external sources comprises at least one of a public cloud, an external system, and a storage/disk; and wherein: the public cloud hosts an external data source accessible via an API interface for accessing a database; the external system exposes a REST API accessible via an API access; and the storage/disk provides data in a formatted file.
3. The system of claim 2, wherein the API interface comprises Open Database Connectivity (ODBC) implemented over a secure socket layer (SSL) connection.
4. The system of claim 2, wherein the public cloud hosts the external data source and the data server accesses the external data source via the API interface.
5. The system of claim 2, wherein the data server accesses the external system via the API access.
6. The system of claim 2, wherein the formatted file comprises at least one of a parquet file or a flat file.
7. The system of claim 1, wherein the external table schema is configured to contribute to the external table/external records within the data server.
8. The system of claim 2, wherein the data center is configured for two-way communication with each of the public cloud, the external system, and the storage/disk.
12. The system of claim 10, wherein, when the target table is an external table, the query engine is configured to translate a worksheet or workbook query into SQL and fetch records from the external data source over the API interface.
13. The system of claim 12, wherein the query engine is further configured to apply column search expressions to filter down results prior to sending the results to the application server.
15. The system of claim 1, wherein the external table schema is linkable to an external data source that is accessed by ODBC.
16. The system of claim 2, wherein the API interface and API access are each configured to securely communicate between the external table/external records and a corresponding external source.
5. A computing apparatus comprising:
a processor; and
a memory storing instructions that, when executed by the processor, configure the apparatus to:
open, by the processor, a chart;
execute, by the processor, a chart query on the chart, the chart query having a target table, wherein executing the chart query comprises:
send, by the processor, the chart query to a query engine;
execute, by the processor, the chart query; and
return, by the processor, one or more query results;
loading, by the processor and based on the one or more query results, external data from an external data source to a record that is external to an in-memory database, for a target table that is an external table;
loading, by the processor and based on the one or more query results, data from a record block stored in the in-memory database, for a target table that is a regular table; and
creating, by the processor, a composite chart comprising the loaded external data and the loaded data from the record block.
6. The computing apparatus of claim 5, wherein when loading the external data from the external data source, the apparatus is configured to: use, by the processor, an Application Programming Interface for accessing a database.
7. The computing apparatus of claim 5, wherein the external data source is at least one of a public cloud, an external system and an external disk.
8. The computing apparatus of claim 5, wherein when executing the chart query for the external table, the apparatus is configured to:
create, by the processor, an instance of an external data source class;
translate, by the processor, the chart query into Structured Query Language (SQL);
fetch, by the processor, one or more records from the external data source over an API using SQL;
filter, by the processor, results by applying one or more column search expressions; and
send, by the processor, the results to an application server.
As demonstrated by the mappings in the table above, U.S. Patent No 12,430,336 discloses or renders obvious all the features of the claims of the instant application.
Claims 1-16 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-12 of U.S. Patent No. 12,443,598 (Application No. 17/943,657).
Although the claims at issue are not identical, they are not patentably distinct from each other because both are directed to similar invention with similar limitations as demonstrated in the table below:
Claims 5-8 of U.S. Patent No. 12,443,598 recite similar to limitations as claims 1-4 and 9-12. Hence claims 5-8 are being used as representative for demonstration in the table below.
Instant Application
U.S. Patent No. 12,443,598
1. A system comprising:
a data center including a data server and an application server communicatively coupled with one another;
the data server comprising:
an external table schema coupled to external table/external records;
an in-memory database configured to store regular tables; and
one or more interfaces configured to access a plurality of external sources;
wherein the data center is in two-way communication with the plurality of external sources; and
a query engine operable to handle queries directed to tables in the data server, the query engine being configured to:
access data from the in-memory database when a target table is a regular table;
access external data via the external table/external records when the target table is an external table; and
return corresponding query results to the application server.
9. The system of claim 1, wherein the in-memory database of the data server is configured to store regular tables distinct from the external table/external records.
10. The system of claim 2, wherein the query engine is configured to access data in a regular table from the in-memory database and to access data for an external table via the external table/external records, and to return a query result to the application server.
11. The system of claim 10, wherein, when the target table is an external table, the query engine is further configured to cause execution of filters, aggregations, or joins at the external data source prior to returning results to the data server.
2. The system of claim 1, wherein the plurality of external sources comprises at least one of a public cloud, an external system, and a storage/disk; and wherein:the public cloud hosts an external data source accessible via an API interface for accessing a database; the external system exposes a REST API accessible via an API access; and the storage/disk provides data in a formatted file.
3. The system of claim 2, wherein the API interface comprises Open Database Connectivity (ODBC) implemented over a secure socket layer (SSL) connection.
4. The system of claim 2, wherein the public cloud hosts the external data source and the data server accesses the external data source via the API interface.
5. The system of claim 2, wherein the data server accesses the external system via the API access.
6. The system of claim 2, wherein the formatted file comprises at least one of a parquet file or a flat file.
7. The system of claim 1, wherein the external table schema is configured to contribute to the external table/external records within the data server.
8. The system of claim 2, wherein the data center is configured for two-way communication with each of the public cloud, the external system, and the storage/disk.
12. The system of claim 10, wherein, when the target table is an external table, the query engine is configured to translate a worksheet or workbook query into SQL and fetch records from the external data source over the API interface.
13. The system of claim 12, wherein the query engine is further configured to apply column search expressions to filter down results prior to sending the results to the application server.
14. The system of claim 1, wherein the application server is configured to receive the corresponding query results from the data server and provide the corresponding query results to one or more client-facing resources.
15. The system of claim 1, wherein the external table schema is linkable to an external data source that is accessed by ODBC.
16. The system of claim 2, wherein the API interface and API access are each configured to securely communicate between the external table/external records and a corresponding external source.
5. A computing apparatus comprising:
a processor; and
a memory storing instructions that, when executed by the processor, configure the apparatus to:
open, by the processor, a workbook;
execute, by the processor, a workbook query on the workbook, the workbook query having a target table, wherein when executing the workbook query, the apparatus is configured to:
open, by the processor, a worksheet from the workbook;
send, by the processor, a worksheet query to a query engine;
execute, by the processor, the worksheet query on the record that is external to the in-memory database; and
return, by the processor, one or more query results;
load, by the processor and based on the one or more query results, external data from an external data source to the record that is external to the in-memory database, for a target table that is an external table; and
load, by the processor and based on the one or more query results, data from a record block stored in the in-memory database, for a target table that is a regular table, and
create, by the processor, a composite worksheet comprising the loaded external data and the loaded data from the record block.
6. The computing apparatus of claim 5, wherein when loading the external data from the external data source, the apparatus is configured to: use, by the processor, an Application Programming Interface for accessing a database.
7. The computing apparatus of claim 5, wherein the external data source is at least one of a public cloud, an external system and an external disk.
As demonstrated by the mappings in the table above, U.S. Patent No 12,443,598 discloses or renders obvious all the features of the claims of the instant application.
Claims 1-16 are provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-21 of copending Application No. 19/328,872 (reference application).
Although the claims at issue are not identical, they are not patentably distinct from each other because both are directed to similar invention with similar limitations as demonstrated in the table below:
Claims 1-7 of Application No 19/328,872 recite similar limitations as claim 8-21, hence claims 1-7 are being used as representative for demonstration in the table below.
Instant Application
Application No. 19/328,872
1. A system comprising:
a data center including a data server and an application server communicatively coupled with one another;
the data server comprising:
an external table schema coupled to external table/external records;
an in-memory database configured to store regular tables; and
9. The system of claim 1, wherein the in-memory database of the data server is configured to store regular tables distinct from the external table/external records.
one or more interfaces configured to access a plurality of external sources;
wherein the data center is in two-way communication with the plurality of external sources; and
a query engine operable to handle queries directed to tables in the data server, the query engine being configured to:
12. The system of claim 10, wherein, when the target table is an external table, the query engine is configured to translate a worksheet or workbook query into SQL and fetch records from the external data source over the API interface.
4. The system of claim 2, wherein the public cloud hosts the external data source and the data server accesses the external data source via the API interface.
5. The system of claim 2, wherein the data server accesses the external system via the API access.
access data from the in-memory database when a target table is a regular table;
access external data via the external table/external records when the target table is an external table; and
10. The system of claim 2, wherein the query engine is configured to access data in a regular table from the in-memory database and to access data for an external table via the external table/external records, and to return a query result to the application server.
return corresponding query results to the application server.
2. The system of claim 1, wherein the plurality of external sources comprises at least one of a public cloud, an external system, and a storage/disk; and wherein:
the public cloud hosts an external data source accessible via an API interface for accessing a database;
the external system exposes a REST API accessible via an API access; and
the storage/disk provides data in a formatted file.
3. The system of claim 2, wherein the API interface comprises Open Database Connectivity (ODBC) implemented over a secure socket layer (SSL) connection.
15. The system of claim 1, wherein the external table schema is linkable to an external data source that is accessed by ODBC.
13. The system of claim 12, wherein the query engine is further configured to apply column search expressions to filter down results prior to sending the results to the application server.
14. The system of claim 1, wherein the application server is configured to receive the corresponding query results from the data server and provide the corresponding query results to one or more client-facing resources.
6. The system of claim 2, wherein the formatted file comprises at least one of a parquet file or a flat file.
7. The system of claim 1, wherein the external table schema is configured to contribute to the external table/external records within the data server.
8. The system of claim 2, wherein the data center is configured for two-way communication with each of the public cloud, the external system, and the storage/disk.
11. The system of claim 10, wherein, when the target table is an external table, the query engine is further configured to cause execution of filters, aggregations, or joins at the external data source prior to returning results to the data server.
16. The system of claim 2, wherein the API interface and API access are each configured to securely communicate between the external table/external records and a corresponding external source.
1. A computing apparatus comprising:
a processor; and
a memory storing instructions that, when executed by the processor, configure the apparatus to:
author a chart;
select a target table for the chart, the target table being either a regular table stored in an in-memory database or an external table associated with an external data source;
specify one or more chart attributes;
execute a chart query against the target table;
when the target table is the external table:
create an instance of an external data source class;
translate the chart query into Structured Query Language (SQL) along with table information;
fetch one or more records from the external data source over an application programming interface (API) using SQL;
filter the fetched records by applying one or more column search expressions; and
send the filtered results to an application server;
when the target table is the regular table:
retrieve data from a record block stored in the in-memory database; and
present the query results in the chart.
2. The computing apparatus of claim 1, wherein the external data source comprises at least one of: a public cloud, an external system, or an external disk.
3. The computing apparatus of claim 1, wherein the processor is further configured to fetch the one or more records from the external data source using an Open Database Connectivity (ODBC) interface.
4. The computing apparatus of claim 1, wherein the processor is further configured to filter the fetched records by applying one or more column search expressions before transmitting the filtered results to the application server.
5.The computing apparatus of claim 1, wherein the application server is further configured to merge results from the external table with results from the in-memory database for composite presentation in the chart.
6. The computing apparatus of claim 1, wherein the processor is further configured to create the instance of the external data source class by instantiating a connector configured to translate chart queries into SQL queries.
7. The computing apparatus of claim 1, wherein the processor is further configured to execute at least one of aggregation, filtering, or join operations at the external data source prior to fetching the one or more records.
As demonstrated by the mappings in the table above, Application No. 19/328,872 discloses or renders obvious all the features of the claims of the instant application.
This is a provisional nonstatutory double patenting rejection.
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 1-16 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), 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 applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
With respect to claim 1, limitation of “external table/external records” is not clearly understood rendering the claim being indefinite. It is unclear what is meant by “external table/external records”, and whether it is referred to “external table and external records”, or “external table or external records” or not.
With respect to claim 2, in addition to incorporate the deficiency of claim 1 stated above, limitation of “storage/disk” recited in claim 2 is not clearly understood rendering the claim being indefinite. It is unclear what is meant by “storage/disk”, and whether it is referred to “storage and disk”, or “storage or disk” or not.
Any claim not specifically addressed is being rejected for incorporate the deficiency of the claim it depends on.
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 (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1-16 are rejected under 35 U.S.C. 103 as being unpatentable over Griffith et al (Pub No. US 2021/0397626, hereinafter Griffith) in view of Shiran et al (Pub No. US 2017/0371926, hereinafter Shiran).
Griffith is cited in the IDS filed on 10/29/2025.
With respect to claim 1, Griffith discloses a system (abstract) comprising:
a data center including a data server and an application server communicatively coupled with one another ([0091], [0094]: a data center with data server and applications servers in a system, such as a server system shown in Fig 1 & 5-6& 10 with a data certer having a data server and application server communicatively with one another to implement a least a collaborative dataset consolidation system as described in as described at least in but not limited to [0023]);
the data server comprising:
an external table schema coupled to external table/external records ([0028-0030], Fig 4-6 & 8: an external table schema coupled to external records/tables at one or more remote sources for table data accessing via query language such as SQL);
a local database configured to store regular tables (regular tables are merely a type of data tables; [0053], [0083], Fig 6: a local repository, such as 640, storing datasets representing the regular tables as the datasets may tables as described in [0027-0028]); and
one or more interfaces configured to access a plurality of external sources ([0027-0028], Fig 5-8: one or more interface configured to access external sources represented by sources storing remote datasets);
wherein the data center is in two-way communication with the plurality of external sources ([0022-0028], Fig 1 & 5-8: the data center having server and application server in two-way communication the external or remote sources as at least shown in the figures with two arrowed communication with the external or remote sources for remote dataset); and
a query engine operable to handle queries directed to tables in the data server, the query engine being configured to ([0024], [0054], Fig 1: query engine queries to tables) :
access data from the local database when a target table is a regular table ([0051-0053], [0083], Fig 5-6: access data from the local dataset then a target table of the query is a data of the regular table in the local storge during multi-table query processing);
access external data via the external table/external records when the target table is an external table ([0029], [0060],[0083], Fig 5-6: access the data via external table/record when the target is an external table in a remote dataset at a remote source); and
return corresponding query results to the application server ([0031], [0047], Fig 2-6: return correspond results to the application server).
Griffith does not explicitly the local database is directed to an in-memory database as claimed.
However, Shiran discloses an in-memory database configured to store regular tables ([0006-0007]: a memory corresponds to an in-memory database that is configured to store regular tables represented by an optimized data structure);
access data from the in-memory database when a target table is a regular table ([0006], [0055]: access data from the in-memory when the target table is a table of the optimized data structure in the memory).
Since both Griffith and Shiran are from the same field of endeavor because both are directed are directed to query processing with specific data access, which is in the same field of endeavor as the claimed invention, it would have been obvious to one skilled in the art before the effective filing date of the claimed invention to modify and combine their teachings by incorporate the in-memory data storage and access of Shiran into Griffith for query processing as claimed. The motivation to combine is to optimize data operations with improved access, explore and analyze data from distrusted data sources (Griffith, [0008]; Shiran, [0005]).
With respect to claim 2, the combined teachings of Griffith and Shiran further disclose wherein the plurality of external sources comprises at least one of a public cloud, an external system, and a storage/disk (Griffith, [0050], Fig 5-6 & 10; Shiran, [0040], [0077]: at least a public could, a remote/external system); and wherein: the public cloud hosts an external data source accessible via an API interface for accessing a database (Griffith, [0050], [0078], Fig 5-6 & 10; Shiran, [0062], [0077]: access via API interface);
the external system exposes a REST API accessible via an API access (Griffith, [0050], [0078], Fig 5-6 & 10]; Shiran, [0062], [0077]: expose a REST API accessible via API access and the e access via API interface); and the storage/disk provides data in a formatted file (Griffith, [0027-0028], Fig 1& 5-6; Shiran, [0038], [0042]: the storage/disk provide data in a format).
With respect to claim 3, the combined teachings of Griffith and Shiran further disclose
wherein the API interface comprises Open Database Connectivity (ODBC) implemented over a secure socket layer (SSL) connection (Griffith, [0078]; Shiran, [0037], [0062], [0133]: API interface include ODBC over SSL).
With respect to claim 4, the combined teachings of Griffith and Shiran further disclose
wherein the public cloud hosts the external data source and the data server accesses the external data source via the API interface (Griffith, [0050], [0078], Fig 5-6 & 10; Shiran, [0062], [0077]: the cloud hosts data source and data server).
With respect to claim 5, the combined teachings of Griffith and Shiran further disclose
wherein the data server accesses the external system via the API access (Griffith, [0050], [0078], Fig 5-6 & 10]; Shiran, [0062], [0077]: access via API access and the e access via API interface).
With respect to claim 6, the combined teachings of Griffith and Shiran further disclose wherein the formatted file comprises at least one of a parquet file or a flat file (limitation of non-functional descriptive material; Griffith, [0023]; Shiran, [0037]: file system with any type of file or data).
With respect to claim 7, the combined teachings of Griffith and Shiran further disclose
wherein the external table schema is configured to contribute to the external table/external records within the data server (Griffith, [0033-0034], [0047-049]; Shiran, [0006], [0040-0041], [0048-0049]: external schema contributes to external data table in the data server at least via at least attributes and/or identifiers).
With respect to claim 8, the combined teachings of Griffith and Shiran further disclose
wherein the data center is configured for two-way communication with each of the public cloud, the external system, and the storage/disk (Griffith, ([0022-0028], Fig 1 & 5-8; Shiran, [0040], [0077]: two way communicate with components of the system, including but not limited to data center and cloud, storage units).
With respect to claim 9, the combined teachings of Griffith and Shiran further disclose wherein the in-memory database of the data server is configured to store regular tables distinct from the external table/external records (Griffith, [0053-0054]; Shiran, [0006]: store table representing the regular tables distant from the external tables or records as the table in the in-memory are at least being processed).
With respect to claim 10, the combined teachings of Griffith and Shiran further disclose
wherein the query engine is configured to access data in a regular table from the in-memory database and to access data for an external table via the external table/external records(Griffith, [0053-0054]; Shiran, [0006-0007]: access both in memory and the external table data of the remote sources), and to return a query result to the application server (Griffith, [0031], [0047], Fig 2-6: Shiran, [0008]: return a query result to a server for presentation to a user).
With respect to claim 11, the combined teachings of Griffith and Shiran further disclose
wherein, when the target table is an external table, the query engine is further configured to cause execution of filters, aggregations, or joins at the external data source prior to returning results to the data server (Griffith, [0035], [0046], [0052-0054], Fig 2-6: Shiran, [0048]: at least a join operation may be performed prior to return result ).
With respect to claim 12, the combined teachings of Griffith and Shiran further disclose
wherein, when the target table is an external table, the query engine is configured to translate a worksheet or workbook query into SQL and fetch records from the external data source over the API interface(Griffith, [0027-0029], [0078]: Shiran, [0042], [0062]: translate to SQL for query processing and using API interface to fetch result data ).
With respect to claim 13, the combined teachings of Griffith and Shiran further disclose
wherein the query engine is further configured to apply column search expressions to filter down results prior to sending the results to the application server (Griffith, [0046], [0052-0054], Fig 2-6: Shiran, [0063]: apply column search expression to filter result, such as but not limited to via SQL expression to filter search prior to send the result).
With respect to claim 14, the combined teachings of Griffith and Shiran further disclose
wherein the application server is configured to receive the corresponding query results from the data server and provide the corresponding query results to one or more client-facing resources(Griffith, [0051], Fig 2-6: Shiran, [0038]: receive result from a server that provides result to a client-facing resource such as a client device).
With respect to claim 15, the combined teachings of Griffith and Shiran further disclose
wherein the external table schema is linkable to an external data source that is accessed by ODBC (Griffith, [0028-0031], [0053-0054], [0078]; Shiran, [0037], [0062], [0133]: external schema is linkable to an external source that is access, including by ODBC).
With respect to claim 15, the combined teachings of Griffith and Shiran further disclose
wherein the API interface and API access are each configured to securely communicate between the external table/external records and a corresponding external source (Griffith, [0028-0031], [0053-0054], [0078]; Shiran, [0045], [0062], [0169]: communicate with API and security via access control).
Examiner Note
Examiner has cited particular columns/paragraph and line numbers in the references applied to the claims above for the convenience of the applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested from the applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Michelle Owyang whose telephone number is (571)270-1254. The examiner can normally be reached Monday-Friday, 8am-6pm EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Charles Rones can be reached at (571)272-4085. 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.
/MICHELLE N OWYANG/Primary Examiner, Art Unit 2168