Method and apparatus for access, integration, and analysis of heterogeneous data sources via the manipulation of metadata objects
Abstract
A computer-based method represents a subset of a dataset table of rows and columns. The method includes selecting a set of blocking variables corresponding to blocking columns of the dataset table. For each row in the dataset table, a tuple of values for the blocking columns uniquely identifies the row within the dataset table. The method also includes selecting a set of non-blocking variables that correspond to columns of the subset. The set of non-blocking variables does not intersect the set of blocking variables. The method also includes creating a block information structure that includes both the set of non-blocking variables and, for each blocking variable in the set of blocking variables, a set of values.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-based method of representing a subset of a dataset table of rows and columns, the method comprising:
selecting a set of blocking variables corresponding to blocking columns of the dataset table such that, for each row in the dataset table, a tuple of values for the blocking columns uniquely identifies the row within the dataset table; selecting a set of non-blocking variables corresponding to columns of the subset, the set of non-blocking variables disjoint from the set of blocking variables; and creating a block information structure that includes the set of non-blocking variables and that includes, for each blocking variable in the set of blocking variables, a set of values.
2 . The method of claim 1 , wherein for each row in the subset having a tuple of values for the blocking columns, the values of the tuple are included in the corresponding sets of values for the blocking variables.
3 . The method of claim 1 , wherein the subset of the dataset table includes the entire dataset table.
4 . The method of claim 1 , wherein a sum of the number of elements in the set of non-blocking columns and in the sets of values for the blocking columns is linearly proportionate to an upper bound on binary storage requirements of the block information structure.
5 . The method of claim 1 , further comprising:
storing the block information structure on a machine-readable medium.
6 . A computer-based method of accessing information in heterogeneous databases, the method comprising:
presenting a graphical user interface with controls representing a data cart and a plurality of datasets; receiving user input that selects a dataset to add to the data cart from the plurality of datasets; generating a block information structure specifying the dataset; and adding the block information structure to the data cart.
7 . The method of claim 6 , wherein specifying the dataset includes incorporating into the block information structure a set of non-blocking variables, a set of blocking variables, and for each such blocking variable, a set of values.
8 . The method of claim 7 , wherein the dataset includes a plurality of rows, each identified by a corresponding tuple of values from the sets of values for the blocking variables.
9 . The method of claim 7 , further comprising:
for a blocking variable in the set of blocking variables, presenting enumeration controls in the graphical user interface, each corresponding to an existing value in the dataset for the blocking variable.
10 . The method of claim 6 , further comprising:
collecting user input specifying a subset of the dataset, and representing the subset in corresponding block information structure.
11 . The method of claim 6 , further comprising:
saving the data cart to a persistent storage medium.
12 . The method of claim 6 , further comprising:
adding a second block information structure to the data cart, in response to user input.
13 . The method of claim 6 , wherein the controls representing a data cart include a symbol of a shopping cart.
14 . A computer-based method of retrieving information represented by a blockset, the method comprising:
for each of a plurality of blocks in the blockset in which each block specifies a subset of a dataset stored in a database, connecting to the corresponding database, wherein the blockset has a plurality of blocking variables, and the blocks each include a set of non-blocking variables, and specifying includes having a set of values for each blocking variable in the plurality of blocking variables; adding to a derived table a blocking column for each blocking variable in the set of blocking variables; adding to the derived table a non-blocking column for each element in a union of the non-blocking variables in the plurality of blocks; adding a row to the derived table including a cell for each column in the derived table, the row uniquely identified by a tuple of values from the sets of values for the blocking variables; and populating a cell of a non-blocking column in the row, using a value retrieved from the database corresponding to the block, wherein the block contains the non-blocking variable corresponding to the non-blocking column.
15 . The method of claim 14 , further comprising:
adding a row for each tuple of values from the sets of values for the blocking variables, wherein the tuple occurs in at least one dataset corresponding to a block in the plurality of blocks.
16 . The method of claim 14 , wherein connecting includes using each block as a basis for a database query that specifies the corresponding subset.
17 . The method of claim 16 , wherein the database query uses Structured Query Language.
18 . A computer-based method of representing a table derived from a blockset, the method comprising:
outputting blockset metadata describing the blockset, including fields for a blockset title and a blockset description; for a column in the table, outputting column metadata describing a variable associated with the column, wherein the variable is associated with an underlying dataset that provides data to the table in the blockset, and the column metadata includes fields for a title of the variable and for a title of the underlying dataset.
19 . A computer-based method of collecting metadata for a dataset, the method comprising:
prompting a user to provide a database name; confirming that the database name represents a database; displaying a list of tables in the database to the user; receiving user input specifying a table in the list of tables; prompting the user to confirm that a list of blocking variables and a list of non-blocking variables are correct for the database; prompting the user to confirm metadata for the dataset and for the list of non-blocking variables; if the user confirms the list of blocking variables, the list of non-blocking variables, and the metadata, adding a dataset corresponding to the table to a collection of datasets.
20 . The method of claim 19 , wherein the metadata includes a title for the dataset.
21 . The method of claim 19 , wherein the metadata includes a description for the dataset.
22 . The method of claim 19 , wherein the metadata includes a title for a non-blocking variable in the list of non-blocking variables.
23 . The method of claim 19 , wherein the metadata includes a description for a non-blocking variable in the list of non-blocking variables.
24 . An article comprising a machine-readable storage medium that stores executable instructions to represent a subset of a dataset table of rows and columns, the instructions causing a machine to:
select a set of blocking variables corresponding to blocking columns of the dataset table such that, for each row in the dataset table, a tuple of values for the blocking columns uniquely identifies the row within the dataset table; select a set of non-blocking variables corresponding to columns of the subset, the set of non-blocking variables disjoint from the set of blocking variables; and create a block information structure that includes the set of non-blocking variables and that includes, for each blocking variable in the set of blocking variables, a set of values.
25 . An article comprising a machine-readable storage medium that stores executable instructions to represent a subset of a dataset table of rows and columns, the instructions causing a machine to:
present a graphical user interface with controls representing a data cart and a plurality of datasets; receive user input that selects a dataset to add to the data cart from the plurality of datasets; generate a block information structure specifying the dataset; and add the block information structure to the data cart.Join the waitlist — get patent alerts
Track US2003126144A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.