Lucene-Index

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen

Der IES bietet interne Funktionen zur Erstellung und Verwaltung eines Lucene-Index. Apache-Lucene (http://lucene.apache.org) ist eine hochperformante, hochfunktionale, textbasierte Suchmachine. Dabei handelt es sich im wesentlichen um eine Definition, wie Date für Volltext-Suchen organisiert werden.

Ein solcher Index wird innerhalb eines eigenen Ordners im Dateisystem über mehrere Dateien organisiert. Das ermöglicht die transparente Verteilung auf unterschiedliche Systeme über Standard-Mechanismen. Der Zugriff auf den einen solchen Index ist über eine Vielzahl von Programmiersprachen möglich:

Auch der WebCrawler Nutch (http://lucene.apache.org/nutch/) erstellt für die Volltextsuche einer Website einen Lucene-Index. Diese vielfältigen Einsatzmöglichkeiten und die unglaubliche Performanz machen den Einsatz eines solchen Index interessant.

Der IES bietet über einen speziellen IndexerService die Möglichkeit eigene Indices pro Mandant zu definieren. Auf einfache Art werden dann automatisch Inhalte aus Artikeln beim Speichern in den Index übernommen. Der IES unterstützt dabei eine Vielzahl von Contenttypen, sowie die Möglichkeit Default-Werte anzugeben.

Allerdings bildet der Index stets die Eingaben der Redakteure ab und hat keine Beziehung zu möglichen Freigaben. Es wird stets die aktuelle Version eines Artikels für alle konfigurierten Felder verwaltet. Es handelt sich somit um nicht freigegebene Inhalte. Mögliche Publkationen müssen selber verwaltet und ausgewertet werden.

Um einen Index zu definieren wechselt man im IESAdmin in den Bereich Indexer. Dort kann man sowohl den Anker, als auch den Pfad, an dem der Index gespeichert werden soll angeben. Außerdem wählt man in welchen Mandanten dieser Index verwendet werden soll.

Um einen Index zu befüllen, muss lediglich im entsprechenden Template ein Formularfeld mit dem Namen SYS_INFE_indexes angegeben werden. Eine kommaseparierte Liste von Ankern gibt an in welche Indices die Daten des Artikel übernommen werden sollen.

Die Felder, die übertragen werden sollen werden zusammen mit dem Typ im Index definiert. Hierzu bietet der IESAdmin entsprechende Eingaben und Hilfen an.