Claims
- 1. A method of processing a relational query comprising:
evaluating at least one function contained in the relational query based on data stored in a multidimensional database.
- 2. The method of claim 1, wherein the at least one function is evaluated based on data in an analytic workspace.
- 3. The method of claim 1, wherein the relational query includes a MODEL clause and the at least one function comprises a MODEL function.
- 4. The method of claim 1, further comprising the step of:
loading the data into the analytic workspace in response to execution of the relational query.
- 5. The method of claim 1, further comprising:
creating the analytic workspace in response to execution of the relational query.
- 6. The method of claim 5, further comprising:
loading the data into the analytic workspace in response to execution of the relational query.
- 7. The method of claim 4, wherein said data that loads said analytic workspace is managed by a multidimensional engine; the method further comprising:
a step of performing at least one of aggregating said data and performing a calculation on said data, wherein said step of performing at least one of aggregating and performing a calculation is performed by said multidimensional engine prior to loading said analytic workspace.
- 8. The method of claim 1, wherein said step of evaluating is performed by a relational engine.
- 9. The method of claim 1, wherein said relation query is a first relational query and said first relational query causes an update of said data in said analytic workspace, the method further comprising:
executing a second relational query that accesses data that was updated by said first relational query.
- 10. The method of claim 1, wherein the multi-dimensional database serves as a surrogate for a hash table.
- 11. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 1.
- 12. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 2.
- 13. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 3.
- 14. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 4.
- 15. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 5.
- 16. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 6.
- 17. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 7.
- 18. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 8.
- 19. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 9.
- 20. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 10.
- 21. A system for processing a relational query comprising:
an analytic workspace to store data; an interface to the analytic workspace configured to allow random access to said data stored in said analytic workspace; and a relational engine configured to evaluate functions contained in the relational query based on data stored in said analytic workspace.
- 22. The system of claim 21, further comprising:
a multidimensional engine configured to perform aggregations and calculations on said data.
- 23. The system of claim 21, wherein said analytic workspace is created prior to the processing of the relational query.
- 24. The system of claim 21, wherein said analytic workspace is created in response to execution of the relational query.
- 25. The system of claim 21, further comprising means for storing said data in said analytic workspace.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of and claims the benefit of domestic priority from:
[0002] U.S. patent application Ser. No. 10/424,003 entitled “Methods of Navigating a Cube that is Implemented as a Relational Object,” filed on Apr. 25, 2003, which claims the benefit of priority from U.S. Provisional Application No. 60/379,870, entitled “Online Analytical Processing (OLAP) Operations and Access Structures for Data Stored in a Relational Database,” filed on May 10, 2002;
[0003] U.S. patent application Ser. No. 10/423,356 entitled “Using Relational Structures to Create and Support a Cube Within a Relational Database System,” filed on Apr. 25, 2003, which also claims the benefit of priority from U.S Provisional Application Ser. No. 0/379,870, entitled “Online Analytical Processing (OLAP) Operations and Access Structures for Data Stored in a Relational Database,” filed on May 10, 2002; and
[0004] U.S. patent application Ser. No. 10/417,732 entitled “Techniques for Managing What-If Analysis of Data Managed by a Relational Database System,” filed on Apr. 16, 2003; which claims the benefit of priority from U.S. Provisional Application Ser. No. 60/375,726, entitled “Integrating Online Analytical processing (OLAP) functions Into A Relational Database Management System (RDMBS),” filed on Apr. 26, 2002.
[0005] This application is related to U.S. patent application Ser. No. ______entitled “Using a Cache to Provide Cursor Isolation,” by Matthew Dombroski and Ekrem Soylemez, filed on the same day herewith.
[0006] The contents of all of which are incorporated by reference in their entirety for all purposes, as if fully set forth herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60379870 |
May 2002 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10424003 |
Apr 2003 |
US |
Child |
10898304 |
Jul 2004 |
US |