Konfigurieren der Indizes
Wenn große Repositorys neu indiziert werden müssen, insbesondere wenn MongoDB verwendet wird und eine Volltextindizierung erforderlich ist, empfiehlt es sich gegebenenfalls, eine Textvorextraktion durchzuführen, den Ausgangsindex mit „oak-run“ zu erstellen und anschließend eine Neuindizierung durchzuführen.
Indizes werden im Repository unter dem Knoten Oak:index als Knoten konfiguriert.
Der Typ des Indexknotens muss wie folgt lauten: oak:QueryIndexDefinition. Für jeden Indexer sind mehrere Konfigurationsoptionen als Knoteneigenschaften verfügbar. Weitere Informationen finden Sie unten in den Konfigurationsdetails für jeden Indexertyp.
Der Eigenschaftenindex
Der Eigenschaftenindex ist für Abfragen nützlich, die Eigenschaftseinschränkungen aufweisen, aber keine Volltextelemente sind. Der Index kann wie folgt konfiguriert werden:
-
Öffnen Sie CRXDE, indem Sie zu
http://localhost:4502/crx/de/index.jsp
gehen. -
Erstellen Sie einen Knoten unter oak:index
-
Nennen Sie den Knoten PropertyIndex und legen Sie den Knotentyp auf oak:QueryIndexDefinition fest
-
Legen Sie die folgenden Eigenschaften für den neuen Knoten fest:
- type:
property
(vom Typ Zeichenfolge) - propertyNames:
jcr:uuid
(vom Typ „Name“)
Bei diesem Beispiel wird die Eigenschaft
jcr:uuid
indiziert, die dazu dient, den UUID (Universally Unique Identifier) des verknüpften Knotens anzuzeigen. - type:
-
Speichern Sie die Änderungen.
Der Eigenschaftenindex verfügt über die folgenden Konfigurationsoptionen:
-
Die Eigenschaft type gibt den Indextyp an und muss in diesem Fall property lauten.
-
Die Eigenschaft propertyNames gibt die Liste der Eigenschaften an, die im Index gespeichert werden. Wenn sie fehlt, wird der Knotenname als Referenzwert für den Eigenschaftsnamen verwendet. In diesem Beispiel wird die Eigenschaft jcr:uuid, deren Aufgabe darin besteht, die eindeutige Kennung (UUID) ihres Knotens anzuzeigen, zum Index hinzugefügt.
-
Falls für die Kennzeichnung unique der Wert true festgelegt ist, wird dadurch eine Eindeutigkeitsbeschränkung auf den Eigenschaften-Index angewendet.
-
Mit der Eigenschaft declaringNodeTypes können Sie einen bestimmten Knotentyp angeben, für den der Index ausschließlich gilt.
-
Falls für das Flag reindex der Wert auf true festgelegt ist, wird eine vollständige Neuindizierung des Inhalts ausgelöst.
Der Index „Geordnet“
Der Index „Geordnet“ ist eine Erweiterung des Eigenschaftenindex. Er wird jedoch nicht mehr unterstützt. Indizes dieses Typs müssen durch den Lucene-Eigenschaften-Index ersetzt werden.
Der Lucene-Volltext-Index
AEM 6 beinhaltet einen auf Apache Lucene basierten Indexer.
Wenn ein Volltextindex konfiguriert ist, verwenden alle Abfragen mit einer Volltextbedingung den Volltextindex, unabhängig davon, ob andere Bedingungen indiziert sind oder ob eine Pfadbeschränkung vorliegt.
Wenn kein Volltextindex konfiguriert ist, funktionieren Abfragen mit Volltextbedingungen nicht erwartungsgemäß.
Da der Index über einen asynchronen Hintergrund-Thread aktualisiert wird, sind bestimmte Volltextsuchen für einen kurzen Zeitraum nicht verfügbar, bis die Prozesse im Hintergrund beendet sind.
Sie können einen Lucene-Volltextindex wie folgt konfigurieren:
-
Öffnen Sie CRXDE und erstellen Sie einen Knoten unter oak:index.
-
Nennen Sie den Knoten LuceneIndex und legen Sie den Knotentyp auf oak:QueryIndexDefinition fest
-
Fügen Sie dem Knoten folgende Eigenschaften hinzu:
- type:
lucene
(vom Typ Zeichenfolge) - async:
async
(vom Typ Zeichenfolge)
- type:
-
Speichern Sie die Änderungen.
Der Lucene-Index verfügt über die folgenden Konfigurationsoptionen:
- Die Eigenschaft type, die den Indextyp angibt, muss auf lucene festgelegt sein
- Die Eigenschaft async, die auf async festgelegt sein muss. Dadurch wird der Indexaktualisierungsprozess an einen Hintergrund-Thread gesendet.
- Die Eigenschaft includePropertyTypes, die definiert, welche Untergruppe von Eigenschaftstypen im Index enthalten sind.
- Die Eigenschaft excludePropertyNames, die eine Liste mit Eigenschaftennamen definiert, nämlich Eigenschaften, die vom Index ausgeschlossen sein sollen.
- Das Flag reindex, das bei Festlegung auf true eine vollständige Neuindizierung des Inhalts auslöst.