Class AbstractExternalPythonFunctionOperator<OUT>
java.lang.Object
org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator<OUT>
org.apache.flink.streaming.api.operators.python.process.AbstractExternalPythonFunctionOperator<OUT>
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.streaming.api.operators.KeyContext,org.apache.flink.streaming.api.operators.KeyContextHandler,org.apache.flink.streaming.api.operators.StreamOperator<OUT>,org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator,org.apache.flink.streaming.api.operators.YieldingOperator<OUT>
- Direct Known Subclasses:
AbstractExternalDataStreamPythonFunctionOperator,AbstractOneInputPythonFunctionOperator
@Internal
public abstract class AbstractExternalPythonFunctionOperator<OUT>
extends AbstractPythonFunctionOperator<OUT>
Abstract class for all stream operators to execute Python functions in external environment.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected PythonFunctionRunnerThePythonFunctionRunnerwhich is responsible for Python user-defined function execution.Fields inherited from class org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator
bundleFinishedCallback, config, elementCount, lastFinishBundleTime, maxBundleSize, systemEnvEnabledFields inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
combinedWatermark, lastRecordAttributes1, lastRecordAttributes2, latencyStats, LOG, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager -
Constructor Summary
ConstructorsConstructorDescriptionAbstractExternalPythonFunctionOperator(org.apache.flink.configuration.Configuration config) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()protected ProcessPythonEnvironmentManagerabstract PythonFunctionRunnerCreates thePythonFunctionRunnerwhich is responsible for Python user-defined function execution.protected voidabstract voidemitResult(org.apache.flink.api.java.tuple.Tuple3<String, byte[], Integer> resultTuple) Sends the execution result to the downstream operator.protected voidabstract org.apache.flink.table.functions.python.PythonEnvReturns thePythonEnvused to create PythonEnvironmentManager..protected voidvoidopen()Methods inherited from class org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator
checkInvokeFinishBundleByCount, finish, getConfiguration, getFlinkMetricContainer, isBundleFinished, prepareSnapshotPreBarrier, processWatermark, setCurrentKeyMethods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
beforeInitializeStateHandler, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, initializeState, isAsyncStateProcessingEnabled, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, setup, snapshotState, snapshotState, useSplittableTimersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler
hasKeyContextMethods inherited from interface org.apache.flink.streaming.api.operators.StreamOperator
getOperatorAttributes
-
Field Details
-
pythonFunctionRunner
ThePythonFunctionRunnerwhich is responsible for Python user-defined function execution.
-
-
Constructor Details
-
AbstractExternalPythonFunctionOperator
public AbstractExternalPythonFunctionOperator(org.apache.flink.configuration.Configuration config)
-
-
Method Details
-
open
- Specified by:
openin interfaceorg.apache.flink.streaming.api.operators.StreamOperator<OUT>- Overrides:
openin classAbstractPythonFunctionOperator<OUT>- Throws:
Exception
-
close
- Specified by:
closein interfaceorg.apache.flink.streaming.api.operators.StreamOperator<OUT>- Overrides:
closein classAbstractPythonFunctionOperator<OUT>- Throws:
Exception
-
invokeFinishBundle
- Specified by:
invokeFinishBundlein classAbstractPythonFunctionOperator<OUT>- Throws:
Exception
-
createPythonEnvironmentManager
- Specified by:
createPythonEnvironmentManagerin classAbstractPythonFunctionOperator<OUT>
-
drainUnregisteredTimers
protected void drainUnregisteredTimers()- Overrides:
drainUnregisteredTimersin classAbstractPythonFunctionOperator<OUT>
-
emitResults
- Throws:
Exception
-
getPythonEnv
public abstract org.apache.flink.table.functions.python.PythonEnv getPythonEnv()Returns thePythonEnvused to create PythonEnvironmentManager.. -
emitResult
public abstract void emitResult(org.apache.flink.api.java.tuple.Tuple3<String, byte[], throws ExceptionInteger> resultTuple) Sends the execution result to the downstream operator.- Throws:
Exception
-
createPythonFunctionRunner
Creates thePythonFunctionRunnerwhich is responsible for Python user-defined function execution.- Throws:
Exception
-