Class TwoInputTransformation<IN1,IN2,OUT>
- java.lang.Object
-
- org.apache.flink.api.dag.Transformation<T>
-
- org.apache.flink.streaming.api.transformations.PhysicalTransformation<OUT>
-
- org.apache.flink.streaming.api.transformations.TwoInputTransformation<IN1,IN2,OUT>
-
- Type Parameters:
IN1- The type of the elements in the first inputTransformationIN2- The type of the elements in the second inputTransformationOUT- The type of the elements that result from thisTwoInputTransformation
@Internal public class TwoInputTransformation<IN1,IN2,OUT> extends PhysicalTransformation<OUT>
This Transformation represents the application of aTwoInputStreamOperatorto two inputTransformations. The result is again only one stream.
-
-
Constructor Summary
Constructors Constructor Description TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism)TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism, boolean parallelismConfigured)Creates a newTwoInputTransformationfrom the given inputs and operator.TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, TwoInputStreamOperator<IN1,IN2,OUT> operator, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism)Creates a newTwoInputTransformationfrom the given inputs and operator.TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, TwoInputStreamOperator<IN1,IN2,OUT> operator, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism, boolean parallelismConfigured)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidenableAsyncState()org.apache.flink.api.dag.Transformation<IN1>getInput1()Returns the first inputTransformationof thisTwoInputTransformation.org.apache.flink.api.dag.Transformation<IN2>getInput2()Returns the second inputTransformationof thisTwoInputTransformation.List<org.apache.flink.api.dag.Transformation<?>>getInputs()org.apache.flink.api.common.typeinfo.TypeInformation<IN1>getInputType1()Returns theTypeInformationfor the elements from the first input.org.apache.flink.api.common.typeinfo.TypeInformation<IN2>getInputType2()Returns theTypeInformationfor the elements from the second input.TwoInputStreamOperator<IN1,IN2,OUT>getOperator()StreamOperatorFactory<OUT>getOperatorFactory()Returns theStreamOperatorFactoryof this Transformation.org.apache.flink.api.java.functions.KeySelector<IN1,?>getStateKeySelector1()Returns theKeySelectorthat must be used for partitioning keyed state in this Operation for the first input.org.apache.flink.api.java.functions.KeySelector<IN2,?>getStateKeySelector2()Returns theKeySelectorthat must be used for partitioning keyed state in this Operation for the second input.org.apache.flink.api.common.typeinfo.TypeInformation<?>getStateKeyType()protected List<org.apache.flink.api.dag.Transformation<?>>getTransitivePredecessorsInternal()booleanisInternalSorterSupported()booleanisOutputOnlyAfterEndOfStream()voidsetChainingStrategy(ChainingStrategy strategy)Sets the chaining strategy of thisTransformation.voidsetStateKeySelectors(org.apache.flink.api.java.functions.KeySelector<IN1,?> stateKeySelector1, org.apache.flink.api.java.functions.KeySelector<IN2,?> stateKeySelector2)Sets theKeySelectorsthat must be used for partitioning keyed state of this transformation.voidsetStateKeyType(org.apache.flink.api.common.typeinfo.TypeInformation<?> stateKeyType)-
Methods inherited from class org.apache.flink.streaming.api.transformations.PhysicalTransformation
isSupportsConcurrentExecutionAttempts, setSupportsConcurrentExecutionAttempts
-
Methods inherited from class org.apache.flink.api.dag.Transformation
declareManagedMemoryUseCaseAtOperatorScope, declareManagedMemoryUseCaseAtSlotScope, equals, getAttribute, getBufferTimeout, getCoLocationGroupKey, getDescription, getId, getManagedMemoryOperatorScopeUseCaseWeights, getManagedMemorySlotScopeUseCases, getMaxParallelism, getMinResources, getName, getNewNodeId, getOutputType, getParallelism, getPreferredResources, getSlotSharingGroup, getTransitivePredecessors, getUid, getUserProvidedNodeHash, hashCode, isParallelismConfigured, setAttribute, setBufferTimeout, setCoLocationGroupKey, setDescription, setMaxParallelism, setName, setOutputType, setParallelism, setParallelism, setResources, setSlotSharingGroup, setSlotSharingGroup, setUid, setUidHash, toString, updateManagedMemoryStateBackendUseCase
-
-
-
-
Constructor Detail
-
TwoInputTransformation
public TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, TwoInputStreamOperator<IN1,IN2,OUT> operator, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism)
Creates a newTwoInputTransformationfrom the given inputs and operator.- Parameters:
input1- The first inputTransformationinput2- The second inputTransformationname- The name of theTransformation, this will be shown in Visualizations and the Logoperator- TheTwoInputStreamOperatoroutputType- The type of the elements produced by this Transformationparallelism- The parallelism of this Transformation
-
TwoInputTransformation
public TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, TwoInputStreamOperator<IN1,IN2,OUT> operator, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism, boolean parallelismConfigured)
-
TwoInputTransformation
public TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism)
-
TwoInputTransformation
public TwoInputTransformation(org.apache.flink.api.dag.Transformation<IN1> input1, org.apache.flink.api.dag.Transformation<IN2> input2, String name, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType, int parallelism, boolean parallelismConfigured)
Creates a newTwoInputTransformationfrom the given inputs and operator.- Parameters:
input1- The first inputTransformationinput2- The second inputTransformationname- The name of theTransformation, this will be shown in Visualizations and the LogoperatorFactory- TheTwoInputStreamOperatorfactoryoutputType- The type of the elements produced by this Transformationparallelism- The parallelism of this TransformationparallelismConfigured- If true, the parallelism of the transformation is explicitly set and should be respected. Otherwise the parallelism can be changed at runtime.
-
-
Method Detail
-
getInput1
public org.apache.flink.api.dag.Transformation<IN1> getInput1()
Returns the first inputTransformationof thisTwoInputTransformation.
-
getInput2
public org.apache.flink.api.dag.Transformation<IN2> getInput2()
Returns the second inputTransformationof thisTwoInputTransformation.
-
getInputs
public List<org.apache.flink.api.dag.Transformation<?>> getInputs()
- Specified by:
getInputsin classorg.apache.flink.api.dag.Transformation<OUT>
-
getInputType1
public org.apache.flink.api.common.typeinfo.TypeInformation<IN1> getInputType1()
Returns theTypeInformationfor the elements from the first input.
-
getInputType2
public org.apache.flink.api.common.typeinfo.TypeInformation<IN2> getInputType2()
Returns theTypeInformationfor the elements from the second input.
-
getOperator
@VisibleForTesting public TwoInputStreamOperator<IN1,IN2,OUT> getOperator()
-
getOperatorFactory
public StreamOperatorFactory<OUT> getOperatorFactory()
Returns theStreamOperatorFactoryof this Transformation.
-
setStateKeySelectors
public void setStateKeySelectors(org.apache.flink.api.java.functions.KeySelector<IN1,?> stateKeySelector1, org.apache.flink.api.java.functions.KeySelector<IN2,?> stateKeySelector2)
Sets theKeySelectorsthat must be used for partitioning keyed state of this transformation.- Parameters:
stateKeySelector1- TheKeySelectorto set for the first inputstateKeySelector2- TheKeySelectorto set for the first input
-
getStateKeySelector1
public org.apache.flink.api.java.functions.KeySelector<IN1,?> getStateKeySelector1()
Returns theKeySelectorthat must be used for partitioning keyed state in this Operation for the first input.
-
getStateKeySelector2
public org.apache.flink.api.java.functions.KeySelector<IN2,?> getStateKeySelector2()
Returns theKeySelectorthat must be used for partitioning keyed state in this Operation for the second input.
-
setStateKeyType
public void setStateKeyType(org.apache.flink.api.common.typeinfo.TypeInformation<?> stateKeyType)
-
getStateKeyType
public org.apache.flink.api.common.typeinfo.TypeInformation<?> getStateKeyType()
-
getTransitivePredecessorsInternal
protected List<org.apache.flink.api.dag.Transformation<?>> getTransitivePredecessorsInternal()
- Specified by:
getTransitivePredecessorsInternalin classorg.apache.flink.api.dag.Transformation<OUT>
-
setChainingStrategy
public final void setChainingStrategy(ChainingStrategy strategy)
Description copied from class:PhysicalTransformationSets the chaining strategy of thisTransformation.- Specified by:
setChainingStrategyin classPhysicalTransformation<OUT>
-
isOutputOnlyAfterEndOfStream
public boolean isOutputOnlyAfterEndOfStream()
-
isInternalSorterSupported
public boolean isInternalSorterSupported()
-
enableAsyncState
public void enableAsyncState()
- Overrides:
enableAsyncStatein classorg.apache.flink.api.dag.Transformation<OUT>
-
-