Index Manager is an attribute of the Server object that lets you manage database indexes. These indexes are used by eDirectory to significantly improve query performance.
NetIQ eDirectory ships with a set of indexes that provide basic query functionality. These default indexes are for the following attributes:
CN |
Aliased Object Name |
dc |
Obituary |
Given Name |
Member |
Surname |
Reference |
uniqueID |
Equivalent to Me |
GUID |
NLS: Common Certificate |
cn_SS |
Revision |
uniqueID_SS |
extensionInfo |
ldapAttributeList |
ldapClassList |
You can also create customized indexes to further improve eDirectory performance in your environment. For example, if your organization has implemented a new LDAP application that looks up an attribute not indexed by default, it might be useful to create an index for that attribute.
NOTE:Although indexes improve search performance, additional indexes also add to directory update time. As a general rule, create new indexes only if you suspect performance issues are related to a particular directory lookup.
Using NetIQ iManager, you can create or delete indexes. You can also view and manage the properties of an index, including the index name, state, type, rule, and attribute indexed.
eDirectory also provides an option to create or delete compound indexes. You can use this option to create value indexes on multiple attributes. This helps in improving the search performance with multiple attributes. For more details on how to create or delete compound indexes, see, Using the NetIQ Import Conversion Export Utility to Manage Compound Indexes.
In NetIQ iManager, click the Roles and Tasks button .
Click eDirectory Maintenance > Index Management.
Select a server from the list of available servers.
On the Modify Indexes page, click Create.
Enter the Index Name.
If you do not enter an index name, the attribute is automatically assigned as the index name.
IMPORTANT:The $ character is used as a delimiter for attribute values. If you use the $ character in your index name, you must use a preceding backslash (/) character to escape the $ character when working with indexes via LDAP.
Select an attribute.
Select the index rule.
Value matches the entire value or the first part of the value of an attribute. For example, value matching could be used to find entries with a LastName that is equal to “Jensen” and entries with a LastName that begins with “Jen.”
Presence requires only the presence of an attribute rather than specific attribute values. A query to find all entries with a Login Script attribute would use a presence index.
Substring matches a subset of the attribute value string. For example, a query to find a LastName with “der” would return matches for Derington, Anderson, and Lauder.
A substring index is the most resource-intensive index to create and maintain.
Click OK to update the index table.
Click Apply to restart Limber as a background process and initiate the change.
Indexes might outlive their usefulness. You can delete user-defined and auto-created indexes that are no longer a benefit.
In NetIQ iManager, click the Roles and Tasks button .
Click eDirectory Maintenance > Index Management.
Select a server from the list of available servers.
On the Modify Indexes page, select the user- or auto-added index you want to delete.
Click Delete to update the index table.
Click Apply to restart Limber as a background process and initiate the change.
During peak times you might want to tune performance by temporarily taking indexes offline. For example, to achieve additional bulk-load speed, you might want to suspend all of the user-defined indexes. Because each object addition or modification requires updating defined indexes, having all indexes active might slow down bulk-loading of data. After the bulk-load is completed, the indexes can be brought online again.
In NetIQ iManager, click the Roles and Tasks button .
Click eDirectory Maintenance > Index Management.
Select a server from the list of available servers.
On the Modify Indexes page, select the indexes you want to take offline, then click Change State.
The index state changes from Online to Offline in the display table. An index can be in any of the following states:
Online : Currently running.
Offline : Suspended. The index can be started again by clicking Bring Online.
New : Waiting to move to Online.
Deleted : Waiting to be removed from the index table.
Click Apply.
If you've found a particular index to be useful on one server and you see the need for this index on another server, you can copy the index definition from one server to another. In reviewing predicate data, you might also find just the opposite case: an index that was meeting a need for several servers is no longer useful on one of these servers. In that case, you could delete the index from the single server that isn't benefitting from the index.
Index Manager allows you to target a single instance of an index without impacting all instances.
In NetIQ iManager, click the Roles and Tasks button .
Click eDirectory Maintenance > Index Management.
Select a server from the list of available servers.
To copy an index definition to another server on the same tree, click Modify Index Location.
Select the index definition you want to copy.
When you select an index, servers in the tree providing that index are listed.
Use the columns provided to move a copy of the index to the desired server.
Click Apply.
You can use the NetIQ Import Conversion Export utility to create or delete indexes.
You must use an LDIF file to create or delete indexes. After the LDIF file is imported, you can trigger Limber to initiate the indexing activity. Otherwise, indexing takes place when Limber triggers automatically.
To specify an index in an LDIF file, you must supply values, because the following cases ignore strings that are separated by a dollar ($) sign.
Order |
String |
Description |
---|---|---|
1 |
Index version |
Reserved for future use. In eDirectory, this should always be set to zero (0). |
2 |
Index name |
Specifies the user-defined name for the index, such as .Family Name. or .Zip Code. The string should not contain the dollar ($) sign. |
3 |
Index state |
Specifies the state of the index. When defining an index, this field should be set to 2 (online). eDirectory supports the following values:
The background process changes the state after the building begins. |
4 |
Index rule |
Specifies the type of matching:
|
5 |
Index type |
Specifies who created the index. When defining an index, you must set this value to 0. eDirectory supports the following values:
|
6 |
Index value state |
Specifies the source of the index. When defining an index, set this string to 1. eDirectory supports the following values:
|
7 |
Attribute name |
Specifies the NDS name for the attribute. Many attributes in eDirectory have both an LDAP name and an NDS name. This string requires the NDS name. |
dn: cn=testServer-NDS,o=Novell
changetype: modify
add: indexDefinition
indexDefinition: 0$indexName$2$2$0$1$attributeName
dn: cn=osg-nw5-7, o=Novell
changetype: modify
delete: indexDefinition
indexDefinition: 0$indexName$2$2$0$1$attributeName
You can use the NetIQ Import Conversion Export utility to create or delete compound indexes.
You must use an LDIF file to create or delete indexes. After the LDIF file is imported, initiate the indexing activity by triggering Limber. Otherwise, indexing takes place when Limber triggers automatically.
To manage the list of compound indexes for a server, use the indexDefinition attribute on the NCP server object in LDAP format. For example:
0$citysurnameindex$0$0$0$1$city$surname
This represents a user defined online value index on city attribute named citysurnameindex.
You can specify multiple attributes separated by $ sign for compound indexes.
In the following example, LDIF creates a compound index name gnsncnindex on givenName, surname and cn attributes. Pass the index state, rule, type and value state as 0, 0, 0 and 1 respectively:
dn: cn=osg-nw5-7, o=Novell
changetype: modify
add: indexDefinition
indexDefinition: 0$gnsncnindex$0$0$0$1$given name$surname$cn
dn: cn=osg-nw5-7, o=Novell
changetype: modify
delete: indexDefinition
indexDefinition: 0$gnsncnindex$0$0$0$1$given name$surname$cn
NOTE:When indexDefinition attribute is changed, you must trigger Limber for the changes to take effect. Default interval of Limber is 5 minutes.