Class SlidingWindows<L,I>
java.lang.Object
org.apache.storm.streams.windowing.BaseWindow<L,I>
org.apache.storm.streams.windowing.SlidingWindows<L,I>
- Type Parameters:
L
- The type of the window length (e.g. Duration or Count)I
- The type of the sliding interval (e.g. Duration or Count)
- All Implemented Interfaces:
Serializable
,Window<L,
I>
A sliding window specification based on a window length and sliding interval.
- See Also:
-
Field Summary
Fields inherited from class org.apache.storm.streams.windowing.BaseWindow
lag, lateTupleStream, timestampField
-
Method Summary
Modifier and TypeMethodDescriptionboolean
The sliding interval of the window.The length of the window.int
hashCode()
of
(BaseWindowedBolt.Count windowLength, BaseWindowedBolt.Count slidingInterval) Count based sliding window configuration.of
(BaseWindowedBolt.Count windowLength, BaseWindowedBolt.Duration slidingInterval) Tuple count and time duration based sliding window configuration.of
(BaseWindowedBolt.Duration windowLength, BaseWindowedBolt.Count slidingInterval) Time duration and count based sliding window configuration.of
(BaseWindowedBolt.Duration windowLength, BaseWindowedBolt.Duration slidingInterval) Time duration based sliding window configuration.withLag
(BaseWindowedBolt.Duration duration) Specify the maximum time lag of the tuple timestamp in milliseconds.withLateTupleStream
(String streamId) Specify a stream id on which late tuples are going to be emitted.withTimestampField
(String fieldName) The name of the field in the tuple that contains the timestamp when the event occurred as a long value.Methods inherited from class org.apache.storm.streams.windowing.BaseWindow
getLag, getLateTupleStream, getTimestampField
-
Method Details
-
of
public static SlidingWindows<BaseWindowedBolt.Count,BaseWindowedBolt.Count> of(BaseWindowedBolt.Count windowLength, BaseWindowedBolt.Count slidingInterval) Count based sliding window configuration.- Parameters:
windowLength
- the number of tuples in the windowslidingInterval
- the number of tuples after which the window slides
-
of
public static SlidingWindows<BaseWindowedBolt.Duration,BaseWindowedBolt.Duration> of(BaseWindowedBolt.Duration windowLength, BaseWindowedBolt.Duration slidingInterval) Time duration based sliding window configuration.- Parameters:
windowLength
- the time duration of the windowslidingInterval
- the time duration after which the window slides
-
of
public static SlidingWindows<BaseWindowedBolt.Count,BaseWindowedBolt.Duration> of(BaseWindowedBolt.Count windowLength, BaseWindowedBolt.Duration slidingInterval) Tuple count and time duration based sliding window configuration.- Parameters:
windowLength
- the number of tuples in the windowslidingInterval
- the time duration after which the window slides
-
of
public static SlidingWindows<BaseWindowedBolt.Duration,BaseWindowedBolt.Count> of(BaseWindowedBolt.Duration windowLength, BaseWindowedBolt.Count slidingInterval) Time duration and count based sliding window configuration.- Parameters:
windowLength
- the time duration of the windowslidingInterval
- the number of tuples after which the window slides
-
getWindowLength
The length of the window.- Returns:
- the window length
-
getSlidingInterval
The sliding interval of the window.- Returns:
- the sliding interval
-
withTimestampField
The name of the field in the tuple that contains the timestamp when the event occurred as a long value. This is used of event-time based processing. If this config is set and the field is not present in the incoming tuple, anIllegalArgumentException
will be thrown.- Parameters:
fieldName
- the name of the field that contains the timestamp
-
withLateTupleStream
Specify a stream id on which late tuples are going to be emitted. They are going to be accessible via theWindowedBoltExecutor.LATE_TUPLE_FIELD
field. It must be defined on a per-component basis, and in conjunction with theBaseWindowedBolt.withTimestampField(java.lang.String)
, otherwiseIllegalArgumentException
will be thrown.- Parameters:
streamId
- the name of the stream used to emit late tuples on
-
withLag
Specify the maximum time lag of the tuple timestamp in milliseconds. It means that the tuple timestamps cannot be out of order by more than this amount.- Parameters:
duration
- the max lag duration
-
equals
- Overrides:
equals
in classBaseWindow<L,
I>
-
hashCode
public int hashCode()- Overrides:
hashCode
in classBaseWindow<L,
I>
-