@Internal public class StreamGraph extends Object implements org.apache.flink.api.dag.Pipeline
限定符和类型 | 字段和说明 |
---|---|
static String |
ITERATION_SINK_NAME_PREFIX |
static String |
ITERATION_SOURCE_NAME_PREFIX |
protected Map<Integer,String> |
vertexIDtoBrokerID |
protected Map<Integer,Long> |
vertexIDtoLoopTimeout |
构造器和说明 |
---|
StreamGraph(org.apache.flink.api.common.ExecutionConfig executionConfig,
CheckpointConfig checkpointConfig,
org.apache.flink.runtime.jobgraph.SavepointRestoreSettings savepointRestoreSettings) |
限定符和类型 | 方法和说明 |
---|---|
<IN1,IN2,OUT> |
addCoOperator(Integer vertexID,
String slotSharingGroup,
String coLocationGroup,
StreamOperatorFactory<OUT> taskOperatorFactory,
org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInfo,
org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInfo,
org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo,
String operatorName) |
void |
addEdge(Integer upStreamVertexID,
Integer downStreamVertexID,
int typeNumber) |
protected StreamNode |
addNode(Integer vertexID,
String slotSharingGroup,
String coLocationGroup,
Class<? extends org.apache.flink.runtime.jobgraph.tasks.AbstractInvokable> vertexClass,
StreamOperatorFactory<?> operatorFactory,
String operatorName) |
<IN,OUT> void |
addOperator(Integer vertexID,
String slotSharingGroup,
String coLocationGroup,
StreamOperatorFactory<OUT> operatorFactory,
org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo,
org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo,
String operatorName) |
<T> void |
addOutputSelector(Integer vertexID,
OutputSelector<T> outputSelector) |
<IN,OUT> void |
addSink(Integer vertexID,
String slotSharingGroup,
String coLocationGroup,
StreamOperatorFactory<OUT> operatorFactory,
org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo,
org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo,
String operatorName) |
<IN,OUT> void |
addSource(Integer vertexID,
String slotSharingGroup,
String coLocationGroup,
StreamOperatorFactory<OUT> operatorFactory,
org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo,
org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo,
String operatorName) |
void |
addVirtualPartitionNode(Integer originalId,
Integer virtualId,
StreamPartitioner<?> partitioner,
ShuffleMode shuffleMode)
Adds a new virtual node that is used to connect a downstream vertex to an input with a
certain partitioning.
|
void |
addVirtualSelectNode(Integer originalId,
Integer virtualId,
List<String> selectedNames)
Adds a new virtual node that is used to connect a downstream vertex to only the outputs
with the selected names.
|
void |
addVirtualSideOutputNode(Integer originalId,
Integer virtualId,
org.apache.flink.util.OutputTag outputTag)
Adds a new virtual node that is used to connect a downstream vertex to only the outputs with
the selected side-output
OutputTag . |
void |
clear()
Remove all registered nodes etc.
|
org.apache.flink.api.java.tuple.Tuple2<StreamNode,StreamNode> |
createIterationSourceAndSink(int loopId,
int sourceId,
int sinkId,
long timeout,
int parallelism,
int maxParallelism,
org.apache.flink.api.common.operators.ResourceSpec minResources,
org.apache.flink.api.common.operators.ResourceSpec preferredResources) |
Set<org.apache.flink.api.java.tuple.Tuple2<Integer,StreamOperatorFactory<?>>> |
getAllOperatorFactory() |
String |
getBrokerID(Integer vertexID) |
CheckpointConfig |
getCheckpointConfig() |
org.apache.flink.api.common.ExecutionConfig |
getExecutionConfig() |
Set<org.apache.flink.api.java.tuple.Tuple2<StreamNode,StreamNode>> |
getIterationSourceSinkPairs() |
org.apache.flink.runtime.jobgraph.JobGraph |
getJobGraph()
Gets the assembled
JobGraph with a random JobID . |
org.apache.flink.runtime.jobgraph.JobGraph |
getJobGraph(org.apache.flink.api.common.JobID jobID)
Gets the assembled
JobGraph with a specified JobID . |
String |
getJobName() |
long |
getLoopTimeout(Integer vertexID) |
org.apache.flink.runtime.jobgraph.SavepointRestoreSettings |
getSavepointRestoreSettings() |
org.apache.flink.runtime.jobgraph.ScheduleMode |
getScheduleMode() |
Collection<Integer> |
getSinkIDs() |
String |
getSlotSharingGroup(Integer id)
Determines the slot sharing group of an operation across virtual nodes.
|
Collection<Integer> |
getSourceIDs() |
StreamNode |
getSourceVertex(StreamEdge edge) |
org.apache.flink.runtime.state.StateBackend |
getStateBackend() |
List<StreamEdge> |
getStreamEdges(int sourceId,
int targetId) |
String |
getStreamingPlanAsJSON() |
StreamNode |
getStreamNode(Integer vertexID) |
Collection<StreamNode> |
getStreamNodes() |
StreamNode |
getTargetVertex(StreamEdge edge) |
TimeCharacteristic |
getTimeCharacteristic() |
Collection<org.apache.flink.api.java.tuple.Tuple2<String,org.apache.flink.api.common.cache.DistributedCache.DistributedCacheEntry>> |
getUserArtifacts() |
protected Collection<? extends Integer> |
getVertexIDs() |
boolean |
isAllVerticesInSameSlotSharingGroupByDefault()
Gets whether to put all vertices into the same slot sharing group by default.
|
boolean |
isBlockingConnectionsBetweenChains()
If there are some stream edges that can not be chained and the shuffle mode of edge is not
specified, translate these edges into
BLOCKING result partition type. |
boolean |
isChainingEnabled() |
boolean |
isIterative() |
void |
setAllVerticesInSameSlotSharingGroupByDefault(boolean allVerticesInSameSlotSharingGroupByDefault)
Set whether to put all vertices into the same slot sharing group by default.
|
void |
setBlockingConnectionsBetweenChains(boolean blockingConnectionsBetweenChains)
If there are some stream edges that can not be chained and the shuffle mode of edge is not
specified, translate these edges into
BLOCKING result partition type. |
void |
setBufferTimeout(Integer vertexID,
long bufferTimeout) |
void |
setChaining(boolean chaining) |
void |
setInputFormat(Integer vertexID,
org.apache.flink.api.common.io.InputFormat<?,?> inputFormat) |
void |
setJobName(String jobName) |
void |
setManagedMemoryWeight(int vertexID,
int managedMemoryWeight) |
void |
setMaxParallelism(int vertexID,
int maxParallelism) |
void |
setOneInputStateKey(Integer vertexID,
org.apache.flink.api.java.functions.KeySelector<?,?> keySelector,
org.apache.flink.api.common.typeutils.TypeSerializer<?> keySerializer) |
void |
setOutputFormat(Integer vertexID,
org.apache.flink.api.common.io.OutputFormat<?> outputFormat) |
<OUT> void |
setOutType(Integer vertexID,
org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType) |
void |
setParallelism(Integer vertexID,
int parallelism) |
void |
setResources(int vertexID,
org.apache.flink.api.common.operators.ResourceSpec minResources,
org.apache.flink.api.common.operators.ResourceSpec preferredResources) |
void |
setSavepointRestoreSettings(org.apache.flink.runtime.jobgraph.SavepointRestoreSettings savepointRestoreSettings) |
void |
setScheduleMode(org.apache.flink.runtime.jobgraph.ScheduleMode scheduleMode) |
void |
setSerializers(Integer vertexID,
org.apache.flink.api.common.typeutils.TypeSerializer<?> in1,
org.apache.flink.api.common.typeutils.TypeSerializer<?> in2,
org.apache.flink.api.common.typeutils.TypeSerializer<?> out) |
void |
setSerializersFrom(Integer from,
Integer to) |
void |
setStateBackend(org.apache.flink.runtime.state.StateBackend backend) |
void |
setTimeCharacteristic(TimeCharacteristic timeCharacteristic) |
void |
setTwoInputStateKey(Integer vertexID,
org.apache.flink.api.java.functions.KeySelector<?,?> keySelector1,
org.apache.flink.api.java.functions.KeySelector<?,?> keySelector2,
org.apache.flink.api.common.typeutils.TypeSerializer<?> keySerializer) |
void |
setUserArtifacts(Collection<org.apache.flink.api.java.tuple.Tuple2<String,org.apache.flink.api.common.cache.DistributedCache.DistributedCacheEntry>> userArtifacts) |
public StreamGraph(org.apache.flink.api.common.ExecutionConfig executionConfig, CheckpointConfig checkpointConfig, org.apache.flink.runtime.jobgraph.SavepointRestoreSettings savepointRestoreSettings)
public void clear()
public org.apache.flink.api.common.ExecutionConfig getExecutionConfig()
public CheckpointConfig getCheckpointConfig()
public void setSavepointRestoreSettings(org.apache.flink.runtime.jobgraph.SavepointRestoreSettings savepointRestoreSettings)
public org.apache.flink.runtime.jobgraph.SavepointRestoreSettings getSavepointRestoreSettings()
public String getJobName()
public void setJobName(String jobName)
public void setChaining(boolean chaining)
public void setStateBackend(org.apache.flink.runtime.state.StateBackend backend)
public org.apache.flink.runtime.state.StateBackend getStateBackend()
public org.apache.flink.runtime.jobgraph.ScheduleMode getScheduleMode()
public void setScheduleMode(org.apache.flink.runtime.jobgraph.ScheduleMode scheduleMode)
public Collection<org.apache.flink.api.java.tuple.Tuple2<String,org.apache.flink.api.common.cache.DistributedCache.DistributedCacheEntry>> getUserArtifacts()
public void setUserArtifacts(Collection<org.apache.flink.api.java.tuple.Tuple2<String,org.apache.flink.api.common.cache.DistributedCache.DistributedCacheEntry>> userArtifacts)
public TimeCharacteristic getTimeCharacteristic()
public void setTimeCharacteristic(TimeCharacteristic timeCharacteristic)
public boolean isBlockingConnectionsBetweenChains()
BLOCKING
result partition type.public void setBlockingConnectionsBetweenChains(boolean blockingConnectionsBetweenChains)
BLOCKING
result partition type.public void setAllVerticesInSameSlotSharingGroupByDefault(boolean allVerticesInSameSlotSharingGroupByDefault)
allVerticesInSameSlotSharingGroupByDefault
- indicates whether to put all vertices
into the same slot sharing group by default.public boolean isAllVerticesInSameSlotSharingGroupByDefault()
public boolean isChainingEnabled()
public boolean isIterative()
public <IN,OUT> void addSource(Integer vertexID, @Nullable String slotSharingGroup, @Nullable String coLocationGroup, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo, String operatorName)
public <IN,OUT> void addSink(Integer vertexID, @Nullable String slotSharingGroup, @Nullable String coLocationGroup, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo, String operatorName)
public <IN,OUT> void addOperator(Integer vertexID, @Nullable String slotSharingGroup, @Nullable String coLocationGroup, StreamOperatorFactory<OUT> operatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInfo, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo, String operatorName)
public <IN1,IN2,OUT> void addCoOperator(Integer vertexID, String slotSharingGroup, @Nullable String coLocationGroup, StreamOperatorFactory<OUT> taskOperatorFactory, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInfo, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInfo, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInfo, String operatorName)
protected StreamNode addNode(Integer vertexID, @Nullable String slotSharingGroup, @Nullable String coLocationGroup, Class<? extends org.apache.flink.runtime.jobgraph.tasks.AbstractInvokable> vertexClass, StreamOperatorFactory<?> operatorFactory, String operatorName)
public void addVirtualSelectNode(Integer originalId, Integer virtualId, List<String> selectedNames)
When adding an edge from the virtual node to a downstream node the connection will be made to the original node, only with the selected names given here.
originalId
- ID of the node that should be connected to.virtualId
- ID of the virtual node.selectedNames
- The selected names.public void addVirtualSideOutputNode(Integer originalId, Integer virtualId, org.apache.flink.util.OutputTag outputTag)
OutputTag
.originalId
- ID of the node that should be connected to.virtualId
- ID of the virtual node.outputTag
- The selected side-output OutputTag
.public void addVirtualPartitionNode(Integer originalId, Integer virtualId, StreamPartitioner<?> partitioner, ShuffleMode shuffleMode)
When adding an edge from the virtual node to a downstream node the connection will be made to the original node, but with the partitioning given here.
originalId
- ID of the node that should be connected to.virtualId
- ID of the virtual node.partitioner
- The partitionerpublic String getSlotSharingGroup(Integer id)
public <T> void addOutputSelector(Integer vertexID, OutputSelector<T> outputSelector)
public void setParallelism(Integer vertexID, int parallelism)
public void setMaxParallelism(int vertexID, int maxParallelism)
public void setResources(int vertexID, org.apache.flink.api.common.operators.ResourceSpec minResources, org.apache.flink.api.common.operators.ResourceSpec preferredResources)
public void setManagedMemoryWeight(int vertexID, int managedMemoryWeight)
public void setOneInputStateKey(Integer vertexID, org.apache.flink.api.java.functions.KeySelector<?,?> keySelector, org.apache.flink.api.common.typeutils.TypeSerializer<?> keySerializer)
public void setTwoInputStateKey(Integer vertexID, org.apache.flink.api.java.functions.KeySelector<?,?> keySelector1, org.apache.flink.api.java.functions.KeySelector<?,?> keySelector2, org.apache.flink.api.common.typeutils.TypeSerializer<?> keySerializer)
public void setBufferTimeout(Integer vertexID, long bufferTimeout)
public void setSerializers(Integer vertexID, org.apache.flink.api.common.typeutils.TypeSerializer<?> in1, org.apache.flink.api.common.typeutils.TypeSerializer<?> in2, org.apache.flink.api.common.typeutils.TypeSerializer<?> out)
public <OUT> void setOutType(Integer vertexID, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType)
public void setInputFormat(Integer vertexID, org.apache.flink.api.common.io.InputFormat<?,?> inputFormat)
public void setOutputFormat(Integer vertexID, org.apache.flink.api.common.io.OutputFormat<?> outputFormat)
public StreamNode getStreamNode(Integer vertexID)
protected Collection<? extends Integer> getVertexIDs()
public List<StreamEdge> getStreamEdges(int sourceId, int targetId)
public Collection<Integer> getSourceIDs()
public Collection<Integer> getSinkIDs()
public Collection<StreamNode> getStreamNodes()
public Set<org.apache.flink.api.java.tuple.Tuple2<Integer,StreamOperatorFactory<?>>> getAllOperatorFactory()
public long getLoopTimeout(Integer vertexID)
public org.apache.flink.api.java.tuple.Tuple2<StreamNode,StreamNode> createIterationSourceAndSink(int loopId, int sourceId, int sinkId, long timeout, int parallelism, int maxParallelism, org.apache.flink.api.common.operators.ResourceSpec minResources, org.apache.flink.api.common.operators.ResourceSpec preferredResources)
public Set<org.apache.flink.api.java.tuple.Tuple2<StreamNode,StreamNode>> getIterationSourceSinkPairs()
public StreamNode getSourceVertex(StreamEdge edge)
public StreamNode getTargetVertex(StreamEdge edge)
public org.apache.flink.runtime.jobgraph.JobGraph getJobGraph()
JobGraph
with a random JobID
.public org.apache.flink.runtime.jobgraph.JobGraph getJobGraph(@Nullable org.apache.flink.api.common.JobID jobID)
JobGraph
with a specified JobID
.public String getStreamingPlanAsJSON()
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.