Order-independent stream query processing
First Claim
1. A method for order-independent stream query processing, the method comprising:
- partitioning received data into one or more partitions;
decomposing a received query into one or more sub-queries that can operate on independent partitions to produce partial results for each partition and a view that consolidates the partial results for each partition;
receiving an out-of-order datum, the out-of-order datum being too late to process for an original partition;
selecting a partition whose latest data is closest to the out-of-order datum;
processing the out-of-order datum in the selected partition;
consolidating the partial results on a continuous basis to produce final results; and
reporting the final results;
wherein the method is performed by one or more computing devices.
3 Assignments
0 Petitions
Accused Products
Abstract
In a system and method for order-independent stream query processing, one or more input streams of data are received, and the one or more input streams are analyzed to determine data which is older than an already emitted progress indicator. The data which is older than the already emitted progress indicator is partitioned into one or more partitions, and each of the one or more partitions are independently processed using out-of-order processing techniques. A query is received, rewritten and decomposed into one or more sub-queries that produce partial results for each of the one or more partitions, where each of the one or more sub-queries correspond to a partition. A view is also produced that consolidates the partial results for each partition. The partial results are consolidated at a consolidation time specified by the query to produce final results, and the final results are provided.
-
Citations
24 Claims
-
1. A method for order-independent stream query processing, the method comprising:
-
partitioning received data into one or more partitions; decomposing a received query into one or more sub-queries that can operate on independent partitions to produce partial results for each partition and a view that consolidates the partial results for each partition; receiving an out-of-order datum, the out-of-order datum being too late to process for an original partition; selecting a partition whose latest data is closest to the out-of-order datum; processing the out-of-order datum in the selected partition; consolidating the partial results on a continuous basis to produce final results; and reporting the final results; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 23)
-
-
12. A non-transitory computer readable storage medium storing instructions, which when executed by one or more processors, cause the one or more processors to perform:
-
partitioning received data into one or more partitions; decomposing a received query into one or more sub-queries that can operate on independent partitions to produce partial results for each partition and a view that consolidates the partial results for each partition; receiving an out-of-order datum, the out-of-order datum being too late to process for an original partition; selecting a partition whose latest data is closest to the out-of-order datum; processing the out-of-order datum in the selected partition; consolidating the partial results on a continuous basis to produce final results; and reporting the final results. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24)
-
Specification