Triggering window conditions using exception handling
First Claim
1. A computer-implemented method for processing data, comprising:
- receiving streaming data tuples to be processed by a plurality of operators, the operators processing at least a portion of the received data tuples by operation of one or more computer processors;
establishing an operator graph of the plurality of operators, the operator graph defining at least one execution path in which a first operator of the plurality of operators is configured to receive data tuples from at least one upstream operator and transmit data tuples to at least one downstream operator;
determining a current number of exceptions occurring while the upstream operator performs an operation based on at least one of the streaming data tuples; and
triggering a data window in at least one operator of the plurality of operators different from the upstream operator when the current number of exceptions satisfies a threshold, the data window comprising a plurality of data tuples, and wherein triggering the data window causes the at least one operator to evaluate the plurality of data tuples in the data window.
1 Assignment
0 Petitions
Accused Products
Abstract
In a stream computing application, data may be transmitted between operators using tuples. However, the receiving operator may not evaluate these tuples as they arrive but instead wait to evaluate a group of tuples—i.e., a window. A window is typically triggered when a buffer associated with the receiving operator reaches a maximum window size or when a predetermined time period has expired. Additionally, a window may be triggered by a monitoring a tuple rate—i.e., the rate at which the operator receives the tuples. If the tuple rate exceeds or falls below a threshold, a window may be triggered. Further, the number of exceptions, or the rate at which an operator throws exceptions, may be monitored. If either of these parameters satisfies a threshold, a window may be triggered, thereby instructing an operator to evaluate the tuples contained within the window.
-
Citations
17 Claims
-
1. A computer-implemented method for processing data, comprising:
-
receiving streaming data tuples to be processed by a plurality of operators, the operators processing at least a portion of the received data tuples by operation of one or more computer processors; establishing an operator graph of the plurality of operators, the operator graph defining at least one execution path in which a first operator of the plurality of operators is configured to receive data tuples from at least one upstream operator and transmit data tuples to at least one downstream operator; determining a current number of exceptions occurring while the upstream operator performs an operation based on at least one of the streaming data tuples; and triggering a data window in at least one operator of the plurality of operators different from the upstream operator when the current number of exceptions satisfies a threshold, the data window comprising a plurality of data tuples, and wherein triggering the data window causes the at least one operator to evaluate the plurality of data tuples in the data window. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product for processing data, the computer program product comprising:
a computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code comprising computer-readable program code configured to; receive streaming data tuples to be processed by a plurality of operators, the operators processing at least a portion of the received data tuples; establish an operator graph of the plurality of operators, the operator graph defining at least one execution path in which a first operator of the plurality of operators is configured to receive data tuples from at least one upstream operator and transmit data tuples to at least one downstream operator; determine a current number of exceptions occurring while the upstream operator performs an operation based on at least one of the streaming data tuples; and trigger a data window in at least one operator of the plurality of operators different from the upstream operator when the current number of exceptions satisfies a threshold, the data window comprising a plurality of data tuples, and wherein triggering the data window causes the at least one operator to evaluate the plurality of data tuples in the data window. - View Dependent Claims (8, 9, 10, 11, 12)
-
13. A system for processing data, comprising:
-
at least two compute nodes, each compute node comprising at least one computer processor, wherein the at least two compute nodes are configured to host at least one of a plurality of operators that process streaming data tuples, the operators processing at least a portion of the received data tuples, wherein the plurality of operators establish an operator graph, the operator graph defining at least one execution path in which a first operator of the plurality of operators is configured to receive data tuples from at least one upstream operator and transmit data tuples to at least one downstream operator; and a window activator that is configured to determine a current number of exceptions occurring while the upstream operator performs an operation based on at least one of the streaming data tuples and trigger a data window in at least one operator of the plurality of operators different from the upstream operator when the current number of exceptions satisfies a threshold, wherein the data window comprising a plurality of data tuples, and wherein triggering the data window causes the at least one operator to evaluate the plurality of data tuples in the data window. - View Dependent Claims (14, 15, 16, 17)
-
Specification