Multi-database subsetting
AssigneeTonic AI, Inc.
InventorsJohn Kristopher Goodnow, Andrew C. Colombi, Adam Jacob Kamor
Life of this patent
Estimating the term…
Abstract
Multi-database subsetting includes receiving a set of source tables. It further includes sorting the set of source tables based at least in part on dependency relationships among tables in the set of source tables. It further includes determining a traversal order based at least in part on the sorting of the set of source tables. It further includes executing the traversal order. Executing the traversal order includes visiting a table in the source set of tables according to the determined traversal order and issuing a query to extract a subset of data from the table being visited.
Claims24
A system, comprising:
- a processor configured to:
- receive a set of source tables;
- sort the set of source tables based at least in part on dependency relationships among tables in the set of source tables;
- determine a traversal order based at least in part on the sorting of the set of source tables;
- and
- subsequent to determining the traversal order, execute the traversal order, wherein executing the traversal order comprises:
- visiting a table in the set of source tables according to the determined traversal order;
- and
- issuing a query to extract a subset of data from the table being visited;
- wherein extracting the subset of data from the table being visited comprises determining whether to perform an upstream pass on the table being visited or a downstream pass on the table being visited;
- and
- wherein in response to determining that the upstream pass is to be performed on the table being visited, the subset of data extracted from the table being visited is determined based at least in part on data that has been collected from at least one neighboring table that is downstream of the table being visited, and wherein the at least one neighboring table that is downstream of the table being visited includes a primary key that a foreign key in the table being visited refers to;
- and
- a memory coupled to the processor and configured to provide the processor with instructions.
A method, comprising:
- receiving a set of source tables;
- sorting the set of source tables based at least in part on dependency relationships among tables in the set of source tables;
- determining a traversal order based at least in part on the sorting of the set of source tables;
- and
- subsequent to determining the traversal order, executing the traversal order, wherein executing the traversal order comprises:
- visiting a table in the set of source tables according to the determined traversal order;
- and
- issuing a query to extract a subset of data from the table being visited;
- wherein extracting the subset of data from the table being visited comprises determining whether to perform an upstream pass on the table being visited or a downstream pass on the table being visited;
- and
- wherein in response to determining that the upstream pass is to be performed on the table being visited, the subset of data extracted from the table being visited is determined based at least in part on data that has been collected from at least one neighboring table that is downstream of the table being visited, and wherein the at least one neighboring table that is downstream of the table being visited includes a primary key that a foreign key in the table being visited refers to.
A system, comprising:
- a processor configured to:
- receive a set of source tables;
- sort the set of source tables based at least in part on dependency relationships among tables in the set of source tables;
- determine a traversal order based at least in part on the sorting of the set of source tables;
- and
- subsequent to determining the traversal order, execute the traversal order, wherein executing the traversal order comprises:
- visiting a table in the set of source tables according to the determined traversal order;
- and
- issuing a query to extract a subset of data from the table being visited;
- wherein extracting the subset of data from the table being visited comprises determining whether to perform an upstream pass on the table being visited or a downstream pass on the table being visited;
- and
- wherein in response to determining that the downstream pass is to be performed on the table being visited, the subset of data extracted from the table being visited is determined based at least in part on data that has been collected from at least one neighboring table that is upstream of the table being visited, and wherein the at least one neighboring table that is upstream of the table being visited includes a foreign key that refers to a primary key in the table being visited;
- and
- a memory coupled to the processor and configured to provide the processor with instructions.
A method, comprising:
- receiving a set of source tables;
- sorting the set of source tables based at least in part on dependency relationships among tables in the set of source tables;
- determining a traversal order based at least in part on the sorting of the set of source tables;
- and
- subsequent to determining the traversal order, executing the traversal order, wherein executing the traversal order comprises:
- visiting a table in the set of source tables according to the determined traversal order;
- and
- issuing a query to extract a subset of data from the table being visited;
- wherein extracting the subset of data from the table being visited comprises determining whether to perform an upstream pass on the table being visited or a downstream pass on the table being visited;
- and
- wherein in response to determining that the downstream pass is to be performed on the table being visited, the subset of data extracted from the table being visited is determined based at least in part on data that has been collected from at least one neighboring table that is upstream of the table being visited, and wherein the at least one neighboring table that is upstream of the table being visited includes a foreign key that refers to a primary key in the table being visited.
Dependencies are inferred from the claim text.