Sizing the global indexes
Use the PingDirectoryProxy server global-index-size
tool to help you estimate the memory size of your global indexes.
About this task
You can estimate the size of more than one index in a single invocation by providing multiple sets of options.
The global-index-size
tool creates its estimate using the following information:
- Number of keys in the index
-
For example, for the built-in relative distinguished name (RDN) index, the number of keys is the total number of entries in the PingDirectory server that are immediately below the balancing point. Entries more than one level below the balancing point and entries that are not subordinate to the balancing point aren’t contained in the RDN index. For attribute indexes, the number of keys is the number of unique values for that attribute in the entry-balanced portion of the data.
- Average size of each key, in bytes
-
For attributes indexes, the key is the attribute value. For the built-in RDN index, the key is the RDN directly below the balancing base distinguished name (DN). For example, for the DN
uid=user.0,dc=example,dc=com
under the balancing base DN ofdc=example,dc=com
, the key size is 10 bytes (the number of bytes in the RDNuid=user.0
). - Estimated number of keys
-
This value corresponds to the maximum number of keys you expect in your PingDirectory server. The number of keys is provided in the index-size configuration property of the
global-attribute-index
object when you configure an attribute index. For the built-in RDN index, the configured number of keys is provided in therdn-index-size
property. If you do not provide a value, the tool assumes that the configured number of keys is the same as the actual number of keys.
Steps
-
To estimate the size of two separate indexes, run the
global-index-size
tool.Example:
In this example, the two indexes both have 10,000,000 keys but with differing average key sizes. The configured number of keys is assumed to be equal to the actual number of keys.
$ bin/global-index-size --numKeys 10000000 \ --averageKeySize 11 --numKeys 10000000 \ --averageKeySize 15 Num Keys : Cfg. Num Keys : Avg. Key Size : Est. Memory Size ---------:---------------:---------------:----------------- 10000000 : 10000000 : 11 : 159 mb 10000000 : 10000000 : 15 : 197 mb