Class StreamingJobGraphGenerator
java.lang.Object
org.apache.flink.streaming.api.graph.StreamingJobGraphGenerator
The StreamingJobGraphGenerator converts a
StreamGraph into a JobGraph.-
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddVertexIndexPrefixInVertexName(JobVertexBuildContext jobVertexBuildContext, AtomicInteger vertexIndexId) static IntermediateDataSetconnect(Integer headOfChain, StreamEdge edge, NonChainedOutput output, Map<Integer, JobVertex> jobVertices, JobVertexBuildContext jobVertexBuildContext) static JobGraphcreateAndInitializeJobGraph(StreamGraph streamGraph, org.apache.flink.api.common.JobID jobId) static List<StreamEdge>createChain(Integer currentNodeId, int chainIndex, OperatorChainInfo chainInfo, Map<Integer, OperatorChainInfo> chainEntryPoints, boolean canCreateNewChain, Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext, Consumer<Integer> visitedStreamNodeConsumer) static org.apache.flink.api.common.operators.ResourceSpeccreateChainedMinResources(Integer vertexID, List<StreamEdge> chainedOutputs, OperatorChainInfo operatorChainInfo, JobVertexBuildContext jobVertexBuildContext) static StringcreateChainedName(Integer vertexID, List<StreamEdge> chainedOutputs, Optional<OperatorChainInfo> operatorChainInfo, Map<Integer, String> chainedNames, JobVertexBuildContext jobVertexBuildContext) static org.apache.flink.api.common.operators.ResourceSpeccreateChainedPreferredResources(Integer vertexID, List<StreamEdge> chainedOutputs, OperatorChainInfo operatorChainInfo, JobVertexBuildContext jobVertexBuildContext) static JobGraphcreateJobGraph(ClassLoader userClassLoader, StreamGraph streamGraph, org.apache.flink.api.common.JobID jobID) static JobGraphcreateJobGraph(StreamGraph streamGraph) static JobVertexcreateJobVertex(OperatorChainInfo chainInfo, Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext) static voidcreateSourceChainInfo(StreamNode sourceNode, Map<Integer, OperatorChainInfo> chainEntryPoints, JobVertexBuildContext jobVertexBuildContext) static ResultPartitionTypedetermineUndefinedResultPartitionType(StreamEdge edge, JobVertexBuildContext jobVertexBuildContext) static OperatorIDgenerateOperatorID(String operatorUid) Creates an instance ofOperatorIDbased on the provided operator unique identifier (UID).static booleanisChainable(StreamEdge edge, StreamGraph streamGraph) static booleanisChainable(StreamEdge edge, StreamGraph streamGraph, boolean allowChainWithDefaultParallelism) static booleanisChainableSource(StreamNode streamNode, StreamGraph streamGraph) static voidmarkSupportingConcurrentExecutionAttempts(JobVertexBuildContext jobVertexBuildContext) static voidpreValidate(StreamGraph streamGraph, ClassLoader userClassloader) static voidserializeOperatorCoordinatorsAndStreamConfig(Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext) static voidsetAllOperatorNonChainedOutputsConfigs(Map<Integer, Map<StreamEdge, NonChainedOutput>> opIntermediateOutputs, JobVertexBuildContext jobVertexBuildContext) static voidsetManagedMemoryFraction(JobVertexBuildContext jobVertexBuildContext) static voidsetOperatorChainedOutputsConfig(StreamConfig config, List<StreamEdge> chainableOutputs, JobVertexBuildContext jobVertexBuildContext) static voidsetOperatorConfig(Integer vertexId, StreamConfig config, OperatorChainInfo chainInfo, JobVertexBuildContext jobVertexBuildContext) static voidsetPhysicalEdges(JobVertexBuildContext jobVertexBuildContext) static voidsetSlotSharingAndCoLocation(JobVertexBuildContext jobVertexBuildContext) static voidsetVertexDescription(JobVertexBuildContext jobVertexBuildContext) static voidtryConvertPartitionerForDynamicGraph(List<StreamEdge> chainableOutputs, List<StreamEdge> nonChainableOutputs, JobVertexBuildContext jobVertexBuildContext) static voidvalidateHybridShuffleExecuteInBatchMode(JobVertexBuildContext jobVertexBuildContext)
-
Method Details
-
createJobGraph
-
createJobGraph
public static JobGraph createJobGraph(ClassLoader userClassLoader, StreamGraph streamGraph, @Nullable org.apache.flink.api.common.JobID jobID) -
serializeOperatorCoordinatorsAndStreamConfig
public static void serializeOperatorCoordinatorsAndStreamConfig(Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext) -
generateOperatorID
Creates an instance ofOperatorIDbased on the provided operator unique identifier (UID).- Parameters:
operatorUid- the unique identifier of the operator, used to generate the hash- Returns:
- a new
OperatorIDinstance generated from the specified operator UID
-
addVertexIndexPrefixInVertexName
public static void addVertexIndexPrefixInVertexName(JobVertexBuildContext jobVertexBuildContext, AtomicInteger vertexIndexId) -
setVertexDescription
-
preValidate
-
setPhysicalEdges
-
createChain
public static List<StreamEdge> createChain(Integer currentNodeId, int chainIndex, OperatorChainInfo chainInfo, Map<Integer, OperatorChainInfo> chainEntryPoints, boolean canCreateNewChain, Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext, @Nullable Consumer<Integer> visitedStreamNodeConsumer) -
createAndInitializeJobGraph
public static JobGraph createAndInitializeJobGraph(StreamGraph streamGraph, @Nullable org.apache.flink.api.common.JobID jobId) -
createSourceChainInfo
public static void createSourceChainInfo(StreamNode sourceNode, Map<Integer, OperatorChainInfo> chainEntryPoints, JobVertexBuildContext jobVertexBuildContext) -
createChainedName
public static String createChainedName(Integer vertexID, List<StreamEdge> chainedOutputs, Optional<OperatorChainInfo> operatorChainInfo, Map<Integer, String> chainedNames, JobVertexBuildContext jobVertexBuildContext) -
createChainedMinResources
public static org.apache.flink.api.common.operators.ResourceSpec createChainedMinResources(Integer vertexID, List<StreamEdge> chainedOutputs, OperatorChainInfo operatorChainInfo, JobVertexBuildContext jobVertexBuildContext) -
createChainedPreferredResources
public static org.apache.flink.api.common.operators.ResourceSpec createChainedPreferredResources(Integer vertexID, List<StreamEdge> chainedOutputs, OperatorChainInfo operatorChainInfo, JobVertexBuildContext jobVertexBuildContext) -
createJobVertex
public static JobVertex createJobVertex(OperatorChainInfo chainInfo, Executor serializationExecutor, JobVertexBuildContext jobVertexBuildContext) -
setOperatorConfig
public static void setOperatorConfig(Integer vertexId, StreamConfig config, OperatorChainInfo chainInfo, JobVertexBuildContext jobVertexBuildContext) -
setOperatorChainedOutputsConfig
public static void setOperatorChainedOutputsConfig(StreamConfig config, List<StreamEdge> chainableOutputs, JobVertexBuildContext jobVertexBuildContext) -
setAllOperatorNonChainedOutputsConfigs
public static void setAllOperatorNonChainedOutputsConfigs(Map<Integer, Map<StreamEdge, NonChainedOutput>> opIntermediateOutputs, JobVertexBuildContext jobVertexBuildContext) -
tryConvertPartitionerForDynamicGraph
public static void tryConvertPartitionerForDynamicGraph(List<StreamEdge> chainableOutputs, List<StreamEdge> nonChainableOutputs, JobVertexBuildContext jobVertexBuildContext) -
connect
public static IntermediateDataSet connect(Integer headOfChain, StreamEdge edge, NonChainedOutput output, Map<Integer, JobVertex> jobVertices, JobVertexBuildContext jobVertexBuildContext) -
determineUndefinedResultPartitionType
public static ResultPartitionType determineUndefinedResultPartitionType(StreamEdge edge, JobVertexBuildContext jobVertexBuildContext) -
isChainable
-
isChainable
public static boolean isChainable(StreamEdge edge, StreamGraph streamGraph, boolean allowChainWithDefaultParallelism) -
isChainableSource
-
markSupportingConcurrentExecutionAttempts
public static void markSupportingConcurrentExecutionAttempts(JobVertexBuildContext jobVertexBuildContext) -
setSlotSharingAndCoLocation
-
validateHybridShuffleExecuteInBatchMode
public static void validateHybridShuffleExecuteInBatchMode(JobVertexBuildContext jobVertexBuildContext) -
setManagedMemoryFraction
-