Identity Data Store Documentation Index
Configuration Reference Home

Local DB Index

Local DB Indexes are used to store information that makes it possible to locate entries very quickly when processing search operations.

Indexing is performed on a per-attribute level and different types of indexing may be performed for different kinds of attributes, based on how they are expected to be accessed during search operations.

Relations From this Component
Properties
dsconfig Usage

Relations to This Component

The following components have a direct composition relation to Local DB Indexes:

Properties

The properties supported by this managed object are as follows:


Basic Properties: Advanced Properties:
↓ attribute ↓ exploded-index-entry-threshold
↓ index-entry-limit ↓ substring-length
↓ substring-index-entry-limit ↓ prime-index
↓ index-type ↓ prime-internal-nodes-only
↓ equality-index-filter
↓ maintain-equality-index-without-filter
↓ cache-mode

Basic Properties

attribute (Read-Only)

Description
Specifies the name of the attribute for which the index is to be maintained.
Default Value
None
Allowed Values
The name or OID of an attribute type defined in the server schema.
Multi-Valued
No
Required
Yes
Admin Action Required
None. Modification requires no further action

index-entry-limit

Description
Specifies the maximum number of entries that are allowed to match a given index key before that particular index key is no longer maintained. A value of 0 means there is no limit. This is analogous to the ALL IDs threshold in the Sun Java System Directory Server. If this is specified, its value overrides the JE backend-wide configuration. A value of 0 means there is no limit. This property is related to the exploded-index-entry-threshold.
Default Value
4000
Allowed Values
An integer value. Lower limit is 0. Upper limit is 2147483647 .
Multi-Valued
No
Required
No
Admin Action Required
If any index keys have already reached this limit, indexes must be rebuilt before they will be allowed to use the new limit. Setting a large limit (greater than 10,000) could have a big impact on write performance and database growth on disk.

substring-index-entry-limit

Description
Specifies, for substring indexes, the maximum number of entries that are allowed to match a given index key before that particular index key is no longer maintained. A value of 0 means there is no limit. Setting a large limit, or having no limit, is not at all recommended because it can dramatically increase the database size on disk and have a big impact on server performance.
Default Value
The value of the index-entry-limit configuration option will be used.
Allowed Values
An integer value. Lower limit is 0. Upper limit is 2147483647 .
Multi-Valued
No
Required
No
Admin Action Required
If this limit is increased, and any substring index keys have already reached the previous limit, then the substring index must be rebuilt to use the new limit.

index-type

Description
Specifies the type(s) of indexing that should be performed for the associated attribute. For equality, presence, and substring index types, the associated attribute type must have a corresponding matching rule.
Default Value
None
Allowed Values
equality - This index type is used to improve the efficiency of searches using equality search filters.

ordering - This index type is used to improve the efficiency of searches using "greater than or equal to" or "less then or equal to" search filters.

presence - This index type is used to improve the efficiency of searches using the presence search filters.

substring - This index type is used to improve the efficiency of searches using substring search filters.

approximate - This index type is used to improve the efficiency of searches using approximate matching search filters.
Multi-Valued
Yes
Required
Yes
Admin Action Required
If any new index types are added for an attribute, and values for that attribute already exist in the database, the index must be rebuilt before it will be accurate.


Advanced Properties

exploded-index-entry-threshold (Advanced Property)

Description
Specifies the maximum number of entries that are allowed to match a given index key before that particular index key is stored in a separate database in an expanded format. A value of 0, or any value greater or equal to the index-entry-limit, means that the expanded index database will not be used. All keys whose entry count is less than exploded-index-entry-threshold are stored in one database in a consolidated format such that changes to the key require rewriting all the entry IDs matching the key. All keys whose entry count is greater than exploded-index-entry-threshold (but less than the index-entry-limit) are stored in a separate database in an expanded format such that changes to the key require writing only the updated entry ID. The consolidated format is very efficient for reads but the expanded format is far more efficient for writes. A large value for the exploded-index-entry-threshold can have a big impact on write performance and database growth on disk, since for each change to an index key stored in the consolidated format, IDs for all entries matching the key must be rewritten to the database. For example if the exploded-index-entry-threshold is set to 100,000, and the number of entries matching a given key is 50,000, then changes to that key will require writing 200KB to the database since each entry ID is 4 bytes. Add and delete operations are especially impacted since they must update all indexes for an entry. If many indexes have a large exploded-index-entry-threshold, this can lead to very low throughput and can cause the database to temporarily grow very large on disk. It's recommended to rarely set this value above 10,000 and never set it above 50,000.
Default Value
4000
Allowed Values
An integer value. Lower limit is 0. Upper limit is 2147483647 .
Multi-Valued
No
Required
No
Admin Action Required
If any index keys have already reached this threshold, indexes need to be rebuilt before they are allowed to use the new threshold. Setting a large limit (greater than 10,000) could have a big impact on write performance and database growth on disk.

