Multi-fact query processing in data processing system
First Claim
Patent Images
1. A method comprising:
- receiving, by a query optimizer executing on one or more processors of a computing device, a multi-fact star schema query that is executable to retrieve data from two or more fact tables of a database, wherein the two or more fact tables each references a common dimension table of the database;
internally transforming, by the query optimizer, the multi-fact star schema query into a group of single-fact sub-queries, wherein each sub-query of the group of single-fact sub-queries references only one of the two or more fact tables;
enumerating, by the query optimizer, the group of single-fact sub-queries to determine a query execution plan; and
executing, by a runtime execution engine executing on the one or more processors, the multi-fact star schema query according to the query execution plan to retrieve the data from the two or more fact tables of the database.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for optimizing a multi-fact star schema query to retrieve data from two or more fact tables of a database. The optimization techniques may include internally transforming a received multi-fact star schema query into a group of single-fact sub-queries, thereby reducing or eliminating certain constraints during query processing. The group of sub-queries may be enumerated to determine a query execution plan. The multi-fact star schema query may be executed according to the query execution plan to retrieve the data from the two or more fact tables of the database.
44 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a query optimizer executing on one or more processors of a computing device, a multi-fact star schema query that is executable to retrieve data from two or more fact tables of a database, wherein the two or more fact tables each references a common dimension table of the database; internally transforming, by the query optimizer, the multi-fact star schema query into a group of single-fact sub-queries, wherein each sub-query of the group of single-fact sub-queries references only one of the two or more fact tables; enumerating, by the query optimizer, the group of single-fact sub-queries to determine a query execution plan; and executing, by a runtime execution engine executing on the one or more processors, the multi-fact star schema query according to the query execution plan to retrieve the data from the two or more fact tables of the database. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable storage medium encoded with instructions that, when executed, cause one or more processors of a computing device to:
-
receive, by a query optimizer executing on the processor, a multi-fact star schema query that is executable to retrieve data from two or more fact tables of a database, wherein the two or more fact tables each references a common dimension table of the database; internally transform, by the query optimizer, the multi-fact star schema query into a group of single-fact sub-queries, wherein each sub-query of the group of single-fact sub-queries references only one of the two or more fact tables; enumerate, by the query optimizer, the group of single-fact sub-queries to determine a query execution plan; and execute, by a runtime execution engine, the multi-fact star schema query according to the query execution plan to retrieve the data from the two or more fact tables of the database. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computing device, comprising:
-
one or more processors; a query optimizer executable by the one or more processors to receive a multi-fact star schema query that is executable to retrieve data from two or more fact tables of a database, wherein the two or more fact tables each references a common dimension table of the database; a multi-fact transformation engine executable by the one or more processors to internally transform the multi-fact star schema query into a group of single-fact sub-queries, wherein each sub-query of the group of single-fact sub-queries references only one of the two or more fact tables; an optimizer join enumerator executable by the one or more processors to enumerate the group of single-fact sub-queries to determine a query execution plan; and a runtime execution engine executable by the one or more processors to execute the multi-fact star schema query according to the query execution plan to retrieve the data from the two or more fact tables of the database. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification