Index

Einführung in den Index in ConSol CM

ConSol CM speichert die meisten Daten in einer relationalen Datenbank. Zur Verbesserung der Performance von Suchvorgängen werden Apache Lucene-Indexe verwendet. Es wird für jedes Datenfeld, nach dem gesucht werden soll, ein Index erstellt. Die Indexe werden im Dateisystem, in einem Unterverzeichnis des Datenverzeichnissen gespeichert.

Konzepte, Begriffe und Definitionen

Konzept

Andere Begriffe

Definition

Indexer

 

ConSol CM-Komponente zur Indexverwaltung

Schnellsuche

 

Einfache Freitextsuche über ein Suchfeld oben rechts im Web Client

Detailsuche

 

Erweiterte Suche auf eigener Seite, in der mehrere Suchkriterien kombiniert werden können

Autocomplete-Suche

 

Kontextabhängige Freitextsuche, die in bestimmte Seiten integriert ist

Zweck und Verwendung

Der Index ist notwendig, um in ConSol CM nach Objekten suchen zu können. Die Indizierung umfasst die grundlegenden Benutzer- und Vorgangsdaten, den gesamten Vorgangstext, die Attachments (einstellbar in der System-Property cmas-core-index-common, index.attachment) und die Datenfelder mit der Einstellung Für Suche indiziert. Die für den Index konfigurierten Datenfelder stehen als Suchkriterien in der Detailsuche zur Verfügung und können auf Kontakt- und Ressourcenseiten eine Autocomplete-Suche auslösen. In der Schnellsuche werden die Objekte angezeigt, die den Suchbegriff in einem indizierten Feld enthalten.

Zusätzlich müssen Felder für folgende Anwendungsfälle indiziert werden:

Verfügbare Einstellungen für den Index

Die Konfiguration des Index erfolgt an verschiedenen Stellen. Die in diesem Abschnitt beschriebenen Elemente müssen konfiguriert werden, damit der Index richtig funktioniert. Zusätzlich können Sie in den System-Properties diverse Feinjustierungen vornehmen, siehe Feinjustieren des Indexers.

Datenverzeichnis

Die Indexe werden im Dateisystem, in einem Unterverzeichnis des Datenverzeichnisses, das bei der Systemeinrichtung angegeben wird, gespeichert. Der Pfad des Datenverzeichnisses wird in der System-Property cmas-core-shared, data.directory gespeichert.

Folgende Anforderungen müssen erfüllt sein, damit der Index richtig funktioniert:

Feldeinstellungen

Die Datenfelder, die als Suchkriterien verfügbar sein sollen, müssen festgelegt werden, indem die Einstellung Für Suche indiziert für das entsprechende Feld gesetzt wird. Dies erfolgt in der Datenfeldverwaltung, siehe Datenfelder.

Es gibt vier mögliche Werte:

Das Einschließen von Vorgängen und Personen für Kontaktfelder kann negative Auswirkungen auf die Indexer-Performance haben, wenn die Firma oder Person viele Vorgänge bzw. die Firma viele Personen hat. Das liegt daran, dass alle Vorgänge oder Personen neu indiziert werden müssen, wenn Änderungen am Feld vorgenommen werden.

Verschachtelte Felder, wie in Listen oder Tabellen, müssen alle den gleichen Indizierungstyp haben. Andernfalls können sie nicht durchsucht werden. Wenn Sie beispielsweise mit einer Tabelle arbeiten, müssen die Datenfelder des Typs Liste, Spalten, und alle Datenfelder innerhalb der Tabelle, die durchsucht werden sollen, den Wert True für die Einstellung Für Suche indiziert haben.

Für String-Felder kann eine phonetische Suche aktiviert werden. Bei der phonetischen Suche enthalten die Ergebnisse nicht nur exakte Treffer, sondern auch Treffer, die ähnlich klingen aber anders geschrieben werden als der Suchbegriff, beispielsweise „Mayer“ statt „Meier“. Um die phonetische Suche für ein Datenfeld zu aktivieren, setzen Sie Phonetische Suche für das Feld auf den Wert true.

Aktualisierungsmodi

Es gibt zwei Arten von Änderungen, die Indexaktualisierungen erforderlich machen:

Operative Änderungen werden immer direkt verarbeitet. Für die Verarbeitung von administrativen Änderungen gibt es zwei Modi:

Die direkte Verarbeitung von administrativen Änderungen kann sich negativ auf die Indexer-Performance auswirken, wenn Änderungen eine Neuindizierung von vielen Objekten erforderlich machen, z. B. es wird ein Datenfeld, das in allen Vorgängen verwendet wird, zum Index hinzugefügt.

Siehe Technischer Hintergrund des Index für weitere Details.

Grundlegende Aufgaben

Es gibt zwei Arten von Aufgaben im Zusammenhang mit dem Index:

Aufgaben im Zusammenhang mit der Konfiguration

Sie können folgende Aufgaben im Zusammenhang mit der Konfiguration des Index durchführen:

Aufgaben im Zusammenhang mit dem Betrieb

Sie können folgende Aufgaben im Zusammenhang mit dem Betrieb des Index durchführen:

Erweiterte Aufgaben

Feinjustieren des Indexers

Das Verhalten des Indexers kann über System-Properties, siehe System-Properties feinjustiert werden. Die relevanten Properties befinden sich im Modul cmas-core-index-common. Mit diesen Properties können Sie Parameter anpassen, um die Indexer-Performance zu verbessern, z. B. die Anzahl der Threads, oder ob Attachments indiziert werden oder nicht.

Feinjustieren der Suche

Es gibt mehrere Möglichkeiten, um die Suchfunktionen anzupassen.

Technischer Hintergrund des Index

Welche Änderungen machen Indexaktualisierungen erforderlich?

Es gibt zwei Arten von Änderungen, die für den Index relevant sind:

Wie wirken sich Änderungen auf die Performance aus?

Wie sich Indexänderungen auf die Performance auswirken, hängt von der Anzahl der Objekte ab, die neu indiziert werden müssen.

Änderung

Erfordert Neuindizierung von

Auswirkung auf die Performance

Systemsprache hinzufügen oder löschen

Alle Vorgänge, Kontakte und Ressourcen

Kritisch

Internen oder lokalisierten Namen einer Queue ändern

Alle Vorgänge, die sich in dieser Queue befinden

Hoch

Wert der Einstellung Für Suche indiziert für ein Datenfeld hinzufügen, entfernen oder ändern

Alle Vorgänge, Kontakte oder Ressourcen, bei denen dieses Feld gesetzt ist

Hoch

Internen Namen, lokalisierten Namen oder Reihenfolge eines Listenwertes ändern

Alle Vorgänge, Kontakte oder Ressourcen, bei denen der geänderte Listenwert gesetzt ist

Hoch

Einstellung Darstellung von Rich-Text im Ansichtsmodus einem indizierten Datenfeld des Typs Text (lang) hinzufügen oder von ihm entfernen

Alle Vorgänge, Kontakte oder Ressourcen, bei denen dieses Feld gesetzt ist

Mittel

Internen Namen, lokalisierten Namen oder Reihenfolge eines Bereichs ändern

Alle Vorgänge, die sich aktuell in dem geänderten Bereich befinden

Mittel

Einstellung Telefonnummer eines Kontaktfeldes hinzufügen oder entfernen

Alle Kontakte, die dieses Datenfeld haben

Mittel

Telefonnummernkonfiguration einer Kundengruppe ändern

Alle Kontakte der Kundengruppe, die ein Telefonnummernfeld haben

Mittel

Internen oder lokalisierten Namen einer Benutzerfunktion ändern

Alle Vorgänge, die wenigstens einen Beteiligten mit dieser Funktion haben

Niedrig

Login, Vornamen oder Nachnamen eines Benutzers ändern

Alle Vorgänge, denen der Benutzer zugewiesen ist (als primärer oder referenzierter Benutzer)

Niedrig

Internen oder lokalisierten Namen eines Ressourcentyps oder einer Ressourcenkategorie ändern

Alle Ressourcen dieses Ressourcentyps / alle Ressourcen, die zu dieser Ressourcenkategorie gehören

Niedrig

Wie werden Indexaktualisierungen verarbeitet?

Zwei Services, siehe Services, sind an Indexaktualisierungen beteiligt:

Stoppen Sie den Service Index changes notifier nicht. Wenn der Service angehalten ist und eine Änderung erfolgt, die eine Indexaktualisierung erforderlich macht, wird der Indexstatus auf ROT gesetzt und es ist eine Neuerstellung erforderlich. Sie können Index changes receiver anhalten. Nach dem Neustart ruft der Service die fehlenden Änderungen aus der entsprechenden Tabelle ab.