Querying one or more databases
AssigneeLooker Data Sciences, Inc.
InventorsLloyd Tabb, Benjamin Porterfield
Life of this patent
Estimating the term…
Abstract
A system and method for querying a database is disclosed. Database tables are represented as nodes in a model. Each node is associated with at least one leaf. The nodes can be interconnected with one another. A model input is received by a server from a client device, the model input including a starting node, one or more leaves, and optionally one or more filters. A query is executed against a database based on the model input. A subsequent query can be generated by selecting a result of the first query. Also disclosed is a technique for cancelling queries.
Claims20
A method for querying one or more databases, comprising:
- receiving, at a computing device, a selection of a starting node, wherein the starting node is included in a model that corresponds to one or more database tables;
- receiving, at the computing device, a selection of a first set of one or more leaves, wherein each leaf is connected to a node in the model;
- generating a first database query based on the starting node and the first set of leaves;
- providing a first results output based on the first database query executing on the one or more databases;
- receiving a selection of a result in the first results output;
- generating a second database query based on the selection of the result in the first results output, wherein the second database query is associated with a detail set associated with the result;
- and
- providing a second results output based on the second database query executing on the one or more databases.
A system for generating a database query, the system comprising:
- one or more databases;
- a client device;
- and
- a server configured to:
- receive a model input from the client device over a data network, wherein the model input includes a node and a first set of leaves included in a model corresponding to one or more database tables stored in the one or more databases;
- generate a plurality of data sets to store database query fragments;
- for each leaf in the first set, add one or more database query fragments to one or more of the plurality of data sets based on attributes of the leaf;
- construct a database query by appending together the database query fragments from the plurality of data sets;
- execute the database query against the one or more databases;
- and
- return results of the database query to the client device.
A method for querying a database, comprising:
- receiving, at a server device, a query input from a client device over a network connection;
- generating a database query based on the query input;
- causing the database query to begin executing against one or more databases;
- determining whether a network connection exists between the client device and the server device;
- and
- causing the database query to be cancelled when the server determines that the network connection does not exist between the client device and the server device.
Dependencies are inferred from the claim text.