Most LDAP servers use indexes to improve the search performance. To use indexes, consult your directory server documentation.
In addition to the basic indexed attributes, the following list of attributes must be indexed to ensure that Solaris clients will be able to retrieve naming information in a reasonable time.
membernisnetgroup pres,eq,sub nisnetgrouptriple pres,eq,sub memberuid pres,eq macAddress pres,eq uid pres,eq uidNumber pres,eq gidNumber pres,eq ipHostNumber pres,eq ipNetworkNumber pres,eq ipProtocolNumber pres,eq oncRpcNumber pres,eq ipServiceProtocol pres,eq ipServicePort pres,eq nisDomain pres,eq nisMapName pres,eq mail pres,eq |
The abbreviations used in attribute list expand to: pres is presence, eq is equality, and sub is substring
Additionally, if Virtual List View control (vlv) is supported by the server, vlv indexes also need to be created. Create these indexes for any container in the tree that contains a large number of objects. (Large is relative to other objects in the tree.) For information on how to create these indexes, consult your directory server documentation. Ensure that the vlv sort value is set to cn uid and the vlv filter and scope are defined per the following list:
getpwent: vlvFilter: (objectclass=posixAccount), vlvScope: 1 getspent: vlvFilter: (objectclass=posixAccount), vlvScope: 1 getgrent: vlvFilter: (objectclass=posixGroup), vlvScope: 1 gethostent: vlvFilter: (objectclass=ipHost), vlvScope: 1 getnetent: vlvFilter: (objectclass=ipNetwork), vlvScope: 1 getprotoent: vlvFilter: (objectclass=ipProtocol), vlvScope: 1 getrpcent: vlvFilter: (objectclass=oncRpc), vlvScope: 1 getaliasent: vlvFilter: (objectclass=rfc822MailGroup), vlvScope: 1 getserviceent: vlvFilter: (objectclass=ipService), vlvScope: 1 |
Although indexes improve search performance, they incur the following costs:
Slower database modification.
The more indexes you maintain, the longer it takes to update the database. This is especially true for substring indexes that cause the directory server to generate multiple index files whenever an attribute value is created or changed. For substring indexes, the number of index entries created is proportional to the length of the string being indexed.
Additional system resources required.
Additional disk space
The more attributes you index, the more files the directory server creates.
Additional memory.
To run more efficiently, the directory server maintatins as many index files as possible in memory; thus, making a greater demand for memory space.
Increased disk activity.
Maintaining indexes that are not frequently accessed creates indexes that might be minimally used and swapped to disk when more frequently accessed index files are paged from disk.