IP Library Granted Patent US 9,390,162
Granted Patent B2
US 9,390,162 · App. 13/870,158 · Granted Jul 12, 2016

Management of a database system

Inventors: Rafal P. Konik (Oronoco, MN); Roger A. Mittelstadt (Byron, MN); Brian R. Muras (Rochester, MN); Mark W. Theuer (Rochester, MN)
Assignee: International Business Machines Corporation
G06F17/30631G06F17/30312
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,390,162
App. No.
13/870,158
Granted
Jul 12, 2016
Kind
B2
Abstract

A method, system, and computer program product to manage a database is disclosed. The method, system, and computer program product may include structuring the database to have a first table having an index and a second table. A first key of the first table may be related to a second key of the second table. The method, system, and computer program product may include creating an entry locator in the index. The method, system, and computer program product may include maintaining an association between the second key of the second table and the entry locator of the index.

Claims (18)

1. A computer-implemented method of managing a database, comprising:

structuring the database to have a fact table having an encoded vector index and a dimension table, a foreign key of the fact table related to a primary key of the dimension table;

creating an entry locator in the encoded vector index; and

maintaining an association between the primary key of the dimension table and the entry locator in the encoded vector index in response to at least one of a maintenance to the dimension table, a query to the database, a temporal element, and a refresh period, wherein the encoded vector index further comprises:

a symbol table for indicating which code values are assigned to which key values of the foreign key of the fact table;

a vector having a plurality of rows corresponding in a one-to-one relationship with a second plurality of rows in the fact table whereby, for each row of the plurality of rows in the vector, a code value located in the row serves to indicate that a key value of the foreign key to which the code value is assigned is located in a corresponding row of the second plurality of rows in the fact table; and

wherein the entry locator includes a column of the symbol table; and indicates, for each key value of the foreign key, which row of a third plurality of rows in the dimension table has a key value of the primary key that corresponds with the key value of the foreign key.

2. The method of claim 1 , wherein the column of the symbol table including a relative record number pertaining to the primary key of the dimension table.

3. A method comprising:

accessing an encoded vector index (EVI) for a fact table, wherein the EVI includes:

a symbol table for indicating which code values are assigned to which key values in the fact table;

a vector having a plurality of rows corresponding in a one-to-one relationship with a second plurality of rows in the fact table whereby, for each row of the plurality of rows in the vector, a code value located in the row serves to indicate that a key value to which the code value is assigned is located in a corresponding row of the second plurality of rows in the fact table; and

an entry locator for indicating, for each key value in the fact table, which row of a third plurality of rows in a dimension table has a primary key value that corresponds with the key value in the fact table, wherein the entry locator is a column of the symbol table;

selecting a key value in the fact table;

using the symbol table to identify a specific code value assigned to the selected key value;

identifying at least one row of the second plurality of rows in the fact table as having the selected key value by searching for rows of the first plurality of rows in the vector having the specific code value; and

using the entry locator to identify at least one row of the third plurality of rows in the dimension table as having a primary key value corresponding with the selected key value; and

wherein relative record numbers for rows of the third plurality of rows in the dimension table are listed in the column of the symbol table, wherein the key values in the fact table are listed in a second column of the symbol table, and wherein each row of a fourth plurality of rows in the symbol table includes a relative record number and a one key value in the fact table whereby the relative record number indicates that a primary key value in the dimension table corresponding to the one key value in the fact table is located in a row of the third plurality of rows in the dimension table that corresponds with the relative record number.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2013
From: KONIK, RAFAL P.; MITTELSTADT, ROGER A.; MURAS, BRIAN R.; THEUER, MARK W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 030285/0451 →
Continuity (1)
Related Publication 20140324874A1 · Oct 30, 2014