During dynamic rebalancing, entries get moved as they are modified. You configure dynamic rebalancing in the entry counter placement algorithm or a third-party placement algorithm that supports rebalancing.
This algorithm keeps a count of the number of entries or the size of the backend set. Configure dynamic rebalancing using the following parameters:
- Determines whether entry rebalancing is enabled. When rebalancing is enabled, the
placement algorithm is consulted after
addoperations to determine whether the target entry should be moved to a different backend set.
- Indicates which modified entries are candidates for rebalancing. A value of
top-levelindicates that only entries immediately below the entry-balancing base can be rebalanced. A value of any indicates that entries at any level below the entry-balancing base might be rebalanced.
- Specifies the minimum threshold for entries to be migrated from one backend set to a preferred backend set with a smaller size. Entries are not migrated unless the percentage difference between the value of the current backend set and the value of the preferred backend set exceeds this threshold. This parameter prevents unnecessarily migrating entries back and forth between backend sets of similar sizes.
- Specifies the maximum size of a subtree that can be rebalanced.
- Specifies how long to wait between polling the size of the backends to determine how
to rebalance and works in conjunction with the
- Determines which approach to use to select a destination backend for rebalancing.
Possible values are:
The following figure illustrates an entry-balancing base DN and three subtrees, A, B, and
C. If the rebalancing scope is set to
any, any child entries under the
base DN can be rebalanced. For example, if a change is made to entry A1, the entire subtree
A might be rebalanced, depending upon how you have configured rebalancing. If the
rebalancing scope is set to
top-level, rebalancing is only triggered when
entries at the top level, such as A, are modified. Changes made to subentries, such as A1
or A2, do not trigger rebalancing. Rebalancing is also triggered upon the addition of
entries such as
A1,A2, provided the scope is
If you are writing your own third-party algorithm, you program dynamic rebalancing using the SelectRebalancingBackendSet method on the placement algorithm. For more information, see the Server SDK documentation.