PingDirectory

Persisting the global index from a file

About this task

The PingDirectoryProxy server supports periodically persisting the global index to a file and priming the global index from the persisted file when the server is restarted.

You can configure an Entry Balancing Request Processor to periodically persist the global index to disk so that when the Entry Balancing Request Processor is reinitialized on startup it can prime the values from disk instead of putting load on the remote servers. Reading the index from disk eliminates the load on backend PingDirectory server instances if many PingDirectoryProxy server instances are starting at the same time.

You can configure an entry-balancing request processor to persist the global index to disk by including file as one of the prime index sources with the prime-index-source property. The persist-global-index-frequency property controls the frequency at which the file is written.

The global index must be primed before it is persisted. It can be primed initially using a peer PingDirectoryProxy server or from a backend PingDirectory server.

When new global attribute indexes are added on a running PingDirectoryProxy, the global index can be primed with those attribute indexes by running the rebuild-index tool. The rebuild-index tool uses a remote server for priming the global index, even if file is configured as a source.

On subsequent restarts of the PingDirectoryProxy server, the global index is primed from the persisted file instead of going over the network to a remote server, which allows it to be primed much faster than if it is using a remote priming source. During server startup, the global index priming works by using each configured prime-index-source property in the specified order until it is fully primed to take advantage of what is available locally before contacting one or more remote servers.

Steps

  • To prime all indexes at startup from a file, run the dsconfig tool.

    Example:

    dsconfig -n set-request-processor-prop \
      --processor-name entry-balancing \
      --set prime-index-source:file \
      --set prime-index-source:ds \
      --set persist-global-index-frequency:10s \
      --set persist-global-index-directory:/servers/proxy-1/index-files \
      --set prime-all-indexes:true