Class ScalingExecutor<KEY,​Context extends JobAutoScalerContext<KEY>>


  • public class ScalingExecutor<KEY,​Context extends JobAutoScalerContext<KEY>>
    extends java.lang.Object
    Class responsible for executing scaling decisions.
    • 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
    • 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)