IP Library Granted Patent US 9,430,473
Granted Patent B1
US 9,430,473 · App. 14/977,831 · Granted Aug 30, 2016

Data table performance optimization

Inventors: Shuo Li (Beijing, CN); Shu Hua Liu (Beijing, CN); Xin Ying Yang (Beijing, CN); Jian W. Zhang (Beijing, CN)
Assignee: International Business Machines Corporation
G06F17/3002G06F17/30442
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,430,473
App. No.
14/977,831
Granted
Aug 30, 2016
Kind
B1
Abstract

A method to optimize a database is provided. A processor determines a frequency of search for a plurality of columns in a table. A processor determines a length of the plurality of columns. A processor determines a rank for the plurality of columns based, at least in part, on both the frequency of search and the length of the plurality of columns. A processor generates a first set of combinations of the plurality of columns. A processor determines an optimization of the first set of combinations of the plurality of columns. A processor selects an optimal combination of the first set of combinations, wherein the optimization of the optimal combination is greater than the optimization for all other combinations in the first set of combinations. A processor moves the plurality of columns excluded from the optimal combination.

Claims (10)

1. A method of optimizing a database, the method comprising: determining, by one or more processors, a frequency of search for a plurality of columns in a table;

generating, by the one or more processors, at least one prefix value column corresponding to a column of the plurality of columns in the table, wherein the prefix value column has a prefix length shorter in length than the column of the plurality of columns in the table;

determining, by the one or more processors, a rank for the plurality of columns based on (i) the frequency of search, (ii) the length of the plurality of columns, and (iii) the prefix length of the at least one prefix value column;

generating, by the one or more processors, a first set of combinations of the plurality of columns, wherein the first set of combinations includes the at least one prefix value column;

generating, by the one or more processors, a second set of combinations of the plurality of columns, wherein the second set of combinations is based, at least in part, on the first set of combinations and at least one additional column from the plurality of columns excluded from the first set of combinations;

determining, by the one or more processors, a first optimization ratio of the first set of combinations of the plurality of columns, wherein the first optimization ratio is based, at least in part, on (i) the frequency of search for the plurality of columns included in the first set of combinations and (ii) a page utilization of the plurality of columns comprising the at least one prefix value column included in the first set of combinations;

determining, by the one or more processors, a second optimization ratio of the second set of combinations of the plurality of columns, wherein the second optimization ratio is based, at least in part, on (i) the frequency of search for the plurality of columns included in the second set of combinations and (ii) a page utilization of the plurality of columns comprising the at least one prefix value column included in the second set of combinations;

selecting, by the one or more processors, the first set of combinations or the second set of combinations as an optimal combination of the plurality of columns, wherein the optimal combination is based, at least in part, on the greater value of the first optimization ratio of the first set of combinations and the second optimization ratio of the second set of combinations;

adding, by the one or more processors, a pointer to the optimal combination of the first set of combinations, wherein the pointer includes the location of the plurality of columns excluded from the optimal combination; and

moving, by the one or more processors, the plurality of columns excluded from the optimal combination to a separate storage device than a storage device storing the plurality of columns in a table.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2022
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 061706/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2015
From: LI, SHUO; LIU, SHU HUA; YANG, XIN YING; ZHANG, JIAN W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 037347/0512 →
Continuity (1)
Continuation 14732918 · Jun 8, 2015