IP Library Granted Patent US 7,818,728
Granted Patent B1
US 7,818,728 · App. 11/395,003 · Granted Oct 19, 2010

Maximizing system resources used to decompress read-only compressed analytic data in a relational database table

Assignee: QD Technology LLC
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 7,818,728
App. No.
11/395,003
Granted
Oct 19, 2010
Kind
B1
Abstract

A method, computer program product and system for minimizing system resources used to decompress read-only compressed analytic data in a relational database table. An i-code list associated with a relational database table is converted into a programming language. The programming language is compiled in object code and stored in a module in the user's system. The object code is called with a pointer designating the particular row in the database containing the compressed data to be decompressed. The compressed data designated by the pointer is decompressed upon execution of the object code. By having the source code for decompressing the compressed data stored as object code in the user's system, the interpretation step (as used in the i-code method) is avoiding thereby reducing the number of machine cycles used to decompress the compressed data. As a result, query programs will be able to access large amounts of data more quickly.

Claims (50)

1. A method for minimizing system resources used to decompress read-only compressed analytic data comprising the steps of:

compiling a programming code for a relational database table on a load machine if there is a compiler installed on said load machine that is compatible with a compiler installed on a user's machine, wherein an i-code list associated with said relational database table is converted into said programming code;

compiling said programming code for said relational database table on said user's machine if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if said compiler installed on said user's machine is compatible with said programming code; and

installing on said user's machine a first package, wherein said first package comprises:

compressed data for said relational database table;

a control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores algorithms and parameters used to decompress compressed data in said relational database table;

said i-code list associated with said relational database table;

said programming code; and

said compiled programming code.

2. The method as recited in claim 1 further comprising the step of:

installing on said user's machine a second package if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if there is not a compiler installed on said user's machine that is compatible with said programming code, wherein said second package comprises:

compressed data for said relational database table;

said control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores parameters used to decompress compressed data in said relational database table; and said i-code list associated with said relational database table.

3. The method as recited in claim 2 , wherein said second package is installed in a file.

4. The method as recited in claim 1 , wherein said first package is installed in a file, wherein said compiled programming code is further installed in an executable program library.

5. The method as recited in claim 4 , wherein said executable program library comprises a dynamic load library.

6. A computer program product embodied in a computer readable storage medium for minimizing system resources used to decompress read-only compressed analytic data comprising the programming steps of:

compiling a programming code for a relational database table on a load machine if there is a compiler installed on said load machine that is compatible with a compiler installed on a user's machine, wherein an i-code list associated with said relational database table is converted into said programming code;

compiling said programming code for said relational database table on said user's machine if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if said compiler installed on said user's machine is compatible with said programming code; and

installing on said user's machine a first package, wherein said first package comprises:

compressed data for said relational database table;

a control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores algorithms and parameters used to decompress compressed data in said relational database table;

said i-code list associated with said relational database table;

said programming code; and

said compiled programming code.

7. The computer program product as recited in claim 6 further comprising the programming step of:

installing on said user's machine a second package if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if there is not a compiler installed on said user's machine that is compatible with said programming code, wherein said second package comprises: compressed data for said relational database table;

said control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores parameters used to decompress compressed data in said relational database table; and

said i-code list associated with said relational database table.

8. The computer program product as recited in claim 7 , wherein said second package is installed in a file.

9. The computer program product as recited in claim 6 , wherein said first package is installed in a file, wherein said compiled programming code is further installed in an executable program library.

10. The computer program product as recited in claim 9 , wherein said executable program library comprises a dynamic load library.

11. A system, comprising:

a memory unit for storing a computer program operable for minimizing system resources used to decompress read-only compressed analytic data; and

a processor coupled to said memory unit, wherein said processor, responsive to said computer program, comprises:

circuitry for compiling a programming code for a relational database table on a load machine if there is a compiler installed on said load machine that is compatible with a compiler installed on a user's machine, wherein an i-code list associated with said relational database table is converted into said programming code;

circuitry for compiling said programming code for said relational database table on said user's machine if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if said compiler installed on said user's machine is compatible with said programming code; and

circuitry for installing on said user's machine a first package, wherein said first package comprises:

compressed data for said relational database table;

a control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores algorithms and parameters used to decompress compressed data in said relational database table;

said i-code list associated with said relational database table;

said programming code; and

said compiled programming code.

12. The system as recited in claim 11 , wherein said processor further comprises:

circuitry for installing on said user's machine a second package if there is not a compiler installed on said load machine that is compatible with said compiler installed on said user's machine and if there is not a compiler installed on said user's machine that is compatible with said programming code, wherein said second package comprises:

compressed data for said relational database table;

said control block for said relational database table, wherein said control block stores information regarding compression algorithms used to compress data in said relational database table, wherein said control block further stores parameters used to decompress compressed data in said relational database table; and said i-code list associated with said relational database table.

13. The system as recited in claim 12 , wherein said second package is installed in a file.

14. The system as recited in claim 11 , wherein said first package is installed in a file, wherein said compiled programming code is further installed in an executable program library.

15. The system as recited in claim 14 , wherein said executable program library comprises a dynamic load library.

Assignments (3)
SECURITY AGREEMENT Recorded Dec 12, 2012
From: QD TECHNOLOGY, LLC
To: HAKIM, KAMRAN; TUCHMAN, JOSEPH A.
Reel/Frame 029457/0240 →
SECURITY AGREEMENT Recorded Sep 28, 2007
From: QD TECHNOLOGY, LLC
To: LYRICAL PARTNERS, L.P.
Reel/Frame 019897/0520 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2006
From: OLSON, JACK EDWARD
To: QD TECHNOLOGY LLC
Reel/Frame 017711/0322 →
Continuity (1)
Provisional Application 6066832200 · Apr 4, 2005