Systems and methods for optimizing data analysis
First Claim
1. A method of optimizing a computer for performing queries of a database, the database storing a plurality of metric records in a computer memory, each metric record comprising at least one measure data value and a plurality of hierarchy data values, wherein each hierarchy data value is in a hierarchy dimension, wherein each hierarchy dimension comprises at least one hierarchy level, said at least one hierarchy level including a lowest hierarchy level, wherein each hierarchy level comprises at least one distinct hierarchy member;
- and wherein each hierarchy data value matches a hierarchy member in the lowest level of the corresponding hierarchy dimension, the method comprising;
a) determining the number of distinct members of the lowest hierarchy level of each hierarchy dimension and determining a unique hierarchy identifier (ID) for such distinct member;
b) determining the hierarchy dimension having the fewest number of distinct members in its lowest level;
c) ranking the hierarchy dimensions by number of distinct members in the respective lowest level;
d) generating a first hypergraph tree for the hierarchy dimension having the fewest number of distinct members in its lowest level, wherein the first hypergraph tree comprises a tier for each hierarchy dimension;
e) generating one or more additional hypergraph trees, each additional hypergraph tree for a hierarchy dimension having more than the fewest number of distinct members in its lowest level, wherein each additional hypergraph tree comprises at least one tier for a hierarchy dimension and each additional hypergraph tree has fewer than the number of tiers in the first hypergraph tree;
wherein each hypergraph tree comprises a plurality of nodes, and wherein each node corresponds to one of the unique hierarchy IDs, and wherein each node comprises at least one edge weighting comprising a determined measure data value,wherein all of the nodes in a tier correspond to the same hierarchy dimension, andwherein each generated hyperqraph tree uniquely corresponds to a different hierarchy dimension;
f) receiving, via a dashboard interface displayed on a networked computing device, a query comprising one or more search parameters;
g) identifying a hierarchy dimension for each of the one or more search parameters;
h) selecting, based on the one or more identified hierarchy dimensions, one of the first hyperqraph tree and the one or more additional hypergraph trees;
i) searching the selected hyperqraph tree to perform the query; and
j) returning a result of the query to the networked computing device for presentation in the dashboard interface.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems are provided for optimizing data analysis. An example method for optimizing a computer for performing queries of a database can include determining a number of distinct members in a lowest hierarchy level of each hierarchy dimension and determining a unique hierarchy identifier for such distinct member; determining the hierarchy dimension with the fewest number of distinct members in its lowest level; ranking the hierarchy dimensions by the number of distinct members in the lowest level; generating a first hypergraph tree for the hierarchy dimension with the fewest number of distinct members in its lowest level; and generating an additional hypergraph tree for a hierarchy dimension having more than the fewest number of distinct members in its lowest level. Each hypergraph tree includes multiple nodes and each node corresponds to one of the unique hierarchy identifiers. The additional hypergraph tree includes fewer tiers than the first hypergraph tree.
81 Citations
24 Claims
-
1. A method of optimizing a computer for performing queries of a database, the database storing a plurality of metric records in a computer memory, each metric record comprising at least one measure data value and a plurality of hierarchy data values, wherein each hierarchy data value is in a hierarchy dimension, wherein each hierarchy dimension comprises at least one hierarchy level, said at least one hierarchy level including a lowest hierarchy level, wherein each hierarchy level comprises at least one distinct hierarchy member;
- and wherein each hierarchy data value matches a hierarchy member in the lowest level of the corresponding hierarchy dimension, the method comprising;
a) determining the number of distinct members of the lowest hierarchy level of each hierarchy dimension and determining a unique hierarchy identifier (ID) for such distinct member; b) determining the hierarchy dimension having the fewest number of distinct members in its lowest level; c) ranking the hierarchy dimensions by number of distinct members in the respective lowest level; d) generating a first hypergraph tree for the hierarchy dimension having the fewest number of distinct members in its lowest level, wherein the first hypergraph tree comprises a tier for each hierarchy dimension; e) generating one or more additional hypergraph trees, each additional hypergraph tree for a hierarchy dimension having more than the fewest number of distinct members in its lowest level, wherein each additional hypergraph tree comprises at least one tier for a hierarchy dimension and each additional hypergraph tree has fewer than the number of tiers in the first hypergraph tree; wherein each hypergraph tree comprises a plurality of nodes, and wherein each node corresponds to one of the unique hierarchy IDs, and wherein each node comprises at least one edge weighting comprising a determined measure data value, wherein all of the nodes in a tier correspond to the same hierarchy dimension, and wherein each generated hyperqraph tree uniquely corresponds to a different hierarchy dimension; f) receiving, via a dashboard interface displayed on a networked computing device, a query comprising one or more search parameters; g) identifying a hierarchy dimension for each of the one or more search parameters; h) selecting, based on the one or more identified hierarchy dimensions, one of the first hyperqraph tree and the one or more additional hypergraph trees; i) searching the selected hyperqraph tree to perform the query; and j) returning a result of the query to the networked computing device for presentation in the dashboard interface. - View Dependent Claims (2, 3, 4)
- and wherein each hierarchy data value matches a hierarchy member in the lowest level of the corresponding hierarchy dimension, the method comprising;
-
5. A system for optimizing performance of queries of a database by a computer, the system comprising:
-
a computer memory storing, at least, the database for storing a plurality of metric records, each metric record comprising at least one measure data value and a plurality of hierarchy data values, wherein each hierarchy data value is in a hierarchy dimension, wherein each hierarchy dimension comprises at least one hierarchy level, said at least one hierarchy level including a lowest hierarchy level, wherein each hierarchy level comprises at least one distinct hierarchy member; and
wherein each hierarchy data value matches a hierarchy member in the lowest level of the corresponding hierarchy dimension; andat least one processor configured to; a) determine the number of distinct members of the lowest hierarchy level of each hierarchy dimension and determine a unique hierarchy ID for such distinct member; b) determine the hierarchy dimension having the fewest number of distinct members in its lowest level; c) rank the hierarchy dimensions by number of distinct members in the respective lowest level; d) generate a first hypergraph tree for the hierarchy dimension having the fewest number of distinct members in its lowest level, wherein the first hypergraph tree comprises a tier for each hierarchy dimension; and e) generate one or more additional hypergraph trees, each additional hypergraph tree for a hierarchy dimension having more than the fewest number of distinct members in its lowest level, wherein each additional hypergraph tree comprises at least one tier for a hierarchy dimension and each additional hypergraph tree has fewer than the number of tiers in the first hypergraph tree; wherein each hypergraph tree comprises a plurality of nodes, and wherein each node corresponds to one of the unique hierarchy IDs, and wherein each node comprises at least one edge weighting comprising a determined measure data value, wherein all of the nodes in a tier correspond to the same hierarchy dimension, and wherein each generated hypergraph tree uniquely corresponds to a different hierarchy dimension; f) receive, via a dashboard interface displayed on a networked computing device, a query comprising one or more search parameters; g) identify a hierarchy dimension for each of the one or more search parameters; h) select, based on the one or more identified hierarchy dimensions, one of the first hypergraph tree and the one or more additional hypergraph trees; i) search the selected hypergraph tree to perform the query; and j) return a result of the query to the networked computing device for presentation in the dashboard interface. - View Dependent Claims (6, 7, 8)
-
-
9. A method for optimizing performance of at least one query of a database by a computer, the computer having a processor and the processor being in electronic communication with a memory storing, at least, the database, the method comprising:
-
storing in the memory a set of hierarchy data tables generated based on a plurality of metric records stored in the database, each metric record including a set of data values and each data value being associated with a hierarchy dimension, each hierarchy data table being associated with a different hierarchy dimension and each hierarchy data table including a plurality of distinct data members, each distinct data member being assigned a unique hierarchy identifier; operating the processor to assign each hierarchy dimension a dimension rank, wherein operating the processor to assign the dimension rank comprises; for each hierarchy data table, determining a number of distinct data members in the respective hierarchy data table; assigning each hierarchy dimension with the dimension rank sequentially according to the determined number of distinct data members for the set of hierarchy data tables, wherein the processor is configured to assign a first dimension rank to the hierarchy dimension associated with the hierarchy data table determined to have a fewest number of distinct data members and to assign a last dimension rank to the hierarchy dimension associated with the hierarchy data table determined to have a greatest number of distinct data members; and based on the plurality of metric records, generating at least one hypergraph tree for at least one hierarchy dimension according to the assigned dimension ranks; and in response to a query received via a dashboard interface of a networked computing device, operating the processor to;
select one of the at least one hypergraph tree, search the selected hypergraph tree to perform the query, and return a result of the query to the networked computing device for presentation in the dashboard interface. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for optimizing performance of at least one query of a database by a computer, the system comprises:
-
a memory storing, at least; the database storing a plurality of metric records, each metric record including a set of data values and each data value being associated with a hierarchy dimension; and a set of hierarchy data tables generated based on the plurality of metric records, each hierarchy data table being associated with a different hierarchy dimension and each hierarchy data table including a plurality of distinct data members, each distinct data member being assigned a unique hierarchy identifier; and a processor in electronic communication with the memory, the processor being configured to; assign each hierarchy dimension a dimension rank, wherein operating the processor to assign the dimension rank comprises; for each hierarchy data table, determining a number of distinct data members in the respective hierarchy data table; assigning each hierarchy dimension with the dimension rank sequentially according to the determined number of distinct data members for the set of hierarchy data tables, wherein the processor is configured to assign a first dimension rank to the hierarchy dimension associated with the hierarchy data table determined to have a fewest number of distinct data members and to assign a last dimension rank to the hierarchy dimension associated with the hierarchy data table determined to have a greatest number of distinct data members; and based on the plurality of metric records, generate at least one hypergraph tree for at least one hierarchy dimension according to the assigned dimension ranks; and receive a query via a dashboard interface of a networked computing device, select one of the at least one hypergraph tree, search the selected hypergraph tree to perform the query, and return a result of the query to the networked computing device for presentation in the dashboard interface. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification