Zum Hauptinhalt springen

Komponenten

Die Abbildung zeigt den grundsätzlichen technischen Aufbau der Komponente.

Komponentendiagramm zum technischen Aufbau des Suchdienstes zeigt die Aufteilung in die drei Kernkomponenten Frontend (CSD), Anwendung (CSD) und Suche (Elasticsearch).

Grundsätzlicher technischer Aufbau

Technisch gesehen ist der Suchdienst in drei Sub-Komponenten implementiert. Er besteht aus einem Frontend (Web-Client), einer Anwendung und einer Suchmaschine.

Suchdienst-Frontend​

Der Web-Client (auch "Suchclient") auf Basis von HTML, CSS und JavaScript ist als Single-Page-Applikation implementiert, die beim ersten Aufruf komplett in den Browser geladen wird und anschließend über eine direkte Verbindung von Browser zur Suchdienst API Suchanfragen an den Portalverbund versendet und Suchergebnisse empfängt.

Suchdienst-Anwendung​

Die Sub-Komponente Suchdienst Anwendung ist eine Java-Anwendung, die ein REST Interface für den Web-Client aber auch für Verwaltungsportale (Zielsystem) bereitstellt. Am Ende kann die Komponente als eine Art Wrapper für die Komponente Suchdienst Suche betrachtet werden, die eine spezifische Portalverbund API anbietet und diese auf die generische Suche-API der Sub-Komponente Suchdienst Suche abbildet.

Zusätzlich kommuniziert die Anwendung mit dem Sammlerdienst und wird von diesem über Änderungen am Leistungsdatenbestand informiert und passt die in der Sub-Komponente Suchdienst-Suche verwalteten Dokumenten entsprechend an.

Suchdienst-Suche​

Die Sub-Komponente Suchdienst-Suche auf Basis von Elasticsearch ist die eigentliche Suchmaschine, die die Suche über Leistungen möglich macht. Allerdings bietet Elasticsearch im Standard nur eine generische API, was die Entwicklung der vorgeschalteten Sub-Komponente Suchdienst-Anwendung notwendig macht.