Class JoinOperator<K,V1,V2,VR>
- java.lang.Object
-
- org.apache.heron.api.bolt.BaseWindowedBolt
-
- org.apache.heron.streamlet.impl.operators.StreamletWindowOperator<V1,VR>
-
- org.apache.heron.streamlet.impl.operators.JoinOperator<K,V1,V2,VR>
-
- All Implemented Interfaces:
Serializable
,IWindowedBolt
,IComponent
,IStreamletOperator<V1,VR>
,IStreamletWindowOperator<V1,VR>
public class JoinOperator<K,V1,V2,VR> extends StreamletWindowOperator<V1,VR>
JoinOperator is the bolt that implements the join/leftJoin/innerJoin functionality. It embeds the logic of the type of join(outer, left, inner) which it takes in as a config parameter. Also taken as parameters are which source is left and right. This is needed for the semantics of outer/left/inner joins.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.heron.api.bolt.BaseWindowedBolt
BaseWindowedBolt.Count
-
-
Field Summary
-
Fields inherited from class org.apache.heron.streamlet.impl.operators.StreamletWindowOperator
collector
-
Fields inherited from class org.apache.heron.api.bolt.BaseWindowedBolt
timestampExtractor, windowConfiguration
-
-
Constructor Summary
Constructors Constructor Description JoinOperator(JoinType joinType, String leftComponent, String rightComponent, SerializableFunction<V1,K> leftKeyExtractor, SerializableFunction<V2,K> rightKeyExtractor, SerializableBiFunction<V1,V2,? extends VR> joinFn)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute(TupleWindow inputWindow)
Process the tuple window and optionally emit new tuples based on the tuples in the input window.Map<String,Object>
getComponentConfiguration()
Declare configuration specific to this component.-
Methods inherited from class org.apache.heron.streamlet.impl.operators.StreamletWindowOperator
declareOutputFields, prepare
-
Methods inherited from class org.apache.heron.api.bolt.BaseWindowedBolt
cleanup, getTimestampExtractor, withCustomEvictor, withCustomTrigger, withLag, withLateTupleStream, withTimestampExtractor, withTimestampField, withTumblingWindow, withTumblingWindow, withWatermarkInterval, withWindow, withWindow, withWindow, withWindow, withWindow, withWindow
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.heron.api.bolt.IWindowedBolt
cleanup, getTimestampExtractor
-
-
-
-
Constructor Detail
-
JoinOperator
public JoinOperator(JoinType joinType, String leftComponent, String rightComponent, SerializableFunction<V1,K> leftKeyExtractor, SerializableFunction<V2,K> rightKeyExtractor, SerializableBiFunction<V1,V2,? extends VR> joinFn)
-
-
Method Detail
-
getComponentConfiguration
public Map<String,Object> getComponentConfiguration()
Description copied from interface:IComponent
Declare configuration specific to this component. Only a subset of the "topology.*" configs can be overridden. The component configuration can be further overridden when constructing the topology usingTopologyBuilder
- Specified by:
getComponentConfiguration
in interfaceIComponent
- Overrides:
getComponentConfiguration
in classBaseWindowedBolt
-
execute
public void execute(TupleWindow inputWindow)
Description copied from interface:IWindowedBolt
Process the tuple window and optionally emit new tuples based on the tuples in the input window.
-
-