Class JoinDriver<IT1,IT2,OT>
- java.lang.Object
-
- org.apache.flink.runtime.operators.JoinDriver<IT1,IT2,OT>
-
- All Implemented Interfaces:
Driver<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT>
- Direct Known Subclasses:
AbstractCachedBuildSideJoinDriver
public class JoinDriver<IT1,IT2,OT> extends Object implements Driver<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT>
The join driver implements the logic of a join operator at runtime. It instantiates either hash or sort-merge based strategies to find joining pairs of records.- See Also:
FlatJoinFunction
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.slf4j.Logger
LOG
protected boolean
running
protected TaskContext<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT>
taskContext
-
Constructor Summary
Constructors Constructor Description JoinDriver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cancel()
This method is invoked when the driver must aborted in mid processing.void
cleanup()
This method is invoked in any case (clean termination and exception) at the end of the tasks operation.int
getNumberOfDriverComparators()
Gets the number of comparators required for this driver.int
getNumberOfInputs()
Gets the number of inputs that the task has.Class<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>>
getStubType()
Gets the class of the stub type that is run by this task.void
prepare()
This method is called before the user code is opened.void
run()
The main operation method of the task.void
setup(TaskContext<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT> context)
-
-
-
Field Detail
-
LOG
protected static final org.slf4j.Logger LOG
-
taskContext
protected TaskContext<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT> taskContext
-
running
protected volatile boolean running
-
-
Method Detail
-
setup
public void setup(TaskContext<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>,OT> context)
-
getNumberOfInputs
public int getNumberOfInputs()
Description copied from interface:Driver
Gets the number of inputs that the task has.- Specified by:
getNumberOfInputs
in interfaceDriver<IT1,IT2>
- Returns:
- The number of inputs.
-
getStubType
public Class<org.apache.flink.api.common.functions.FlatJoinFunction<IT1,IT2,OT>> getStubType()
Description copied from interface:Driver
Gets the class of the stub type that is run by this task. For example, a MapTask should returnMapFunction.class
.- Specified by:
getStubType
in interfaceDriver<IT1,IT2>
- Returns:
- The class of the stub type run by the task.
-
getNumberOfDriverComparators
public int getNumberOfDriverComparators()
Description copied from interface:Driver
Gets the number of comparators required for this driver.- Specified by:
getNumberOfDriverComparators
in interfaceDriver<IT1,IT2>
- Returns:
- The number of comparators required for this driver.
-
prepare
public void prepare() throws Exception
Description copied from interface:Driver
This method is called before the user code is opened. An exception thrown by this method signals failure of the task.
-
run
public void run() throws Exception
Description copied from interface:Driver
The main operation method of the task. It should call the user code with the data subsets until the input is depleted.
-
cleanup
public void cleanup() throws Exception
Description copied from interface:Driver
This method is invoked in any case (clean termination and exception) at the end of the tasks operation.
-
-