Skip to content

Comparison to Related Projects

This page compares KTA to other horizontal and vertical or cluster autoscaling solutions.

Horizontal Autoscaling

Complex Algorithms Operator-Level Scaling on Streaming Topologies Framework-Agnostic
Horizontal Pod Autoscaler (HPA)
Kubernetes Event-driven Autoscaling (KEDA)
Custom Pod Autoscaler (CPA)
Flink Kubernetes Operator Autoscaler
Kubernetes Topology Autoscaler (KTA)

KTA vs. Kubernetes Horizontal Pod Autoscaler (HPA)

HPA uses a simple formula to determine the scale out:

desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]

This restricts HPA's ability to support state-of-the-art autoscaling algorithms for stream processing applications. Additionally, HPA cannot perform operator-level scaling on streaming topologies in a framework-agnostic manner.

However, HPA supports declarative scaling policies, which KTA currently does not support.

KTA vs. Kubernetes Event-Driven Autoscaling (KEDA)

KEDA, like HPA, use the same formula for determining the scale out:

desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]

Similar to HPA, this restricts KEDA's ability to support state-of-the-art autoscaling algorithms for stream processing applications. Additionally, KEDA cannot perform operator-level scaling on streaming topologies in a framework-agnostic manner.

However, KEDA supports declarative scaling policies and scaling to zero, which KTA currently does not support.

KTA vs. Custom Pod Autoscaler (CPA)

KTA shares architectural similarities with CPA (Kubernetes Operator, algorithms implemented in a general purpose programming language).

However, CPA does not support operator-level scaling on streaming topologies in a framework-agnostic manner. On the other hand, CPA supports scaling to zero, which KTA currently does not support.

Unlike the Flink Kubernetes Operator Autoscaler, KTA is framework-agnostic, making it ideal for research and rapid prototyping of autoscaling algorithms across different stream processing frameworks.

Vertical and Cluster Autoscaling

Vertical and cluster autoscaling solutions complement KTA’s horizontal autoscaling capabilities. Popular solutions include: