Platform SDK: Active Directory, ADSI, and Directory Services

Attributes Included in the Global Catalog

The global catalog of an Active Directory forest includes a partial replica of every object in the forest. For each object, the global catalog includes only a subset of the object's attributes. The isMemberOfPartialAttributeSet attribute of an attributeSchema object is set to TRUE if the attribute is replicated to the global catalog.

Attributes with the following characteristics are appropriate for storage in the global catalog:

When deciding whether or not to place an attribute in the global catalog keep in mind that you are trading increased replication and increased disk storage on global catalog servers for (potentially) faster query performance. Typically, you would use the global catalog to search for an object of interest so you can read selected attributes of the object. If the attributes you are interested in are replicated to the GC, you can read them directly from the GC. On the other hand, if you want to read attributes that are not replicated to the GC, you'll need to perform additional steps to retrieve them. In this case, after searching the GC to find the object of interest, you need to read the object's distinguished name from the GC, use the DN to bind directly to a full replica of the object (which may be on a different server), and finally read the non-GC attributes from the full replica of the object.

Attributes that are frequently queried and referenced by users across the enterprise, such as employee names and phone numbers, are good candidates for inclusion in the global catalog. An infrequently referenced attribute such as "driverVersion" for printers is best left out of the GC.