IP Library Granted Patent US 9,286,370
Granted Patent B2
US 9,286,370 · App. 12/711,562 · Granted Mar 15, 2016

Viewing a dimensional cube as a virtual data source

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,286,370
App. No.
12/711,562
Granted
Mar 15, 2016
Kind
B2
Abstract

Techniques are disclosed for generating a dimensional query that includes dimensional and relational constructs. A report specification for retrieving data from a dimensional data model is received. The report specification includes the dimensional and relational constructs. The dimensional query is generated from the report specification, based on a predetermined sequence of applying the dimensional and relational constructs.

Claims (52)

1. A computer-implemented method to interleave dimensional and relational query constructs in a single, dimensional query, based on a report specification and a predetermined sequence and without introducing semantic inconsistencies, the computer-implemented method comprising:

receiving user indication of a plurality of query constructs to include in a the report specification to retrieve a set of query results from a dimensional data model, wherein the report specification is expressed in a predefined reporting language of a higher level of abstraction than both a relational query language and a dimensional query language, wherein the dimensional data model includes a cube having a plurality of dimensions, at least one dimension including a hierarchy of members, wherein the plurality of query constructs includes the dimensional and relational query constructs;

generating the single, dimensional query from the report specification by operation of the one or more computer processors and based on the predetermined sequence of applying the plurality of query constructs in the single, dimensional query and based further on a plurality of mapping rules specifying how to map between the dimensional data model and a corresponding relational data model, in order to prevent one or more semantic inconsistencies in the set of query results when interleaving the dimensional and relational query constructs in the single, dimensional query;

wherein the predetermined sequence specifies to arrange the plurality of query constructs in an order of application of: a dimensional slicer, a dimensional pre-aggregation detail filter, a relational post-aggregation detail filter, a dimensional set filtering operator, a dimensional suppression, a relational summary filter, a relational sort, and a relational summary operator;

wherein the plurality of mapping rules includes a model mapping rule, a level mapping rule, a leaf mapping rule, a cell mapping rule, a ragged mapping rule, a fact mapping rule, and a child mapping rule;

wherein the single, dimensional query is executed in order to generate the set of query results; and

outputting the set of query results responsive to the report specification.

2. The computer-implemented method of claim 1 , wherein the dimensional data model further includes a fact table, wherein each dimension has one or more properties, wherein the hierarchy of the at least one dimension includes a plurality of levels, wherein the single, dimensional query is generated from the report specification further based on a predetermined mapping between the dimensional data model and a corresponding relational data model, wherein plurality of mapping rules includes:

the model mapping rule, which specifies that the dimensional data model maps to a relational data warehouse snowflake model;

the level mapping rule, which specifies that each level maps to a relational column;

the property mapping rule, which specifies that each property maps to a relational column;

the leaf mapping rule, which specifies to enforce referential integrity by verifying that each leaf member of the hierarchy has at least one corresponding record in the fact table;

the cell mapping rule, which specifies to enforce referential integrity by verifying that each cell in the fact table has a single entry in a corresponding dimension;

the ragged mapping rule, which specifies that any ragged and unbalanced hierarchy maps to a column having a null value;

the fact mapping rule, which specifies that to verify that the fact table contains a column for each measure; and

the child mapping rule, which specifies to map any parent-child hierarchy to a corresponding level-based hierarchy based on distances from each parent-child-hierarchy member to a parent-child-hierarchy root member.

3. The computer-implemented method of claim 1 , wherein the model mapping rule specifies that the dimensional data model maps to a relational data warehouse snowflake model.

4. The computer-implemented method of claim 1 , wherein the level mapping rule specifies that each hierarchy level maps to a relational column.

5. The computer-implemented method of claim 1 , wherein the property mapping rule specifies that each dimension property maps to a relational column.

6. The computer-implemented method of claim 1 , wherein the leaf mapping rule specifies to enforce referential integrity by verifying that each hierarchy leaf member has at least one corresponding record in a fact table.

7. The computer-implemented method of claim 1 , wherein the cell mapping rule specifies to enforce referential integrity by verifying that each fact table cell has a single entry in a corresponding dimension.

8. The computer-implemented method of claim 1 , wherein the ragged mapping rule specifies that any ragged and unbalanced hierarchy maps to a column having a null value.

9. The computer-implemented method of claim 1 , wherein the fact mapping rule specifies to verify that each fact table contains a column for each measure.

10. The computer-implemented method of claim 1 , wherein the child mapping rule specifies to map any parent-child hierarchy to a corresponding level-based hierarchy based on distances from each parent-child-hierarchy member to a parent-child-hierarchy root member.

11. A computer-readable storage medium containing a program which, when executed, performs an operation to interleave dimensional and relational query constructs in a single, dimensional query, based on a report specification and a predetermined sequence and without introducing semantic inconsistencies, the operation comprising:

