Patent ID: 9641586
Date: 2017-05-02
CPC Classifications: G06F,H04L

Claim:
1. A method for processing tuples, comprising: receiving, by a plurality of stream processing elements operating on one or more processors, two or more tuples, included in a stream of tuples, to be processed by the plurality of stream processing elements; accepting into and retaining within a first window, until a windowing condition is met, tuples from among the two or more tuples, wherein a conclusion of a windowing condition comprises the windowing condition being met, and wherein the windowing condition comprises an eviction condition; performing, at the conclusion of the windowing condition, by a windowing operator included in a first stream processing element among the plurality of stream processing elements, a windowing operation, the windowing operation using all of the tuples retained in the first window, the windowing operation determining a first value associated with a first one or more of the tuples retained in the first window; evicting, when the windowing condition is met, all of the tuples retained in the first window; determining from tuples among the tuples accepted into the first window before the windowing condition is met, based on a first fixed value, whether a first early-end condition to end the windowing operation is met; determining a second value associated with a second one or more of the tuples retained in the first window, based on the first early-end condition to end the windowing operation being met; evaluating the second value; and ending, based on the evaluating the second value, the windowing operation before the conclusion of the windowing condition.