PingDirectory

Index types

The PingDirectory server supports several types of indexes to quickly find entries that match search criteria in LDAP operations.

Entry IDs

The PingDirectory server uses an attribute’s matching rules to normalize its values and uses those values as index keys to a list of matching entry IDs.

Entry IDs are integer values that are used to uniquely identify an entry in the backend by means of a set of database index files.

Entry IDs can look like the following:

  • id2entry

  • dn2id

  • dn2uri

  • id2children

  • id2subtree

Index types

Matching rules are elements defined in the schema that tell the server how to interact with the particular attribute. For example, the uid attribute has an equality matching rule and thus has an equality index maintained by the PingDirectory server. The following table describes the index types.

  1. PingDirectory server index types

Index Type Description

Approximate

Used to efficiently locate entries that are approximately equal to a given assertion. Approximate indexes can only be applied to attributes that have a corresponding approximate matching rule.

Equality

Used to efficiently locate entries are exactly equal to a given assertion. Equality indexes can only be applied to attributes that have a corresponding equality matching rule.

Filtered

Uses a defined search filter for a specific attribute. This is an offshoot of the equality index, but you can maintain it independently of the equality index for a specific attribute.

Ordering

Used to efficiently identify which entries have a relative order of values for an attribute. Ordering indexes can only be applied to attributes that have a corresponding ordering matching rule.

Presence

Used to efficiently locate entries that have at least one value for a specified attribute. There is only one presence index key per attribute.

Substring

Used to efficiently locate entries that contain specific substrings to a given assertion. Substring indexes can only be applied to attributes that have a corresponding substring matching rule.