Configurable Broker tier selection for Realtime servers#19062
Open
abhishekrb19 wants to merge 3 commits intomasterfrom
Open
Configurable Broker tier selection for Realtime servers#19062abhishekrb19 wants to merge 3 commits intomasterfrom
abhishekrb19 wants to merge 3 commits intomasterfrom
Conversation
server/src/main/java/org/apache/druid/client/selector/ServerSelector.java
Dismissed
Show dismissed
Hide dismissed
server/src/main/java/org/apache/druid/client/selector/ServerSelector.java
Dismissed
Show dismissed
Hide dismissed
Currently the BrokerServerView shares the same strategy configured by druid.broker.select.tier for both historicals and realtime servers. This patch allows operators to optionally overide that behavior based on how realtime servers are setup via druid.broker.select.realtime.tier property. If this property isn't specified, the realtime servers' strategy will continue to share the historical's strategy (backwards compatble).
5e5a322 to
441f48d
Compare
734a358 to
fd405ba
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Currently, the Broker uses the same strategy configured by
druid.broker.select.tierfor both Historicals and realtime servers.This patch allows operators to optionally override that behavior for realtime servers via the
druid.broker.select.realtime.tierproperty. This is useful in environments where Historicals and realtime servers are configured differently.druid.broker.select.realtime.tieris not configured (default behavior), realtime servers will continue to use the default strategy or the one configured viadruid.broker.select.tier, for backward compatibility.druid.broker.select.realtime.tieris configured, all strategies currently supported bydruid.broker.select.tierwill also apply to the realtime strategy.Approach:
BrokerRealtimeTierSelectorModulethat's added toCliBrokerTierSelectorStrategyBrokerServerViewwill continue to use the configured historical's tier strategyWhile at it, I also added
toString()and related helpers forTierSelectorStrategyimplementations to improve debuggability and test verification.I can document this configuration separately, since the relevant sections in the existing docs for
druid.broker.select.tiercould also use an update.Release note:
Added
druid.broker.select.realtime.tieron the Brokers to optionally override the Broker’s tier selection strategy for realtime servers. If unset, realtime servers continue to use the existingdruid.broker.select.tierconfiguration that applies to both historical and realtime servers.This PR has: