himanshug commented on a change in pull request #9493: threshold based automatic query prioritization URL: https://github.com/apache/druid/pull/9493#discussion_r391786815
########## File path: docs/configuration/index.md ########## @@ -1473,22 +1473,41 @@ These Broker configurations can be defined in the `broker/runtime.properties` fi #### Query configuration -##### Query prioritization +##### Query routing |Property|Possible Values|Description|Default| |--------|---------------|-----------|-------| |`druid.broker.balancer.type`|`random`, `connectionCount`|Determines how the broker balances connections to Historical processes. `random` choose randomly, `connectionCount` picks the process with the fewest number of active connections to|`random`| |`druid.broker.select.tier`|`highestPriority`, `lowestPriority`, `custom`|If segments are cross-replicated across tiers in a cluster, you can tell the broker to prefer to select segments in a tier with a certain priority.|`highestPriority`| |`druid.broker.select.tier.custom.priorities`|`An array of integer priorities.`|Select servers in tiers with a custom priority list.|None| -##### Query laning +##### Query prioritization and laning *Laning strategies* allow you to control capacity utilization for heterogeneous query workloads. With laning, the broker examines and classifies a query for the purpose of assigning it to a 'lane'. Lanes have capacity limits, enforced by the broker, that can be used to ensure sufficient resources are available for other lanes or for interactive queries (with no lane), or to limit overall throughput for queries within the lane. Requests in excess of the capacity are discarded with an HTTP 429 status code. |Property|Description|Default| |--------|-----------|-------| |`druid.query.scheduler.numThreads`|Maximum number of HTTP threads to dedicate to query processing. To save HTTP thread capacity, this should be lower than `druid.server.http.numThreads`.|Unbounded| |`druid.query.scheduler.laning.strategy`|Query laning strategy to use to assign queries to a lane in order to control capacities for certain classes of queries.|`none`| +|`druid.query.scheduler.prioritization.strategy`|Query prioritization strategy to automatically assign priorities.|`none`| + +##### Prioritization strategies + +###### No auto prioritization strategy +With this configuration, queries are never assigned a priority automatically, but will preserve a priority manually set on the [query context](../querying/query-context.md) with the `priority` key. This mode can be explicitly set by setting `druid.query.scheduler.prioritization.strategy` to `none`. + +###### Threshold deprioritization strategy + +This prioritization strategy deprioritizes queries that cross any of a configurable set of thresholds, such as how far in the past the data is, how large of an interval a query covers, or the number of segments taking part in a query. Review comment: nit: by rephrasing it to say, "... strategy lowers priority of queries that..." , we could make the heading be "Threshold prioritization strategy" ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org For additional commands, e-mail: commits-h...@druid.apache.org