Package org.apache.wayang.jdbc.operators
Class JdbcJoinOperator<KeyType>
java.lang.Object
org.apache.wayang.core.plan.wayangplan.OperatorBase
org.apache.wayang.core.plan.wayangplan.BinaryToUnaryOperator<InputType0,InputType1,Tuple2<InputType0,InputType1>>
org.apache.wayang.basic.operators.JoinOperator<Record,Record,KeyType>
org.apache.wayang.jdbc.operators.JdbcJoinOperator<KeyType>
- All Implemented Interfaces:
Serializable
,ActualOperator
,ElementaryOperator
,ExecutionOperator
,Operator
,JdbcExecutionOperator
- Direct Known Subclasses:
PostgresJoinOperator
public abstract class JdbcJoinOperator<KeyType>
extends JoinOperator<Record,Record,KeyType>
implements JdbcExecutionOperator
PostgreSQL implementation for the
JoinOperator
.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.wayang.core.plan.wayangplan.OperatorBase
OperatorBase.GsonSerializer
-
Field Summary
Fields inherited from class org.apache.wayang.basic.operators.JoinOperator
keyDescriptor0, keyDescriptor1
Fields inherited from class org.apache.wayang.core.plan.wayangplan.OperatorBase
inputSlots, outputSlots, STANDARD_OPERATOR_ARGS
Fields inherited from interface org.apache.wayang.core.plan.wayangplan.Operator
FIRST_EPOCH
-
Constructor Summary
ConstructorsConstructorDescriptionCopies an instanceJdbcJoinOperator
(TransformationDescriptor<Record, KeyType> keyDescriptor0, TransformationDescriptor<Record, KeyType> keyDescriptor1) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptioncreateLoadProfileEstimator
(Configuration configuration) Developers ofExecutionOperator
s can provide a defaultLoadProfileEstimator
via this method.createSqlClause
(Connection connection, FunctionCompiler compiler) Creates a SQL clause for this instance.Methods inherited from class org.apache.wayang.basic.operators.JoinOperator
createCardinalityEstimator, getKeyDescriptor0, getKeyDescriptor1
Methods inherited from class org.apache.wayang.core.plan.wayangplan.BinaryToUnaryOperator
getInputType0, getInputType1, getOutputType
Methods inherited from class org.apache.wayang.core.plan.wayangplan.OperatorBase
accept, addBroadcastInput, addTargetPlatform, at, collectMappedInputSlots, collectMappedOutputSlots, copy, createCopy, getAllInputs, getAllOutputs, getCardinalityEstimator, getContainer, getEpoch, getName, getOriginal, getSimpleClassName, getTargetPlatforms, isAuxiliary, isSupportingBroadcastInputs, propagateInputCardinality, propagateOutputCardinality, setAuxiliary, setCardinalityEstimator, setContainer, setEpoch, setName, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.wayang.core.plan.wayangplan.ActualOperator
accept
Methods inherited from interface org.apache.wayang.core.plan.wayangplan.ElementaryOperator
createCardinalityEstimator, getCardinalityEstimator, isAuxiliary, setAuxiliary, setCardinalityEstimator
Methods inherited from interface org.apache.wayang.core.plan.wayangplan.ExecutionOperator
copy, createOutputChannelInstances, getLimitBaseKey, getLoadProfileEstimatorConfigurationKeys, getOriginal, getOutputChannelDescriptor, isFiltered
Methods inherited from interface org.apache.wayang.jdbc.operators.JdbcExecutionOperator
getPlatform, getSupportedInputChannels, getSupportedOutputChannels
Methods inherited from interface org.apache.wayang.core.plan.wayangplan.Operator
addBroadcastInput, addTargetPlatform, broadcastTo, broadcastTo, collectMappedInputSlots, collectMappedOutputSlots, connectTo, connectTo, getAllInputs, getAllOutputs, getCardinalityPusher, getContainer, getEffectiveOccupant, getEffectiveOccupant, getEpoch, getEstimationContextProperties, getForwards, getInnermostLoop, getInput, getInput, getLoopStack, getName, getNumBroadcastInputs, getNumInputs, getNumOutputs, getNumRegularInputs, getOuterInputSlot, getOutermostInputSlot, getOutermostOutputSlots, getOutput, getOutput, getParent, getTargetPlatforms, isAlternative, isConversion, isElementary, isExecutionOperator, isFeedbackInput, isFeedforwardOutput, isLoopHead, isLoopSubplan, isOwnerOf, isReading, isSink, isSource, isSubplan, isSupportingBroadcastInputs, isUnconnected, propagateInputCardinality, propagateOutputCardinality, propagateOutputCardinality, replaceWith, setContainer, setEpoch, setInput, setName, setOutput
-
Constructor Details
-
JdbcJoinOperator
public JdbcJoinOperator(TransformationDescriptor<Record, KeyType> keyDescriptor0, TransformationDescriptor<Record, KeyType> keyDescriptor1) Creates a new instance.- See Also:
-
JoinOperator#JoinOperator(Record, Record...)
-
JdbcJoinOperator
Copies an instance- Parameters:
that
- that should be copied
-
-
Method Details
-
createSqlClause
Description copied from interface:JdbcExecutionOperator
Creates a SQL clause for this instance. ForTableSource
s it returns an identifier for the table usable in aFROM
clause. ForJdbcProjectionOperator
s it returns a list usable in aSELECT
clause. ForJdbcFilterOperator
s it creates a condition usable in aWHERE
clause. ForJdbcJoinOperator
it returns a INNER JOIN statement usable in aJOIN
clause. Also, these different clauses should be compatible for connectedJdbcExecutionOperator
s.- Specified by:
createSqlClause
in interfaceJdbcExecutionOperator
compiler
- used to create SQL code- Returns:
- the SQL clause
-
getLoadProfileEstimatorConfigurationKey
- Specified by:
getLoadProfileEstimatorConfigurationKey
in interfaceExecutionOperator
-
createLoadProfileEstimator
Description copied from interface:ExecutionOperator
Developers ofExecutionOperator
s can provide a defaultLoadProfileEstimator
via this method.- Specified by:
createLoadProfileEstimator
in interfaceExecutionOperator
- Parameters:
configuration
- in which theLoadProfile
should be estimated.- Returns:
- an
Optional
that might contain theLoadProfileEstimator
(butOptional.empty()
by default)
-