receiving user indication of a plurality of query constructs to include in the report specification to retrieve a set of query results from a dimensional data model, wherein the report specification is expressed in a predefined reporting language of a higher level of abstraction than both a relational query language and a dimensional query language, wherein the dimensional data model includes a cube having a plurality of dimensions, at least one dimension including a hierarchy of members, wherein the plurality of query constructs includes the dimensional and relational query constructs;

generating the single, dimensional query from the report specification by operation of the one or more computer processors when executing the program and based on the predetermined sequence of applying the plurality of query constructs in the single, dimensional query and based further on a plurality of mapping rules specifying how to map between the dimensional data model and a corresponding relational data model, in order to prevent one or more semantic inconsistencies in the set of query results when interleaving the dimensional and relational query constructs in the single, dimensional query;

wherein the predetermined sequence specifies to arrange the plurality of query constructs in an order of application of: a dimensional slicer, a dimensional pre-aggregation detail filter, a relational post-aggregation detail filter, a dimensional set filtering operator, a dimensional suppression, a relational summary filter, a relational sort, and a relational summary operator;

wherein the plurality of mapping rules includes a model mapping rule, a level mapping rule, a leaf mapping rule, a cell mapping rule, a ragged mapping rule, a fact mapping rule, and a child mapping rule;

wherein the single, dimensional query is executed in order to generate the set of query results; and

outputting the set of query results responsive to the report specification.

12. The computer-readable storage medium of claim 11 , wherein the model mapping rule specifies that the dimensional data model maps to a relational data warehouse snowflake model.

13. The computer-readable storage medium of claim 11 , wherein the level mapping rule specifies that each hierarchy level maps to a relational column.

14. The computer-readable storage medium of claim 11 , wherein the property mapping rule specifies that each dimension property maps to a relational column.

15. The computer-readable storage medium of claim 11 , wherein the leaf mapping rule specifies to enforce referential integrity by verifying that each hierarchy leaf member has at least one corresponding record in a fact table.

16. The computer-readable storage medium of claim 11 , wherein the cell mapping rule specifies to enforce referential integrity by verifying that each fact table cell has a single entry in a corresponding dimension.

17. The computer-readable storage medium of claim 11 , wherein the ragged mapping rule specifies that any ragged and unbalanced hierarchy maps to a column having a null value.

18. A system to interleave dimensional and relational query constructs in a single dimensional query, based on a report specification and a predetermined sequence and without introducing semantic inconsistencies, the system comprising:

one or more computer processors; and

a memory containing a program, which when executed by the one or more computer processors is configured to perform an operation comprising:

receiving user indication of a plurality of query constructs to include in the report specification to retrieve a set of query results from a dimensional data model, wherein the report specification is expressed in a predefined reporting language of a higher level of abstraction than both a relational query language and a dimensional query language, wherein the dimensional data model includes a cube having a plurality of dimensions, at least one dimension including a hierarchy of members, wherein the plurality of query constructs includes the dimensional and relational query constructs;

generating the single, dimensional query from the report specification based on the predetermined sequence of applying the plurality of query constructs in the single, dimensional query and based further on a plurality of mapping rules specifying how to map between the dimensional data model and a corresponding relational data model, in order to prevent one or more semantic inconsistencies in the set of query results when interleaving the dimensional and relational query constructs in the single, dimensional query;

wherein the predetermined sequence specifies to arrange the plurality of query constructs in an order of application of: a dimensional slicer, a dimensional pre-aggregation detail filter, a relational post-aggregation detail filter, a dimensional set filtering operator, a dimensional suppression, a relational summary filter, a relational sort, and a relational summary operator;

wherein the plurality of mapping rules includes a model mapping rule, a level mapping rule, a leaf mapping rule, a cell mapping rule, a ragged mapping rule, a fact mapping rule, and a child mapping rule;

wherein the single, dimensional query is executed in order to generate the set of query results; and

outputting the set of query results responsive to the report specification.

19. The system of claim 18 , wherein the model mapping rule specifies that the dimensional data model maps to a relational data warehouse snowflake model.

20. The system of claim 18 , wherein the level mapping rule specifies that each hierarchy level maps to a relational column.

21. The system of claim 18 , wherein the property mapping rule specifies that each dimension property maps to a relational column.

22. The system of claim 18 , wherein the leaf mapping rule specifies to enforce referential integrity by verifying that each hierarchy leaf member has at least one corresponding record in a fact table.

23. The system of claim 18 , wherein the cell mapping rule specifies to enforce referential integrity by verifying that each fact table cell has a single entry in a corresponding dimension.

24. The system of claim 18 , wherein the ragged mapping rule specifies that any ragged and unbalanced hierarchy maps to a column having a null value.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2024
From: DAEDALUS BLUE LLC
To: TAIWAN SEMICONDUCTOR MANUFACTURING COMPANY, LIMITED
Reel/Frame 066749/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: DAEDALUS GROUP, LLC
To: DAEDALUS BLUE LLC
Reel/Frame 051737/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP, LLC
Reel/Frame 051710/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP LLC
Reel/Frame 051032/0784 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2010
From: CUSHING, DAVID B.; PETITCLERC, MARTIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023983/0673 →