-
Notifications
You must be signed in to change notification settings - Fork 166
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[improve][doc] Updated concepts-broker-load-balancing-types #655
[improve][doc] Updated concepts-broker-load-balancing-types #655
Conversation
@heesung-sn Please add the following content to your PR description and select a checkbox:
|
| Dimension | Modular broker load balancer |Extensible broker load balancer | ||
|--------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--- | ||
Available version | Pulsar 1.7.0 <br/> <br/>2017 |Pulsar 3.0.0 <br/> <br/>2023 | ||
Load Balance Metadata Store and Replication | Dependent on ZooKeeper for load balance metadata store and replication.<br/> <br/> - All broker load data and all bundle load data are stored in ZooKeeper and replicated to all brokers via ZooKeeper watchers. <br/><br/>- All bundle ownerships are stored in Zookeeper as ephemeral locks. | Dependent on system topics and table views for load balance metadata store and replication. <br/> <br/> - All broker load data are stored in a non-persistent system topic and replicated to all brokers via table views. <br/> <br/>- Each broker publishes only top k bundles' load data in a non-persistent system topic, and only the leader broker consumes it via a table view. <br/> <br/> - Bundle ownerships are stored in a persistent system topic and replicated to all brokers via table views.<br/> <br/> * The absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Load Balance Metadata Store and Replication | Dependent on ZooKeeper for load balance metadata store and replication.<br/> <br/> - All broker load data and all bundle load data are stored in ZooKeeper and replicated to all brokers via ZooKeeper watchers. <br/><br/>- All bundle ownerships are stored in Zookeeper as ephemeral locks. | Dependent on system topics and table views for load balance metadata store and replication. <br/> <br/> - All broker load data are stored in a non-persistent system topic and replicated to all brokers via table views. <br/> <br/>- Each broker publishes only top k bundles' load data in a non-persistent system topic, and only the leader broker consumes it via a table view. <br/> <br/> - Bundle ownerships are stored in a persistent system topic and replicated to all brokers via table views.<br/> <br/> * The absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics. | |
Load Balance Metadata Store and Replication | Dependent on ZooKeeper for load balance metadata store and replication.<br/> <br/> - All broker load data and all bundle load data are stored in ZooKeeper and replicated to all brokers via ZooKeeper watchers. <br/><br/>- All bundle ownerships are stored in ZooKeeper as ephemeral locks. | Dependent on system topics and table views for load balance metadata store and replication. <br/> <br/> - All broker load data are stored in non-persistent system topics and replicated to all brokers via table views. <br/> <br/>- Each broker publishes only top k bundles' load data in non-persistent system topics, and only the leader broker consumes it via table views. <br/> <br/> - Bundle ownerships are stored in persistent system topics and replicated to all brokers via table views.<br/> <br/> - The absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The broker load data is stored in a single non-persistent topic. (1st topic)
The topk bundle load data is stored in a separate non-persistent topic.(2nd topic)
Bundle ownerships are stored in a separate persistent topic.(3rd topic)
I intentionally used *
to note that the following is an annotation.
the absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Replaced *
with Note
.
|--------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--- | ||
Available version | Pulsar 1.7.0 <br/> <br/>2017 |Pulsar 3.0.0 <br/> <br/>2023 | ||
Load Balance Metadata Store and Replication | Dependent on ZooKeeper for load balance metadata store and replication.<br/> <br/> - All broker load data and all bundle load data are stored in ZooKeeper and replicated to all brokers via ZooKeeper watchers. <br/><br/>- All bundle ownerships are stored in Zookeeper as ephemeral locks. | Dependent on system topics and table views for load balance metadata store and replication. <br/> <br/> - All broker load data are stored in a non-persistent system topic and replicated to all brokers via table views. <br/> <br/>- Each broker publishes only top k bundles' load data in a non-persistent system topic, and only the leader broker consumes it via a table view. <br/> <br/> - Bundle ownerships are stored in a persistent system topic and replicated to all brokers via table views.<br/> <br/> * The absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics. | ||
Load Balance Decision<br/>(Load Balance leader dependency)| Single leader broker decides on bundle-broker assignment, bundle splitting, and bundle unloading. <br/> <br/> * The leader broker requires global load information | Each broker decides and runs bundle-broker assignment(lookup) and bundle splitting based on the local(replicated) information. <br/><br/> The leader broker still decides on bundle unloading globally. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Load Balance Decision<br/>(Load Balance leader dependency)| Single leader broker decides on bundle-broker assignment, bundle splitting, and bundle unloading. <br/> <br/> * The leader broker requires global load information | Each broker decides and runs bundle-broker assignment(lookup) and bundle splitting based on the local(replicated) information. <br/><br/> The leader broker still decides on bundle unloading globally. | |
Load Balance Decision<br/>(Load Balance leader dependency)| Single leader broker decides on bundle-broker assignment, bundle splitting, and bundle unloading. <br/> <br/> - The leader broker requires global load information | Each broker decides and runs bundle-broker assignment (lookup) and bundle splitting based on the local (replicated) information. <br/><br/> The leader broker still decides on bundle unloading globally. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I intentionally used * to note that the following is an annotation.
The leader broker requires global load information
Available version | Pulsar 1.7.0 <br/> <br/>2017 |Pulsar 3.0.0 <br/> <br/>2023 | ||
Load Balance Metadata Store and Replication | Dependent on ZooKeeper for load balance metadata store and replication.<br/> <br/> - All broker load data and all bundle load data are stored in ZooKeeper and replicated to all brokers via ZooKeeper watchers. <br/><br/>- All bundle ownerships are stored in Zookeeper as ephemeral locks. | Dependent on system topics and table views for load balance metadata store and replication. <br/> <br/> - All broker load data are stored in a non-persistent system topic and replicated to all brokers via table views. <br/> <br/>- Each broker publishes only top k bundles' load data in a non-persistent system topic, and only the leader broker consumes it via a table view. <br/> <br/> - Bundle ownerships are stored in a persistent system topic and replicated to all brokers via table views.<br/> <br/> * The absolute size of the replicated load data and the complexity of the replication decreased due to passing the data through memory-only, non-persistent topics. | ||
Load Balance Decision<br/>(Load Balance leader dependency)| Single leader broker decides on bundle-broker assignment, bundle splitting, and bundle unloading. <br/> <br/> * The leader broker requires global load information | Each broker decides and runs bundle-broker assignment(lookup) and bundle splitting based on the local(replicated) information. <br/><br/> The leader broker still decides on bundle unloading globally. | ||
Pub/Sub Reconnection upon Bundle Unloading | When bundles are unloaded, the topics in the bundles will be temporarily closed, and producers and consumers connect to new owner brokers. <br/> <br/> - Connecting to the new owner brokers involves redirecting lookup requests via the leader broker. | Any broker can respond to the lookup requests to locate the new owner brokers without asking the leader broker. The reconnection does not go through the leader broker. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pub/Sub Reconnection upon Bundle Unloading | When bundles are unloaded, the topics in the bundles will be temporarily closed, and producers and consumers connect to new owner brokers. <br/> <br/> - Connecting to the new owner brokers involves redirecting lookup requests via the leader broker. | Any broker can respond to the lookup requests to locate the new owner brokers without asking the leader broker. The reconnection does not go through the leader broker. | |
Pub/sub reconnection upon bundle unloading | When bundles are unloaded, the topics in the bundles are temporarily closed, and producers and consumers connect to new owner brokers. <br/> <br/> - Connecting to the new owner brokers involves redirecting lookup requests via the leader broker. | Any broker can respond to the lookup requests to locate the new owner brokers without asking the leader broker. The reconnection does not go through the leader broker. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
updated.
f2a054e
to
341254f
Compare
Updated concepts-broker-load-balancing-types.
We will have a separate blog for the performance test part. I think we need to keep the tone of this comparison natural on the website.
doc
doc-required
doc-not-needed
doc-complete