Claims
- 1. A method of operating an analytical server which is positioned between a client and a Relational Database Management System (RDBMS), the method operable to provide an interface between the client and a relational database located on the RDBMS, the relational database having fact tables, dimension tables, and metadata describing the relationships between the fact and dimension tables, the method comprising:
(a) receiving in the analytical server, from the RDBMS, at least a portion of the metadata information regarding the relational database and its organization, including information about a logical hierarchy of the fact and dimension tables; (b) receiving in the analytical server, from the client, a metric query; (c) determining, based on the received information regarding the logical hierarchy of the fact and dimension tables and based on the metric query received from the client, which hierarchical levels of the fact and dimension tables are available in the relational database for responding to the metric query; (d) determining at least one database query according to the available hierarchical levels of the fact and dimension tables; and (e) sending the determined at least one database query to the RDBMS whereby the metric query can be responded to by the analytical server based on the responses of the RDBMS to the determined at least one database query.
- 2. The method of claim 1 wherein a star schema is defined in the relational database, wherein the star schema comprises a single fact table and zero or more dimension tables which can be joined to the fact table according to selection constraints and aggregate groupings specified in the metadata.
- 3. The method of claim 2 wherein the metadata includes a table which stores the supported level for each dimension used in the star schema.
- 4. The method of claim 1 wherein the fact and dimension tables of the relationship database includes a time-dimension table.
- 5. The method of claim 4 wherein the time-dimension table supports first- and second-level dimensions.
- 6. The method of claim 5, wherein the first-level dimension designates “years” and wherein the second-level dimension table designates “months.”
- 7. The method of claim 4 wherein the fact and dimension tables of the relationship database includes at least two time-dimension tables, wherein one time-dimension table supports a first certain hierarchical level and wherein a second time-dimension table supports a second certain hierarchical level.
- 8. The method of claim 1 wherein the metadata further comprises security hierarchy levels assigned to certain measures within the relational database and wherein the at least a portion of the metadata received in the analytical server, from the RDBMS, includes information about the security hierarchy, the method further comprising determining, based in part on the received information regarding the security hierarchy of the fact and dimension tables and based on the metric query received from the client, which measures of the fact and dimension tables are available in the relational database for responding to the metric query.
- 9. The method of claim 1 and further comprising:
collecting usage statistics based upon the required and availability and use of the fact and dimension tables within the database; and reporting the usage statistics, the reporting of the usage statistics based at least in part on the hierarchical level of the fact and dimension tables accessed.
- 10. The method of claim 1 and further comprising:
receiving a plurality of metric queries from the client, the plurality of metric queries requesting at least two metrics which are broken down at the same hierarchical level; and sending at least one database query to the RDBMS which retrieves measures from the RDBMS which are usable in common between the at least two metrics.
- 11. A method of operating an analytical server which is positioned between a client and a Relational Database Management System (RDBMS), the method operable to provide an interface between the client and a relational database located on the RDBMS, the relational database having fact tables, dimension tables, and metadata describing the relationships between the fact and dimension tables, wherein the fact tables include measures which can be additive or non-additive, and wherein the metadata includes a designation of which measures are additive and which measures are non-additive, the method comprising:
(a) receiving in the analytical server, from the RDBMS, at least a portion of the metadata information regarding the relational database and its organization, including information about whether certain measures are additive and information about a logical hierarchy of the fact and dimension tables; (b) receiving in the analytical server, from the client, a metric query, the metric query calling for a metric broken down across a dimension and also calling for a roll-up of that metric; (c) determining, based on the metric query received from the client and based on the received information from the RDBMS regarding the logical hierarchy of the fact and dimension tables and whether the measures of the requested metric are additive, which hierarchical levels of the fact and dimension tables are available in the relational database for responding to the metric query; (d) determining at least one database query according to the available hierarchical levels of the fact and dimension tables; and (e) sending the determined at least one database query to the RDBMS whereby the metric query can be responded to by the analytical server based on the responses of the RDBMS to the determined at least one database query, whereby the response is tailored to the most efficient hierarchical level necessary depending on whether the measures of the requested metric are additive.
- 12. The method of claim 11 wherein the designation of which measures are additive and which are non-additive further specifies by dimension which measures are additive and which are non-additive.
- 13. The method of claim 12 wherein the determining of the at least one database query takes into account whether the requested metric is additive specifically across the requested dimension.
- 14. A method of operating an analytical server which is positioned between a client and a Relational Database Management System (RDBMS), the method operable to provide an interface between the client, configured to have a certain security level, and a relational database located on the RDBMS, the relational database having fact tables, dimension tables, and metadata describing the relationships between the fact and dimension tables, the method comprising:
(a) receiving in the analytical server, from the RDBMS, at least a portion of the metadata information regarding the relational database and its organization, including information about a logical hierarchy of the fact and dimension tables; (b) receiving in the analytical server, from the client, a metric query; (c) determining, based on the metric query received from the client and based on the received information from the RDBMS regarding the logical hierarchy of the fact and dimension tables and based on the security level to which the client is configured, which hierarchical levels of the fact and dimension tables are available in the relational database for responding to the metric query.
- 15. The method of claim 14 and further comprising determining whether any response to the metric query is possible for the client's configured security level.
- 16. The method of claim 15 and further comprising determining at least one database query according to the available hierarchical levels of the fact and dimension tables based on the client's configured security level.
- 14. The method of claim 14 wherein the client's security level is set according to a user's log-in.
- 15. A method of operating an analytical server which is positioned between a client and a Relational Database Management System (RDBMS), the method operable to provide an interface between the client and a relational database located on the RDBMS, the relational database having fact tables, dimension tables, and metadata describing the relationships between the fact and dimension tables, the method comprising:
(a) receiving in the analytical server, from the RDBMS, at least a portion of the metadata information regarding the relational database and its organization, including information about a logical hierarchy of the fact and dimension tables; (b) receiving in the analytical server, from the client, a metric query; (c) determining, based on the received information regarding the logical hierarchy of the fact and dimension tables and based on the metric query received from the client, which hierarchical levels of the fact and dimension tables are available in the relational database for responding to the metric query, wherein at least one measure within the fact and dimension tables are insufficiently fine in a requested dimension in order to respond to the metric query; (d) determining, according to the available hierarchical levels of the fact and dimension tables, at least one metric by which the at least one measure which was unavailable at the requested fineness can be approximated by the using the measure along the requested dimension at a higher hierarchical level than the one needed to directly respond to the metric query; and (e) sending a database query to the RDBMS based on the determining of available hierarchical levels of the fact and data tables and upon the at least one higher hierarchical level for the needed measure along the dimension which was unavailable at the needed hierarchical level.
- 16. The method of claim 15 wherein the measure which was unavailable at the requested fineness was a time measure.
- 17. The method of claim 16 wherein the requested hierarchical level along the time dimension was for a measure broken down by month.
- 18. The method of claim 17 wherein to approximate the measure on the monthly basis, the measure broken down by quarter is divided by three and assigned to the requested months.
- 19. The method of claim 18 wherein to approximate the measure on the monthly basis, the measure is repeated at the requested months.
- 20. The method of claim 19 wherein the measure was an average.
RELATED APPLICATIONS
[0001] This application depends and claims priority from U.S. Provisional Patent Application No. 60/197,894 (filed Apr. 17, 2001) and No. 60/199,975 (filed Apr. 27, 2001), which are hereby incorporated by reference herein.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60197894 |
Apr 2000 |
US |
|
60199975 |
Apr 2000 |
US |