US-20260127162-A1 - Automated External Data Source Interfacing
Abstract
Generating a first database query in accordance with a first structured query language includes obtaining first results data responsive to execution of the first database query by a database system, determining that the first results data indicates that the database system is incompatible with the first database query, generating first database operation mapping configuration data, wherein the first database operation mapping configuration data includes first database operation definition data describing the database operation, obtaining second database operation mapping configuration data, wherein the second database operation mapping configuration data includes the first database operation mapping configuration data mapped to second database operation definition data describing the database operation in accordance with the second structured query language, generating a second database query, obtaining second results data responsive to execution of the second database query by the database system, outputting data representing the second results data.
Inventors
- Ashok Anand
- Mahesh Tolani
- Astha Arya
- Bhanu Prakash
Assignees
- Thoughtspot, Inc.
Dates
- Publication Date
- 20260507
- Application Date
- 20251218
Claims (20)
- 1 . A method comprising: automatically generating a first database query by a current system, the first database query expressing a database operation in accordance with a first structured query language, wherein the first structured query language is deterministic; obtaining, by the current system, first results data output, in response to executing the first database query, by an external database system accessible by the current system; in response to determining that the first results data indicates that the database operation expressed in the first structured query language is incompatible with the external database system, wherein the external database system implements a second structured query language that differs from the first structured query language, wherein the second structured query language is deterministic, generating, by the current system, database operation mapping configuration data indicating a mapping between the database operation and an expression of the database operation in accordance with the second structured query language; automatically generating a second database query by the current system in accordance with the mapping from the database operation mapping configuration data; obtaining, from the external database system, responsive to executing the second database query, second results data; and outputting data representing the second results data.
- 2 . The method of claim 1 , wherein the external database system is one of a plurality of external database systems accessible by the current system.
- 3 . The method of claim 1 , further comprising: automatically generating, using the database operation mapping configuration data, a third database query expressing the database operation in the second structured query language; obtaining third results data responsive to execution of the third database query by the external database system; determining that the third results data is correct; and outputting data representing that the database operation was successful.
- 4 . The method of claim 1 , wherein: automatically generating the first database query includes automatically generating the first database query using initial database operation mapping configuration data; and generating the database operation mapping configuration data includes updating the initial database operation mapping configuration data to generate the database operation mapping configuration data.
- 5 . The method of claim 4 , further comprising: receiving structured query language selection data identifying the first structured query language; and generating the initial database operation mapping configuration data using the structured query language selection data.
- 6 . The method of claim 1 , wherein determining that the first results data indicates that the database operation expressed in the first structured query language is incompatible with the external database system includes: identifying that the database operation expressed in the first structured query language is incompatible with the external database system by identifying an error message returned by the external database system.
- 7 . The method of claim 1 , wherein automatically generating the second database query includes: obtaining natural language user input data expressing a request for analytical data; and automatically generating the second database query as an expression of the request for analytical data.
- 8 . An apparatus of a computing system comprising: a non-transitory computer-readable storage medium; and a processor configured to execute instructions stored in the non-transitory computer-readable storage medium to: automatically generate a first database query expressing a database operation in accordance with a first structured query language, wherein the first structured query language is deterministic; obtain first results data output, in response to execution of the first database query, by an external database system accessible by the computing system; in response to a determination that the first results data indicates that the database operation expressed in the first structured query language is incompatible with the external database system, wherein the external database system implements a second structured query language that differs from the first structured query language, wherein the second structured query language is deterministic, generate database operation mapping configuration data that indicates a mapping between the database operation and an expression of the database operation in accordance with the second structured query language; automatically generate a second database query in accordance with the mapping from the database operation mapping configuration data; obtain, from the external database system, responsive to execution of the second database query, second results data; and output data representing the second results data.
- 9 . The apparatus of claim 8 , wherein the external database system is one of a plurality of external database systems accessible by the computing system.
- 10 . The apparatus of claim 8 , wherein the processor is configured to execute the instructions to: automatically generate, in accordance with the database operation mapping configuration data, a third database query that expresses the database operation in the second structured query language; obtain third results data responsive to execution of the third database query by the external database system; determine that the third results data is correct; and output data representing that the database operation was successful.
- 11 . The apparatus of claim 8 , wherein, to automatically generate the first database query the processor is configured to execute the instructions to: automatically generate the first database query in accordance with initial database operation mapping configuration data; and update the initial database operation mapping configuration data to generate the database operation mapping configuration data.
- 12 . The apparatus of claim 11 , wherein, to automatically generate the first database query the processor is configured to: receive structured query language selection data identifying the first structured query language; and generate the initial database operation mapping configuration data in accordance with the structured query language selection data.
- 13 . The apparatus of claim 8 , wherein, to determine that the first results data indicates that the database operation expressed in the first structured query language is incompatible with the external database system, the processor is configured to execute the instructions to: identify an error message returned by the external database system.
- 14 . The apparatus of claim 8 , wherein, to automatically generate the second database query, the processor is configured to execute the instructions to: obtain natural language user input data that expresses a request for analytical data; and automatically generate the second database query as an expression of the request for analytical data.
- 15 . A non-transitory computer-readable storage medium having stored thereon executable instructions that, when executed by one or more processors of a computing system, cause the computing system to: automatically generate a first database query by a current system, wherein the first database query expresses a database operation in accordance with a first structured query language, wherein the first structured query language is deterministic; obtain first results data output, in response to execution of the first database query, by an external database system accessible by the computing system; in response to a determination that the first results data indicates that the database operation expressed in the first structured query language is incompatible with the external database system, wherein the external database system implements a second structured query language that differs from the first structured query language, wherein the second structured query language is deterministic, generate database operation mapping configuration data that indicates a mapping between the database operation and an expression of the database operation in accordance with the second structured query language; automatically generate a second database query in accordance with the mapping from the database operation mapping configuration data; obtain, from the external database system, responsive to execution of the second database query, second results data; and output data as a representation of the second results data.
- 16 . The non-transitory computer-readable storage medium of claim 15 , wherein the external database system is one of a plurality of external database systems accessible by the computing system.
- 17 . The non-transitory computer-readable storage medium of claim 15 , wherein the one or more processors execute the executable instructions to: automatically generate, in accordance with the database operation mapping configuration data, a third database query that expresses the database operation in the second structured query language; obtain third results data responsive to execution of the third database query by the external database system; determine that the third results data is correct; and output data to represent that the database operation was successful.
- 18 . The non-transitory computer-readable storage medium of claim 15 , wherein: the one or more processors execute the executable instructions to receive structured query language selection data that identifies the first structured query language; the one or more processors execute the executable instructions to generate initial database operation mapping configuration data in accordance with the structured query language selection data; to automatically generate the first database query the one or more processors execute the executable instructions to automatically generate the first database query in accordance with the initial database operation mapping configuration data; and the one or more processors execute the executable instructions to update the initial database operation mapping configuration data to generate the database operation mapping configuration data.
- 19 . The non-transitory computer-readable storage medium of claim 15 , wherein: to identify that the database operation expressed in the first structured query language is incompatible with the external database system the one or more processors execute the executable instructions to identify an error message returned by the external database system.
- 20 . The non-transitory computer-readable storage medium of claim 15 , wherein to automatically generate the second database query the one or more processors execute the executable instructions to: obtain natural language user input data that expresses a request for analytical data; and automatically generate the second database query as an expression of the request for analytical data.
Description
CROSS-REFERENCE TO RELATED APPLICATION(S) This application claims priority to and the benefit of U.S. application patent Ser. No. 18/171,439 filed Feb. 20, 2023, the entire disclosure of which is hereby incorporated by reference. BACKGROUND Advances in computer storage and database technology have led to exponential growth of the amount of data being created. Businesses are overwhelmed by the volume of the data stored in their computer systems. Existing database analytic tools are inefficient, costly to utilize, and require substantial configuration and training. SUMMARY Disclosed herein are implementations of automated external data source interfacing in a low-latency data access and analysis system. An aspect of the disclosure is a method for automated external data source interfacing in a low-latency data access and analysis system. Automated external data source interfacing in a low-latency data access and analysis system may include generating a first database query in accordance with a first structured query language, wherein the first database query includes a first data-query clause that expresses a database operation in accordance with the first structured query language; obtaining first results data responsive to execution of the first database query by a database, wherein the database implements a second structured query language that differs from the first structured query language with respect to the database operation, determining that the first results data indicates that the database is incompatible with the first database query, generating first database operation mapping configuration data, wherein the first database operation mapping configuration data includes first database operation definition data describing the database operation; obtaining second database operation mapping configuration data, wherein the second database operation mapping configuration data includes the first database operation mapping configuration data mapped to second database operation definition data describing the database operation in accordance with the second structured query language, generating a second database query, wherein generating the second database query includes accessing the second database operation mapping configuration data corresponding to the database operation to obtain the second database operation mapping definition data, generating a second data-query clause that expresses the database operation in accordance with the second database operation mapping configuration data, and including the second data-query clause in the second database query, obtaining second results data responsive to execution of the second database query by the database; and outputting data representing the second results data. Another aspect of the disclosure is another method for automated external data source interfacing in a low-latency data access and analysis system. Automated external data source interfacing in a low-latency data access and analysis system may include outputting preliminary database operation mapping configuration data indicating a preliminary mapping between an expression of a database operation in accordance with a first structured query language and an expression of the database operation in accordance with a second structured query language, the preliminary database operation mapping configuration data automatically generated by a low-latency data access and analysis system using results data output by an external database in response to executing a database query automatically generated by the low-latency data access and analysis system, the database query expressing the database operation in the first structured query language, the results data indicating that the database operation expressed in the first structured query language is incompatible with the external database, wherein the external database implements the second structured query language. Another aspect of the disclosure is an apparatus of a low-latency data access and analysis system. The apparatus includes a non-transitory computer-readable storage medium and a processor. The processor is configured to execute instructions stored in the non-transitory computer-readable storage medium to output preliminary database operation mapping configuration data indicating a preliminary mapping between a database operation implemented by the low-latency data access and analysis system and an expression of the database operation in accordance with a second structured query language. The preliminary database operation mapping configuration data is automatically generated by the low-latency data access and analysis system using results data output by an external database system in response to executing a database query automatically generated by the low-latency data access and analysis system. The database query expresses the database operation in a first structured query language and the results data indicates that the database operatio