Class PythonScalarFunctionOperator
- 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>
-
- org.apache.flink.table.runtime.operators.python.AbstractOneInputPythonFunctionOperator<IN,OUT>
-
- org.apache.flink.table.runtime.operators.python.AbstractStatelessFunctionOperator<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
-
- org.apache.flink.table.runtime.operators.python.scalar.AbstractPythonScalarFunctionOperator
-
- org.apache.flink.table.runtime.operators.python.scalar.PythonScalarFunctionOperator
-
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.streaming.api.operators.BoundedOneInput,org.apache.flink.streaming.api.operators.Input<org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.KeyContext,org.apache.flink.streaming.api.operators.KeyContextHandler,org.apache.flink.streaming.api.operators.OneInputStreamOperator<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.SetupableStreamOperator<org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator
@Internal public class PythonScalarFunctionOperator extends AbstractPythonScalarFunctionOperator
The PythonScalarFunctionoperator.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.flink.table.runtime.operators.python.scalar.AbstractPythonScalarFunctionOperator
reuseJoinedRow, rowDataWrapper, scalarFunctions
-
Fields inherited from class org.apache.flink.table.runtime.operators.python.AbstractStatelessFunctionOperator
bais, baisWrapper, baos, baosWrapper, forwardedInputQueue, inputType, udfInputType, udfOutputType
-
Fields inherited from class org.apache.flink.streaming.api.operators.python.process.AbstractExternalPythonFunctionOperator
pythonFunctionRunner
-
Fields inherited from class org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator
bundleFinishedCallback, config, elementCount, lastFinishBundleTime, maxBundleSize, systemEnvEnabled
-
-
Constructor Summary
Constructors Constructor Description PythonScalarFunctionOperator(org.apache.flink.configuration.Configuration config, org.apache.flink.table.functions.python.PythonFunctionInfo[] scalarFunctions, org.apache.flink.table.types.logical.RowType inputType, org.apache.flink.table.types.logical.RowType udfInputType, org.apache.flink.table.types.logical.RowType udfOutputType, org.apache.flink.table.runtime.generated.GeneratedProjection udfInputGeneratedProjection, org.apache.flink.table.runtime.generated.GeneratedProjection forwardedFieldGeneratedProjection)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FlinkFnApi.CoderInfoDescriptorcreateInputCoderInfoDescriptor(org.apache.flink.table.types.logical.RowType runnerInputType)FlinkFnApi.CoderInfoDescriptorcreateOutputCoderInfoDescriptor(org.apache.flink.table.types.logical.RowType runnerOutType)voidemitResult(org.apache.flink.api.java.tuple.Tuple3<String,byte[],Integer> resultTuple)Sends the execution result to the downstream operator.voidopen()voidprocessElementInternal(org.apache.flink.table.data.RowData value)-
Methods inherited from class org.apache.flink.table.runtime.operators.python.scalar.AbstractPythonScalarFunctionOperator
bufferInput, createUserDefinedFunctionsProto, getFunctionInput, getFunctionUrn, getPythonEnv
-
Methods inherited from class org.apache.flink.table.runtime.operators.python.AbstractStatelessFunctionOperator
createPythonFunctionRunner, processElement
-
Methods inherited from class org.apache.flink.table.runtime.operators.python.AbstractOneInputPythonFunctionOperator
endInput
-
Methods inherited from class org.apache.flink.streaming.api.operators.python.process.AbstractExternalPythonFunctionOperator
close, createPythonEnvironmentManager, drainUnregisteredTimers, emitResults, invokeFinishBundle
-
Methods inherited from class org.apache.flink.streaming.api.operators.python.AbstractPythonFunctionOperator
checkInvokeFinishBundleByCount, finish, getConfiguration, getFlinkMetricContainer, isBundleFinished, prepareSnapshotPreBarrier, processWatermark, setCurrentKey
-
Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, initializeState, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setChainingStrategy, setKeyContextElement1, setKeyContextElement2, setProcessingTimeService, setup, snapshotState, snapshotState
-
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.api.common.state.CheckpointListener
notifyCheckpointAborted, notifyCheckpointComplete
-
Methods inherited from interface org.apache.flink.streaming.api.operators.Input
processLatencyMarker, processRecordAttributes, processWatermark, processWatermarkStatus
-
Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContext
getCurrentKey, setCurrentKey
-
Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler
hasKeyContext
-
-
-
-
Constructor Detail
-
PythonScalarFunctionOperator
public PythonScalarFunctionOperator(org.apache.flink.configuration.Configuration config, org.apache.flink.table.functions.python.PythonFunctionInfo[] scalarFunctions, org.apache.flink.table.types.logical.RowType inputType, org.apache.flink.table.types.logical.RowType udfInputType, org.apache.flink.table.types.logical.RowType udfOutputType, org.apache.flink.table.runtime.generated.GeneratedProjection udfInputGeneratedProjection, org.apache.flink.table.runtime.generated.GeneratedProjection forwardedFieldGeneratedProjection)
-
-
Method Detail
-
open
public void open() throws Exception- Specified by:
openin interfaceorg.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>- Overrides:
openin classAbstractPythonScalarFunctionOperator- Throws:
Exception
-
createInputCoderInfoDescriptor
public FlinkFnApi.CoderInfoDescriptor createInputCoderInfoDescriptor(org.apache.flink.table.types.logical.RowType runnerInputType)
- Specified by:
createInputCoderInfoDescriptorin classAbstractStatelessFunctionOperator<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
-
createOutputCoderInfoDescriptor
public FlinkFnApi.CoderInfoDescriptor createOutputCoderInfoDescriptor(org.apache.flink.table.types.logical.RowType runnerOutType)
- Specified by:
createOutputCoderInfoDescriptorin classAbstractStatelessFunctionOperator<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
-
processElementInternal
public void processElementInternal(org.apache.flink.table.data.RowData value) throws Exception- Specified by:
processElementInternalin classAbstractStatelessFunctionOperator<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>- Throws:
Exception
-
emitResult
public void emitResult(org.apache.flink.api.java.tuple.Tuple3<String,byte[],Integer> resultTuple) throws IOException
Description copied from class:AbstractExternalPythonFunctionOperatorSends the execution result to the downstream operator.- Specified by:
emitResultin classAbstractExternalPythonFunctionOperator<org.apache.flink.table.data.RowData>- Throws:
IOException
-
-