I1
- The type of the first input DataSet of the Join transformation.I2
- The type of the second input DataSet of the Join transformation.@Public public static final class JoinOperator.DefaultJoin<I1,I2> extends JoinOperator.EquiJoin<I1,I2,Tuple2<I1,I2>> implements JoinFunctionAssigner<I1,I2>
Modifier and Type | Class and Description |
---|---|
static class |
JoinOperator.DefaultJoin.WrappingFlatJoinFunction<IN1,IN2,OUT>
Wrapper around
JoinFunction . |
JoinOperator.DefaultJoin<I1,I2>, JoinOperator.EquiJoin<I1,I2,OUT>, JoinOperator.JoinOperatorSets<I1,I2>, JoinOperator.ProjectJoin<I1,I2,OUT extends Tuple>
joinType, keys1, keys2
minResources, name, parallelism, preferredResources
Constructor and Description |
---|
DefaultJoin(DataSet<I1> input1,
DataSet<I2> input2,
Keys<I1> keys1,
Keys<I2> keys2,
JoinOperatorBase.JoinHint hint,
String joinLocationName,
JoinType type) |
Modifier and Type | Method and Description |
---|---|
<OUT extends Tuple> |
projectFirst(int... firstFieldIndexes)
Applies a ProjectJoin transformation and projects the first join input
|
<OUT extends Tuple> |
projectSecond(int... secondFieldIndexes)
Applies a ProjectJoin transformation and projects the second join input
|
<R> JoinOperator.EquiJoin<I1,I2,R> |
with(FlatJoinFunction<I1,I2,R> function)
Finalizes a Join transformation by applying a
RichFlatJoinFunction to each pair of joined
elements. |
<R> JoinOperator.EquiJoin<I1,I2,R> |
with(JoinFunction<I1,I2,R> function) |
extractSemanticAnnotationsFromUdf, getFunction, getSemanticProperties, translateToDataFlow, udfWithForwardedFieldsFirstAnnotation, udfWithForwardedFieldsSecondAnnotation
getJoinHint, getJoinType, getKeys1, getKeys2, getPartitioner, withPartitioner
getAnalyzedUdfSemanticsFlag, getBroadcastSets, getParameters, returns, returns, returns, setAnalyzedUdfSemanticsFlag, setSemanticProperties, withBroadcastSet, withForwardedFieldsFirst, withForwardedFieldsSecond, withParameters
getInput1, getInput1Type, getInput2, getInput2Type
getMinResources, getName, getParallelism, getPreferredResources, getResultType, name, setParallelism
aggregate, checkSameExecutionContext, clean, coGroup, collect, combineGroup, count, cross, crossWithHuge, crossWithTiny, distinct, distinct, distinct, distinct, fillInType, filter, first, flatMap, fullOuterJoin, fullOuterJoin, getExecutionEnvironment, getType, groupBy, groupBy, groupBy, iterate, iterateDelta, join, join, joinWithHuge, joinWithTiny, leftOuterJoin, leftOuterJoin, map, mapPartition, max, maxBy, min, minBy, output, partitionByHash, partitionByHash, partitionByHash, partitionByRange, partitionByRange, partitionByRange, partitionCustom, partitionCustom, partitionCustom, print, print, printOnTaskManager, printToErr, printToErr, project, rebalance, reduce, reduceGroup, rightOuterJoin, rightOuterJoin, runOperation, sortPartition, sortPartition, sortPartition, sum, union, write, write, writeAsCsv, writeAsCsv, writeAsCsv, writeAsCsv, writeAsFormattedText, writeAsFormattedText, writeAsText, writeAsText
public <R> JoinOperator.EquiJoin<I1,I2,R> with(FlatJoinFunction<I1,I2,R> function)
RichFlatJoinFunction
to each pair of joined
elements.
Each JoinFunction call returns exactly one element.
with
in interface JoinFunctionAssigner<I1,I2>
function
- The JoinFunction that is called for each pair of joined elements.RichFlatJoinFunction
,
JoinOperator.EquiJoin
,
DataSet
public <R> JoinOperator.EquiJoin<I1,I2,R> with(JoinFunction<I1,I2,R> function)
with
in interface JoinFunctionAssigner<I1,I2>
public <OUT extends Tuple> JoinOperator.ProjectJoin<I1,I2,OUT> projectFirst(int... firstFieldIndexes)
If the first join input is a Tuple
DataSet
, fields can be selected by
their index. If the first join input is not a Tuple DataSet, no parameters should be
passed.
Fields of the first and second input can be added by chaining the method calls of
JoinOperator.ProjectJoin.projectFirst(int...)
and JoinOperator.ProjectJoin.projectSecond(int...)
.
Note: With the current implementation, the Project transformation loses type information.
firstFieldIndexes
- If the first input is a Tuple DataSet, the indexes of the
selected fields. For a non-Tuple DataSet, do not provide parameters. The order of
fields in the output tuple is defined by to the order of field indexes.Tuple
,
DataSet
,
JoinOperator.ProjectJoin
public <OUT extends Tuple> JoinOperator.ProjectJoin<I1,I2,OUT> projectSecond(int... secondFieldIndexes)
If the second join input is a Tuple
DataSet
, fields can be selected by
their index. If the second join input is not a Tuple DataSet, no parameters should be
passed.
Fields of the first and second input can be added by chaining the method calls of
JoinOperator.ProjectJoin.projectFirst(int...)
and JoinOperator.ProjectJoin.projectSecond(int...)
.
Note: With the current implementation, the Project transformation loses type information.
secondFieldIndexes
- If the second input is a Tuple DataSet, the indexes of the
selected fields. For a non-Tuple DataSet, do not provide parameters. The order of
fields in the output tuple is defined by to the order of field indexes.Tuple
,
DataSet
,
JoinOperator.ProjectJoin
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.