| CPC G06F 16/906 (2019.01) [G06F 16/90335 (2019.01)] | 20 Claims |

|
1. A computer-implemented method for processing queries, comprising:
receiving, by a database system, a request to process records received by the database system, the request specifying a database language query specifying a grouping clause and one or more aggregate result values based on grouping sets generated by the grouping clause;
generating a pre-aggregation table based on the database language query;
generating based on the database language query:
an ingest query configured to generate data for populating the pre-aggregation table, and
a completion query configured to process data of the pre-aggregation table to obtain results of the database language query;
repeatedly performing:
receiving a set of input records,
executing the ingest query to generate at least one pre-aggregation record from the set of input records, and
updating the data of the pre-aggregation table based on the at least one pre-aggregation record by determining whether hash values associated with records in the pre-aggregation table correspond with a hash value associated with the at least one pre-aggregation record;
responsive to updating the data stored in the pre-aggregation table, generating a result set by executing the completion query on the data stored in the pre-aggregation table; and
sending the result set to a requestor of the results.
|