IP Library Granted Patent US 9,009,138
Granted Patent B2
US 9,009,138 · App. 13/163,309 · Granted Apr 14, 2015

Transparent analytical query accelerator

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,009,138
App. No.
13/163,309
Granted
Apr 14, 2015
Kind
B2
Abstract

A method and apparatus for transparent analytical query acceleration identifies within a database management system (DBMS) if a query is an analytical type. The query is processed with an analytical query processor if the query is the analytical type. In addition, the query is processed within the DBMS if the query is not the analytical type.

Claims (39)

1. A method for transparent analytical query acceleration comprising:

identifying, by use of a processor, within a database management system (DBMS) a query as an analytical type in response to a predefined query element, wherein the predefined query element is one of the query not including an index scan and the query not including a where predicate, and a processing cost of processing the query with an analytical query processor being less than a processing cost of processing the query with a transactional query processor of a general purpose computer within the DBMS;

processing the query with the analytical query processor if the query is the analytical type; and

processing the query with the transactional query processor within the DBMS if the query is not the analytical type.

2. The method of claim 1 , wherein the DBMS presents a single interface to an application for all queries.

3. The method of claim 1 , wherein the DBMS manages security, integrity, recoverability, availability, and software lifecycle management for the DBMS, the analytical query processor, and an analytical schema.

4. The method of claim 1 , wherein the transactional query processor processes the query on a transactional schema and the analytical query processor processes the query on an analytical schema.

5. The method of claim 4 , wherein the analytical schema comprises data of the transactional schema organized by analytical schema rules.

6. The method of claim 1 , wherein the identification is based on a heuristic comprising a comparison of the processing cost of processing the query with the analytical query processor and the processing cost of processing the query with the transactional query processor.

7. The method of claim 1 , wherein the query is identified as the analytical type if k 1 (c a −c t )+k 2 s+k 3 w+k 4 g>T is true, where each k is a constant greater than zero, c a is a cost of analytical processing, c t , is a cost of transactional processing, s equals 1 if the query does not comprise an index scan, w is a number of where predicates in the query, g is a number of groups in the query, and T is an analytical threshold.

8. An apparatus comprising:

a computer readable storage medium storing computer readable program code executable by a processor, the computer readable program code comprising:

an optimizer identifying within a transactional database management system (DBMS) a query as an analytical type in response to a predefined query element, wherein the predefined query element is one of the query not including an index scan and the query not including a where predicate, and a processing cost of processing the query with an analytical query processor being less than a processing cost of processing the query with a transactional query processor of a general purpose computer within the DBMS;

the analytical query processor processing the query if the query is the analytical type; and

the transactional query processor processing the query within the DBMS if the query is not the analytical type.

9. The apparatus of claim 8 , wherein the DBMS presents a single interface to an application for all queries.

10. The apparatus of claim 8 , wherein the DBMS manages security, integrity, recoverability, availability and software lifecycle management for the DBMS, the analytical query processor, and an analytical schema.

11. The apparatus of claim 8 , wherein the transactional query processor processes the query on a transactional schema and the analytical query processor processes the query on an analytical schema.

12. The apparatus of claim 11 , wherein the analytical schema comprises data of the transactional schema organized by analytical schema rules and wherein the query is identified as the analytical type if k 1 (c a −c t )+k 2 s+k 3 w+k 4 g>T is true, where each k is a constant greater then zero, c a is a cost of analytical processing, c 1 is a cost of transactional processing, s equals 1 if the query does not comprise an index scan, w is a number of where predicates in the query, g is a number of groups in the query, and T is an analytical threshold.

13. The apparatus of claim 8 , wherein the identification is based on a heuristic comprising a comparison of the processing cost of processing the query with the analytical query processor and the processing cost of processing the query with the transactional query processor.

14. A computer program product for transparent analytical query acceleration, the computer program product comprising:

a computer readable storage medium having computer readable program code embodied therein, the computer readable program code configured to:

identify within a transactional database management system (DBMS) a query as an analytical type in response to a predefined query element, wherein the predefined query element is one of the query not including an index scan and the query not including a where predicate, and a processing cost of processing the query with an analytical query processor being less than a processing cost of processing the query with a transactional query processor of a general purpose computer within the DBMS;

process the query with the analytical query processor if the query is the analytical type; and

process the query with the transactional query processor within the DBMS if the query is not the analytical type.

15. The computer program product of claim 14 , wherein the DBMS presents a single interface to an application for all queries.

16. The computer program product of claim 14 , wherein the DBMS manages security, integrity, recoverability, availability and software lifecycle management for the DBMS, the analytical query processor, and an analytical schema.

17. The computer program product of claim 14 , wherein the transactional query processor processes the query on a transactional schema and the analytical query processor processes the query on an analytical schema.

18. The computer program product of claim 17 , wherein the analytical schema comprises data of the transactional schema organized by analytical schema rules.

19. The computer program product of claim 14 , wherein the query is identified as k 1 (c a −c t )+k 2 s+k 3 w+k 4 g>T is true, where each k is a constant greater than zero, c a is a cost of analytical processing, c t is a cost of transactional processing, s equals 1 if the query does not comprise an index scan, w is a number of where predicates in the query, g is a number of groups in the query, and T is an analytical threshold.

20. A method for integrating a computer program product, comprising integrating computer readable program code into a computing system, wherein the code in combination with the computing system performs the following:

identifying within a transactional database management system (DBMS) a query as an analytical type in response to a predefined query element, wherein the predefined query element is one of the query not including an index scan and the query not including a where predicate, and a processing cost of processing the query with an analytical query processor being less than a processing cost of processing the query with a transactional query processor of a general purpose computer within the DBMS;

processing the query with the analytical query processor if the query is the analytical type; and

processing the query with the transactional query processor within the DBMS if the query is not the analytical type.

21. The method of claim 20 , wherein the DBMS presents a single interface to an application for all queries.

22. The method of claim 20 , wherein the DBMS manages security, integrity, recoverability, availability and software lifecycle management for the DBMS, the analytical query processor, and an analytical schema.

23. The method of claim 20 , wherein the transactional query processor processes the query on a transactional schema and the analytical query processor processes the query on an analytical schema.

24. The method of claim 23 , wherein the analytical schema comprises data of the transactional schema organized by analytical schema rules and wherein the query is identified as the analytical type if k 1 (c a −c t )+k 2 s+k 3 w+k 4 g>T is true, where each k is a constant greater than zero, c a is a cost of analytical processing, c t is a cost of transactional processing, s equals 1 if the query does not comprise an index scan, w is a number of where predicates in the query, g is a number of groups in the query, and T is an analytical threshold.

25. The method of claim 20 , wherein the identification is based on a heuristic comprising a comparison of the processing cost of processing the query with the analytical query processor and the processing cost of processing the query with the transactional query processor.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: WRP IP MANAGEMENT, LLC
Reel/Frame 049033/0410 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2011
From: DRAESE, OLIVER; HRLE, NAMIK; RUDDY, JAMES A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 026767/0507 →