Querying multidimensional data with independent fact and dimension pipelines combined at query time
First Claim
Patent Images
1. A method performed by data processing apparatus, the method comprising:
- receiving a query that includes grouping information and filtering information;
receiving, from a first computing device optimized for dimension data, a key identified from dimension data processed by the first computing device, and based at least in part on the filtering information;
obtaining, from a second computing device optimized for fact data, a plurality of query results from fact data processed by the second computing device and based at least in part on the received grouping information;
filtering the query results using the received key; and
generating a result set based, at least in part, on the filtered query results.
2 Assignments
0 Petitions
Accused Products
Abstract
Separate subsystems are dedicated to handle fact and dimension data storage and retrieval in an optimized manner. Each subsystem acquires, processes, and stores its data separately in a manner appropriate to the characteristics of that data. A query engine combines the data from each subsystem at query time. When a user queries the system, the query engine interacts with each of the subsystems to fetch the data needed to generate a single result set.
21 Citations
25 Claims
-
1. A method performed by data processing apparatus, the method comprising:
-
receiving a query that includes grouping information and filtering information; receiving, from a first computing device optimized for dimension data, a key identified from dimension data processed by the first computing device, and based at least in part on the filtering information; obtaining, from a second computing device optimized for fact data, a plurality of query results from fact data processed by the second computing device and based at least in part on the received grouping information; filtering the query results using the received key; and generating a result set based, at least in part, on the filtered query results. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
two or more computing devices, the two or more computing devices comprising; a first computing device optimized for dimension data and a second computing device optimized for fact data, wherein one of the two or more computing devices is configured to perform operations comprising; receiving a query that includes grouping information and filtering information; receiving, from the first computing device, a key identified from dimension data processed by the first computing device, and based at least in part on the filtering information; obtaining, from the second computing device, a plurality of query results from fact data processed by the second computing device, and based at least in part on the received grouping information; filtering the query results using the received key; and generating a result set based, at least in part, on the filtered query results. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-readable storage medium having instructions stored thereon, the instructions operable to cause one or more computing devices to perform operations comprising:
-
receiving a query that includes grouping information and filtering information; receiving, from a first computing device optimized for dimension data, a key being identified from dimension data processed by the first computing device, and based at least in part on the filtering information; obtaining, from a second computing device optimized for fact data, a plurality of query results from fact data processed by the second computing device and based at least in part on the received grouping information; filtering the query results using the received key; and generating a result set based, at least in part, on the filtered query results. - View Dependent Claims (21, 22, 23, 24, 25)
-
Specification