Freigeben über


Funktionsweise der Tupelindizierung

Tupelindizes werden verwendet, um Suchvorgänge zu optimieren, die über 0 oder mehr Medial-Suchzeichenfolgen und 0 oder 1 Zeichenfolgen für die endgültige Suche verfügen. Sie können auch verwendet werden, um Suchvorgänge für eine anfängliche Suchzeichenfolge zu optimieren, wenn kein gewöhnlicher Index für dieses Attribut verfügbar ist.

Sie können die Tupelindizierung für ein Attribut aktivieren, indem Sie Bit 5 im searchFlags-Attribut festlegen, das dem Wert 32 entspricht. Dieses Attribut wird im Schemaobjekt festgelegt, das das Attribut darstellt, das den Tupelindex benötigt. Die Leistungsauswirkung der Aktivierung der Tupelindizierung besteht darin, dass jeder Zeichenfolgenwert, der für dieses Attribut festgelegt ist, in eine große Anzahl von Fragmenten im Tupelindex erweitert wird. Wenn ein Attribut erweitert wird, beansprucht es einen größeren Speicherplatz in der Verzeichnisinformationsstrukturdatei und wird auch langsamer aktualisiert.

Tupelindizes sind so konzipiert, dass die Suche des Formulars *string*beschleunigt wird. Die Beschleunigung kann erheblich sein, da diese Form der Suche nicht auf andere Weise optimiert werden kann, und in ihrer unoptimierten Form zwingt sie den Active Directory-Server, jedes Objekt im Bereich der Suche zu durchlaufen, um die Abfrage auszuführen. Daher würde eine Basissuche nur ein Objekt durchsuchen, das weniger Ressourcen benötigt, eine sofortige untergeordnete Suche würde nur die untergeordneten Elemente eines Objekts durchsuchen (die je nach Containergröße weniger Ressourcen oder mehr Ressourcen verwenden könnte), und eine Unterstruktursuche führt die gesamte Unterstruktur unter das Basisobjekt, was normalerweise viele Ressourcen erfordert und aufgrund der Unterstrukturgröße sehr langsam ist.

Tupelindizes funktionieren, indem eine Zeichenfolge in Tupel unterteilt wird. Beispielsweise würde die Zeichenfolge "Active Directory" in die folgenden Tupel unterteilt:

  • "Active Dir"
  • "ctive Dire"
  • "tive Direc"
  • "ive Direct"
  • "ve Directo"
  • "e Director"
  • " Directory"
  • "Directory"
  • "irectory"
  • "rectory"
  • "ectory"
  • "ctory"
  • "tory"
  • "ory"

Hinweis

Das Verzeichnis wird bei 32767 Zeichen beendet, wenn eine Zeichenfolge für die Tupelindizierung erweitert wird.

 

Ein Tupelindex würde einen Eintrag für jedes dieser Tupel enthalten. Wenn ein Benutzer also nach sucht *cto*, sucht der Active Directory-Server alle Übereinstimmungen für "cto" im Index und sucht in diesem Fall einen Zeiger zurück auf den Datensatz, der über ein (Tupelindiziertes) Attribut mit dem Wert "Directory" verfügte.

Wenn die mediale Suchzeichenfolge (*cto* im vorherigen Beispiel) spezifisch genug ist, ist die Suche sehr effizient, da die Anzahl der Objekte, die der Active Directory-Server zum Ausführen der Abfrage überprüfen muss, erheblich reduziert wird.