ACCESSING DATA IN A COLUMN STORE DATABASE BASED ON HARDWARE COMPATIBLE INDEXING AND REPLICATED REORDERED COLUMNS
First Claim
1. A method of relating data across tables in a column-store database, said method comprising:
- determining a row identifier of a first tuple in a first table;
reading an index at a row corresponding to the row identifier of the tuple of the first table to obtain another row identifier of a second tuple of another table; and
determining data related between the first and second tuples based on reading a memory at an address calculated from the row identifier in the index.
5 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention provide hardware-friendly indexing of databases. In particular, forward and reverse indexing are utilized to allow for easy traversal of primary key to foreign key relationships. A novel structure known as a hit list also allows for easy scanning of various indexes in hardware. Group indexing is provided for flexible support of complex group key definition, such as for date range indexing and text indexing. A Replicated Reordered Column (RRC) may also be added to the group index to convert random I/O pattern into sequential I/O of only needed column elements.
-
Citations
24 Claims
-
1. A method of relating data across tables in a column-store database, said method comprising:
-
determining a row identifier of a first tuple in a first table; reading an index at a row corresponding to the row identifier of the tuple of the first table to obtain another row identifier of a second tuple of another table; and determining data related between the first and second tuples based on reading a memory at an address calculated from the row identifier in the index. - View Dependent Claims (2, 3, 4)
-
-
5. A method of relating data of one tuple in one table with one or more tuples of another table, said method comprising:
-
determining a row identifier of a first tuple in a first table; reading an index at a row corresponding to the row identifier of the tuple of the first table to obtain a set of row identifiers of at least one tuple of another table; and determining data related between the first tuple of the first table and at least one tuple of the other table based on reading a memory at addresses calculated from the at least one row identifier in the index. - View Dependent Claims (6, 7, 8, 9, 10)
-
-
11. A method of searching for data in a column-store database, said method comprising:
-
identifying a group to which the data is a member; determining a row identifier corresponding to the group in a first table; reading an index at a row corresponding to the row identifier of the group to obtain a set of row identifiers of at least one tuple of another table; and retrieving data in the group based on reading memory at addresses calculated from the at least one row identifier in the index. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
Specification