- java.lang.Object
-
- com.pervasive.datarush.operators.AbstractLogicalOperator
-
- com.pervasive.datarush.operators.CompositeOperator
-
- com.pervasive.datarush.operators.join.AbstractRelationalJoin
-
- com.pervasive.datarush.operators.join.SemiJoin
-
- All Implemented Interfaces:
LogicalOperator
@Deprecated public final class SemiJoin extends AbstractRelationalJoin
Deprecated.this operator has been replaced withFilterExistingRows
; use that operator instead, linking to the appropriate output port.Performs a relational semi-join or anti-join on two input datasets by a specified set of keys. Depending on the value ofAbstractRelationalJoin.getUseHashJoinHint()
one of two procedures are used.- If hash join hint is false, input data will be sorted and hash partitioned by the specified
keys (if not already sorted according to upstream metadata).
Once sorted and partitioned, data is is them combined in a streaming fashion. Note that
in the case that a
join condition
is specified, this will require buffering on the right-hand-side, increasing memory requirements if the right has a large number records with duplicate keys. - If hash join hint is true, a full copy of the data from the right will be distributed to the cluster and loaded into memory within each node in the cluster. The left side will not be sorted or partitioned. Thus, the right side should always be small.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected RecordPort
composeJoin(CompositionContext ctx, RecordPort left, RecordPort right, JoinKey[] keys)
Deprecated.SemiJoinMode
getJoinMode()
Deprecated.Returns the join mode to use when performing a join.void
setJoinMode(SemiJoinMode joinMode)
Deprecated.Sets the join mode to use when performing a join.-
Methods inherited from class com.pervasive.datarush.operators.join.AbstractRelationalJoin
compose, getJoinCondition, getJoinKeys, getLeft, getOutput, getRight, getUseHashJoinHint, newJoinID, setJoinCondition, setJoinCondition, setJoinKeys, setJoinKeys, setJoinKeys, setJoinKeys, setUseHashJoinHint
-
Methods inherited from class com.pervasive.datarush.operators.AbstractLogicalOperator
disableParallelism, getInputPorts, getOutputPorts, newInput, newInput, newOutput, newRecordInput, newRecordInput, newRecordOutput, notifyError
-
-
-
-
Constructor Detail
-
SemiJoin
public SemiJoin()
Deprecated.Default constructor. Prior to graph compilation, the following property must be set:
-
SemiJoin
public SemiJoin(JoinKey[] joinKeys)
Deprecated.Performs a semi-join with the given set of join keys- Parameters:
joinKeys
- the join keys
-
-
Method Detail
-
getJoinMode
public SemiJoinMode getJoinMode()
Deprecated.Returns the join mode to use when performing a join.SemiJoinMode.LEFT_SEMI
by default.- Returns:
- the join mode to use when performing a join.
-
setJoinMode
public void setJoinMode(SemiJoinMode joinMode)
Deprecated.Sets the join mode to use when performing a join.SemiJoinMode.LEFT_SEMI
by default.- Parameters:
joinMode
- the join mode to use when performing a join.
-
composeJoin
protected RecordPort composeJoin(CompositionContext ctx, RecordPort left, RecordPort right, JoinKey[] keys)
Deprecated.- Specified by:
composeJoin
in classAbstractRelationalJoin
-
-