IP Library Granted Patent US 8,983,993
Granted Patent B2
US 8,983,993 · App. 13/718,190 · Granted Mar 17, 2015

Data warehouse queries using SPARQL

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 8,983,993
App. No.
13/718,190
Granted
Mar 17, 2015
Kind
B2
Abstract

Disclosed is a system allowing to query data warehouses using SPARQL. An aspect of the system may support the representation of multidimensional data as virtual graphs. Another aspect of the system may provide mapping of SPARQL queries directed against multidimensional data vis-à-vis the graphs to native queries directed against the multidimensional data. Responses from the native queries may then be translated to a SPARQL response format.

Claims (57)

1. A computer-implemented method for querying a multidimensional database configured according to a dimensional model, the method comprising:

at a computing device having one or more processors and memory storing one or more programs for execution by the one or more processors:

receiving a Simple Protocol And Resource Description Framework Query Language (SPARQL) query having one or more query parameters on the multidimensional database comprising references to one or more fact tables and one or more dimension tables in the multidimensional database, the multidimensional database having one or more native query languages to access the multidimensional database, none of which are SPARQL;

generating a native query from the SPARQL query using a mapping file comprising metadata that describes the multidimensional database, including:

automatically mapping one or more columns in the multidimensional database to the one or more query parameters in the SPARQL query; wherein

the mapping is serialized with a target vocabulary; and

the target vocabulary includes one of: a R2RML vocabulary, a D2RQ vocabulary, or a QB4OLAP vocabulary;

wherein the native query is expressed in one of the native query languages of the multidimensional database;

executing the native query on the multidimensional database;

receiving a native result comprising data stored in the multidimensional database resulting from execution of the native query against the multidimensional database; and

generating a SPARQL result from the native result using the mapping file, the SPARQL result representing a response to the SPARQL query.

2. The method of claim 1 wherein the multidimensional database is a data warehouse, the native query language is Structured Query Language (SQL), and the native query is expressed in SQL.

3. The method of claim 1 wherein the multidimensional database is organized in a star schema.

4. The method of claim 1 wherein the multidimensional database is organized in a snowflake schema.

5. The method of claim 1 wherein the native result further comprises one or more aggregations of data stored in the multidimensional database that was retrieved in response to the native query.

6. The method of claim 1 further comprising generating the mapping file including:

extracting from the multidimensional database the metadata that describes the multidimensional database; and

generating from the metadata correspondences between objects of the multidimensional database and Resource Description Framework (RDF) triples that represent the objects of the multidimensional database.

7. The method of claim 1 wherein the native query is expressed as an Multidimensional Expressions (MDX) query.

8. The method of claim 1 , wherein the mapping includes:

mapping a first RDF class specified in the SPARKQLE query with a first column in the multidimensional database; and

mapping a first property corresponding to the first RDF class specified in the SPARQLE query with first values corresponding to the first column in the multidimensional database.

9. A database query system comprising:

a processor; and

a data storage device having stored thereon computer executable program code, which, when executed by the processor, causes the processor to:

receive a SPARQL query having one or more query parameters on the multidimensional database comprising references to one or more fact tables and one or more dimension tables in the multidimensional database, the multidimensional database having one or more native query languages to access the multidimensional database, none of which are SPARQL;

generate a native query from the SPARQL query using a mapping file comprising metadata that describes the multidimensional database, including:

automatically mapping one or more columns in the multidimensional database to the one or more query parameters in the SPARQL query; wherein

the mapping is serialized with a target vocabulary; and

the target vocabulary includes one of: a R2RML vocabulary, a D2RQ vocabulary, or a QB4OLAP vocabulary;

wherein the native query is expressed in one of the native query languages of the multidimensional database;

execute the native query on the multidimensional database;

receive a native result comprising data stored in the multidimensional database resulting from execution of the native query against the multidimensional database; and

generate a SPARQL result from the native result using the mapping file, the SPARQL result representing a response to the SPARQL query.

10. The system of claim 9 wherein the multidimensional database is a data warehouse, the native query language is Structured Query Language (SQL), and the native query is expressed in SQL.

11. The system of claim 9 wherein the multidimensional database is organized in a star schema or a snowflake schema.

12. The system of claim 9 wherein the native result further comprises one or more aggregations of data stored in the multidimensional database that was retrieved in response to the native query.

13. The system of claim 9 wherein the computer executable program code, which, when executed by the processor, further causes the processor to:

extract from the multidimensional database the metadata that describes the multidimensional database; and

generate from the metadata correspondences between objects of the multidimensional database and Resource Description Framework (RDF) triples that represent the objects of the multidimensional database.

14. The system of claim 9 wherein the native query is expressed as an Multidimensional Expressions (MDX) query.

15. A non-transitory computer-readable storage medium having stored thereon computer executable program code, which, when executed by a computer, causes the computer to:

receive a SPARQL query having one or more query parameters on the multidimensional database comprising references to one or more fact tables and one or more dimension tables in the multidimensional database, the multidimensional database having one or more native query languages to access the multidimensional database, none of which are SPARQL;

generate a native query from the SPARQL query using a mapping file comprising metadata that describes the multidimensional database, including:

automatically mapping one or more columns in the multidimensional database to the one or more query parameters in the SPARQL query; wherein

the mapping is serialized with a target vocabulary; and

the target vocabulary includes one of: a R2RML vocabulary, a D2RQ vocabulary, or a QB4OLAP vocabulary;

wherein the native query is expressed in one of the native query languages of the multidimensional database;

execute the native query on the multidimensional database;

receive a native result comprising data stored in the multidimensional database resulting from execution of the native query against the multidimensional database; and

generate a SPARQL result from the native result using the mapping file, the SPARQL result representing a response to the SPARQL query.

16. The non-transitory computer-readable storage medium of claim 15 wherein the multidimensional database is a data warehouse, the native query language is Structured Query Language (SQL), and the native query is expressed in SQL.

17. The non-transitory computer-readable storage medium of claim 15 wherein the multidimensional database is organized in a star schema or a snowflake schema.

18. The non-transitory computer-readable storage medium of claim 15 wherein the native result further comprises one or more aggregations of data stored in the multidimensional database that was retrieved in response to the native query.

19. The non-transitory computer-readable storage medium of claim 15 wherein the computer executable program code, which, when executed by the computer, further causes the computer to:

extract from the multidimensional database the metadata that describes the multidimensional database; and

generate from the metadata correspondences between objects of the multidimensional database and Resource Description Framework (RDFS triples that represent the objects of the multidimensional database.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2012
From: SENART, ALINE; FOLLENFANT, CORENTIN; GAZET, ANNE-ELISABETH
To: SAP AG
Reel/Frame 029490/0199 →