substring-length (Advanced Property)

Description
The length of substrings in a substring index.
Default Value
6
Allowed Values
An integer value. Lower limit is 3.
Multi-Valued
No
Required
No
Admin Action Required
The index must be rebuilt before it will reflect the new value.

prime-index (Advanced Property)

Description
If this option is enabled and this index's backend is configured to prime indexes, then this index will be loaded at startup. This also works in conjunction with the Prime Cache plugin to prime the server caches when the server starts. The Prime Cache plugin configuration controls whether or not the server will wait for the priming to complete before accepting connections. When using the preload prime option, the cache-mode property of this index can also affect how this index is preloaded. If the cache-mode is set to evict-leaf-immediately, then no leaf nodes will be preloaded for this index. If then cache-mode is set to evict-bin-immediately, the nothing will be preloaded for this index.
Default Value
false
Allowed Values
true
false
Multi-Valued
No
Required
No
Admin Action Required
None. Changes will automatically take effect the next time that a prime is initiated.

prime-internal-nodes-only (Advanced Property)

Description
If this option is enabled and this index's backend is configured to prime indexes using the preload method, then only the internal nodes for this index will be loaded at startup. If the cache-mode parameter is set to evict-bin-immediately, then none of the internal nodes for this index will be primed.
Default Value
false
Allowed Values
true
false
Multi-Valued
No
Required
No
Admin Action Required
None. Changes will automatically take effect the next time that a prime is initiated.

equality-index-filter (Advanced Property)

Description
A search filter that may be used in conjunction with an equality component for the associated attribute type. If an equality index filter is defined, then an additional equality index will be maintained for the associated attribute, but only for entries which match the provided filter. Further, the index will be used only for searches containing an equality component with the associated attribute type ANDed with this filter.
Default Value
None
Allowed Values
A valid LDAP search filter
Multi-Valued
Yes
Required
No
Admin Action Required
None. Modification requires no further action

maintain-equality-index-without-filter (Advanced Property)

Description
Indicates whether to maintain a separate equality index for the associated attribute without any filter, in addition to maintaining an index for each equality index filter that is defined. If this is false, then the attribute will not be indexed for equality by itself but only in conjunction with the defined equality index filters.
Default Value
true
Allowed Values
true
false
Multi-Valued
No
Required
No
Admin Action Required
None. Modification requires no further action

cache-mode (Advanced Property)

Description
Specifies the cache mode that should be used when accessing the records in the database for this index.
Default Value
The cache mode specified by the default-cache-mode property in the associated backend will be used.
Allowed Values
keep-hot - Records from this database should be kept hot in the cache, so that they are less likely to be evicted under memory pressure than records from databases with other cache modes.

default - Records from this database should be given the default cache priority, which makes them more likely to be evicted under memory pressure than records from databases with a cache mode of "keep-hot", but less likely to be evicted than with a cache mode of "make-cold".

make-cold - Records from this database should be made cold in the cache, so that they are more likely to be evicted under memory pressure than records from databases with a cache mode of "keep-hot" or "default".

evict-leaf-immediately - Leaf nodes from this database should be evicted from the cache as soon as they are no longer needed by the operation referencing them, regardless of whether there is memory pressure. When set to this value, preloading will never preload leaf nodes of the database regardless of other settings.

evict-bin-immediately - Entire BINs should be evicted from the cache as soon as possible when the associated leaf nodes are no longer needed by the operation referencing them, regardless of whether there is memory pressure. When set to this value, no preloading will occur for this index regardless of other settings.
Multi-Valued
No
Required
No
Admin Action Required
The Local DB Index must be disabled and re-enabled for changes to this setting to take effect. This modification requires that you disable and then re-enable this component for the change to take effect


dsconfig Usage

To list the configured Local DB Indexes:

dsconfig list-local-db-indexes
     [--property {propertyName}] ...

To view the configuration for an existing Local DB Index:

dsconfig get-local-db-index-prop
     --index-name {name}
     --backend-name {name}
     [--tab-delimited]
     [--script-friendly]
     [--property {propertyName}] ...

To update the configuration for an existing Local DB Index:

dsconfig set-local-db-index-prop
     --index-name {name}
     --backend-name {name}
     (--set|--add|--remove) {propertyName}:{propertyValue}
     [(--set|--add|--remove) {propertyName}:{propertyValue}] ...

To create a new Local DB Index:

dsconfig create-local-db-index
     --index-name {name}
     --backend-name {name}
     --set index-type:{propertyValue}
     [--set {propertyName}:{propertyValue}] ...

To delete an existing Local DB Index:

dsconfig delete-local-db-index
     --index-name {name}
     --backend-name {name}