kfaraz commented on code in PR #18904:
URL: https://github.com/apache/druid/pull/18904#discussion_r2682317300
##########
docs/ingestion/supervisor.md:
##########
@@ -187,6 +189,51 @@ The following example shows a supervisor spec with
`lagBased` autoscaler:
```
</details>
+**2. Cost-based autoscaler strategy (experimental)**
+
+An autoscaler which coumputes the required supervisor task count via cost
function based on extracted lag and poll idle time metrics.
Review Comment:
```suggestion
An autoscaler which coumputes the required supervisor task count via cost
function based on ingestion lag and poll-to-idle ratio.
```
##########
docs/ingestion/supervisor.md:
##########
@@ -187,6 +189,51 @@ The following example shows a supervisor spec with
`lagBased` autoscaler:
```
</details>
+**2. Cost-based autoscaler strategy (experimental)**
+
+An autoscaler which coumputes the required supervisor task count via cost
function based on extracted lag and poll idle time metrics.
+Task counts are selected from a bounded range derived from the current
partitions-per-task (PPT) ratio,
+not strictly from factors/divisors of the partition count. This bounded PPT
window enables gradual scaling while
+voiding large jumps and still allowing non-divisor task counts when needed.
+
+**It is experimental and the implementation details as well as cost function
parameters are subject to change.**
+
+Note: Kinesis is not supported yet, support is in progress.
+
+The following table outlines the configuration properties related to the
`costBased` autoscaler strategy:
+
+| Property | Description
| Required | Default |
+|---------------------------|---------------------------------------------------------------------------|----------|---------|
+| `scaleActionPeriodMillis` | The frequency in milliseconds to check if a
scale action is triggered. | No | 60000 |
+| `lagWeight` | The weight of extracted lag value in cost
function. | No | 0.25 |
+| `idleWeight` | The weight of extracted poll idle value in cost
function. | No | 0.75 |
+| `defaultProcessingRate` | A, planned processing rate per task, required
for first cost estimations. | No | 1000 |
Review Comment:
Please remove the extra spaces from all of these rows as well, similar to
the header row.
##########
docs/ingestion/supervisor.md:
##########
@@ -187,6 +189,51 @@ The following example shows a supervisor spec with
`lagBased` autoscaler:
```
</details>
+**2. Cost-based autoscaler strategy (experimental)**
+
+An autoscaler which coumputes the required supervisor task count via cost
function based on extracted lag and poll idle time metrics.
+Task counts are selected from a bounded range derived from the current
partitions-per-task (PPT) ratio,
+not strictly from factors/divisors of the partition count. This bounded PPT
window enables gradual scaling while
+voiding large jumps and still allowing non-divisor task counts when needed.
+
+**It is experimental and the implementation details as well as cost function
parameters are subject to change.**
+
+Note: Kinesis is not supported yet, support is in progress.
+
+The following table outlines the configuration properties related to the
`costBased` autoscaler strategy:
+
+| Property | Description
| Required | Default |
Review Comment:
Please avoid formatting the tables in the docs. The general style we follow
is as below (no additional spaces). This ensures that each row doesn't have to
change if the size of a single row changes.
```suggestion
| Property | Description | Required | Default |
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]