Class BatchExecLookupJoin
- java.lang.Object
-
- org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase<RowData>
-
- org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecLookupJoin
-
- org.apache.flink.table.planner.plan.nodes.exec.batch.BatchExecLookupJoin
-
- All Implemented Interfaces:
BatchExecNode<RowData>
,ExecNode<RowData>
,ExecNodeTranslator<RowData>
,FusionCodegenExecNode
,SingleTransformationTranslator<RowData>
public class BatchExecLookupJoin extends CommonExecLookupJoin implements BatchExecNode<RowData>, SingleTransformationTranslator<RowData>
BatchExecNode
for temporal table join that implemented by lookup.
-
-
Field Summary
-
Fields inherited from class org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecLookupJoin
FIELD_NAME_ASYNC_OPTIONS, FIELD_NAME_FILTER_ON_TEMPORAL_TABLE, FIELD_NAME_INPUT_CHANGELOG_MODE, FIELD_NAME_JOIN_TYPE, FIELD_NAME_LOOKUP_KEYS, FIELD_NAME_PRE_FILTER_CONDITION, FIELD_NAME_PROJECTION_ON_TEMPORAL_TABLE, FIELD_NAME_REMAINING_JOIN_CONDITION, FIELD_NAME_RETRY_OPTIONS, FIELD_NAME_TEMPORAL_TABLE, LOOKUP_JOIN_MATERIALIZE_TRANSFORMATION, LOOKUP_JOIN_TRANSFORMATION
-
Fields inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNode
FIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_STATE, FIELD_NAME_TYPE
-
-
Constructor Summary
Constructors Constructor Description BatchExecLookupJoin(ReadableConfig tableConfig, FlinkJoinType joinType, org.apache.calcite.rex.RexNode preFilterCondition, org.apache.calcite.rex.RexNode remainingJoinCondition, TemporalTableSourceSpec temporalTableSourceSpec, Map<Integer,LookupJoinUtil.LookupKey> lookupKeys, List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable, org.apache.calcite.rex.RexNode filterOnTemporalTable, LookupJoinUtil.AsyncLookupOptions asyncLookupOptions, InputProperty inputProperty, RowType outputType, String description)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Transformation<RowData>
createSyncLookupJoinWithState(Transformation<RowData> inputTransformation, org.apache.calcite.plan.RelOptTable temporalTable, ExecNodeConfig config, ClassLoader classLoader, Map<Integer,LookupJoinUtil.LookupKey> allLookupKeys, TableFunction<?> syncLookupFunction, RelBuilder relBuilder, RowType inputRowType, RowType tableSourceRowType, RowType resultRowType, boolean isLeftOuterJoin, boolean isObjectReuseEnabled, boolean lookupKeyContainsPrimaryKey)
Transformation<RowData>
translateToPlanInternal(org.apache.flink.table.planner.delegation.PlannerBase planner, ExecNodeConfig config)
Internal method, translates this node into a Flink operator.-
Methods inherited from class org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecLookupJoin
createJoinTransformation, createSyncLookupJoinFunction, getProjectionOutputRelDataType, getRightOutputRowType, getTemporalTableSourceSpec, validateLookupKeyType
-
Methods inherited from class org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase
accept, createFormattedTransformationDescription, createFormattedTransformationName, createTransformationDescription, createTransformationMeta, createTransformationMeta, createTransformationName, createTransformationUid, getContextFromAnnotation, getDescription, getId, getInputEdges, getInputProperties, getOutputType, getPersistedConfig, getSimplifiedName, getTransformation, inputsContainSingleton, replaceInputEdge, setCompiled, setInputEdges, supportFusionCodegen, translateToFusionCodegenSpec, translateToFusionCodegenSpecInternal, translateToPlan
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNode
accept, getDescription, getId, getInputEdges, getInputProperties, getOutputType, replaceInputEdge, setCompiled, setInputEdges
-
Methods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNodeTranslator
translateToPlan
-
Methods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.FusionCodegenExecNode
supportFusionCodegen, translateToFusionCodegenSpec
-
-
-
-
Constructor Detail
-
BatchExecLookupJoin
public BatchExecLookupJoin(ReadableConfig tableConfig, FlinkJoinType joinType, @Nullable org.apache.calcite.rex.RexNode preFilterCondition, @Nullable org.apache.calcite.rex.RexNode remainingJoinCondition, TemporalTableSourceSpec temporalTableSourceSpec, Map<Integer,LookupJoinUtil.LookupKey> lookupKeys, @Nullable List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable, @Nullable org.apache.calcite.rex.RexNode filterOnTemporalTable, @Nullable LookupJoinUtil.AsyncLookupOptions asyncLookupOptions, InputProperty inputProperty, RowType outputType, String description)
-
-
Method Detail
-
translateToPlanInternal
public Transformation<RowData> translateToPlanInternal(org.apache.flink.table.planner.delegation.PlannerBase planner, ExecNodeConfig config)
Description copied from class:ExecNodeBase
Internal method, translates this node into a Flink operator.- Specified by:
translateToPlanInternal
in classExecNodeBase<RowData>
- Parameters:
planner
- The planner.config
- per-ExecNode
configuration that contains the merged configuration from various layers which all the nodes implementing this method should use, instead of retrieving configuration from theplanner
. For more details checkExecNodeConfig
.
-
createSyncLookupJoinWithState
protected Transformation<RowData> createSyncLookupJoinWithState(Transformation<RowData> inputTransformation, org.apache.calcite.plan.RelOptTable temporalTable, ExecNodeConfig config, ClassLoader classLoader, Map<Integer,LookupJoinUtil.LookupKey> allLookupKeys, TableFunction<?> syncLookupFunction, RelBuilder relBuilder, RowType inputRowType, RowType tableSourceRowType, RowType resultRowType, boolean isLeftOuterJoin, boolean isObjectReuseEnabled, boolean lookupKeyContainsPrimaryKey)
- Specified by:
createSyncLookupJoinWithState
in classCommonExecLookupJoin
-
-