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


  • public class JobVertexScaler<KEY,​Context extends JobAutoScalerContext<KEY>>
    extends java.lang.Object
    Component responsible for computing vertex parallelism based on the scaling metrics.
    • Field Detail

      • INEFFECTIVE_SCALING

        @VisibleForTesting
        protected static final java.lang.String INEFFECTIVE_SCALING
        See Also:
        Constant Field Values
      • INEFFECTIVE_MESSAGE_FORMAT

        @VisibleForTesting
        protected static final java.lang.String INEFFECTIVE_MESSAGE_FORMAT
        See Also:
        Constant Field Values
    • Method Detail

      • computeScaleTargetParallelism

        public int computeScaleTargetParallelism​(Context context,
                                                 org.apache.flink.runtime.jobgraph.JobVertexID vertex,
                                                 java.util.Map<ScalingMetric,​EvaluatedScalingMetric> evaluatedMetrics,
                                                 java.util.SortedMap<java.time.Instant,​ScalingSummary> history)
      • scale

        @VisibleForTesting
        protected static int scale​(int parallelism,
                                   int numKeyGroups,
                                   double scaleFactor,
                                   int minParallelism,
                                   int maxParallelism)
      • setClock

        @VisibleForTesting
        protected void setClock​(java.time.Clock clock)