Package org.apache.flink.autoscaler
Class ScalingExecutor<KEY,Context extends JobAutoScalerContext<KEY>>
- java.lang.Object
-
- org.apache.flink.autoscaler.ScalingExecutor<KEY,Context>
-
public class ScalingExecutor<KEY,Context extends JobAutoScalerContext<KEY>> extends java.lang.Object
Class responsible for executing scaling decisions.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
GC_PRESSURE_MESSAGE
static java.lang.String
HEAP_USAGE_MESSAGE
static java.lang.String
RESOURCE_QUOTA_REACHED_MESSAGE
-
Constructor Summary
Constructors Constructor Description ScalingExecutor(AutoScalerEventHandler<KEY,Context> autoScalerEventHandler, AutoScalerStateStore<KEY,Context> autoScalerStateStore)
ScalingExecutor(AutoScalerEventHandler<KEY,Context> autoScalerEventHandler, AutoScalerStateStore<KEY,Context> autoScalerStateStore, ResourceCheck resourceCheck)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static boolean
allVerticesWithinUtilizationTarget(java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,java.util.Map<ScalingMetric,EvaluatedScalingMetric>> evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries)
boolean
scaleResource(Context context, EvaluatedMetrics evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,java.util.SortedMap<java.time.Instant,ScalingSummary>> scalingHistory, ScalingTracking scalingTracking, java.time.Instant now, JobTopology jobTopology)
protected boolean
scalingWouldExceedMaxResources(org.apache.flink.configuration.Configuration tunedConfig, JobTopology jobTopology, EvaluatedMetrics evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries, Context ctx)
protected static boolean
scalingWouldExceedResourceQuota(org.apache.flink.configuration.Configuration tunedConfig, JobTopology jobTopology, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries, JobAutoScalerContext<?> ctx)
-
-
-
Field Detail
-
GC_PRESSURE_MESSAGE
public static final java.lang.String GC_PRESSURE_MESSAGE
- See Also:
- Constant Field Values
-
HEAP_USAGE_MESSAGE
public static final java.lang.String HEAP_USAGE_MESSAGE
- See Also:
- Constant Field Values
-
RESOURCE_QUOTA_REACHED_MESSAGE
public static final java.lang.String RESOURCE_QUOTA_REACHED_MESSAGE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ScalingExecutor
public ScalingExecutor(AutoScalerEventHandler<KEY,Context> autoScalerEventHandler, AutoScalerStateStore<KEY,Context> autoScalerStateStore)
-
ScalingExecutor
public ScalingExecutor(AutoScalerEventHandler<KEY,Context> autoScalerEventHandler, AutoScalerStateStore<KEY,Context> autoScalerStateStore, @Nullable ResourceCheck resourceCheck)
-
-
Method Detail
-
scaleResource
public boolean scaleResource(Context context, EvaluatedMetrics evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,java.util.SortedMap<java.time.Instant,ScalingSummary>> scalingHistory, ScalingTracking scalingTracking, java.time.Instant now, JobTopology jobTopology) throws java.lang.Exception
- Throws:
java.lang.Exception
-
allVerticesWithinUtilizationTarget
protected static boolean allVerticesWithinUtilizationTarget(java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,java.util.Map<ScalingMetric,EvaluatedScalingMetric>> evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries)
-
scalingWouldExceedMaxResources
@VisibleForTesting protected boolean scalingWouldExceedMaxResources(org.apache.flink.configuration.Configuration tunedConfig, JobTopology jobTopology, EvaluatedMetrics evaluatedMetrics, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries, Context ctx)
-
scalingWouldExceedResourceQuota
protected static boolean scalingWouldExceedResourceQuota(org.apache.flink.configuration.Configuration tunedConfig, JobTopology jobTopology, java.util.Map<org.apache.flink.runtime.jobgraph.JobVertexID,ScalingSummary> scalingSummaries, JobAutoScalerContext<?> ctx)
-
-