Szenario Staging System

Ein Staging- ist vom Produktivsystem unabhängig, es werden jedoch zu einem definiertem Zeitpunkt die Dateien von der Stagingumgebung in das Produktvsystem kopiert. Die UI-Anwendung ist in diesem Fall mit der Staginganwendung verbunden, Analytics wird mit den Such- und Trackinglogfiles aus dem Produktivsystem versorgt.

Variante 1: FACT-Finder Deployment Feature

FACT-Finder verfügt über ein eingebautes Deployment Feature, das Anwendungsdaten aus einem in ein anderes System kopieren kann. Hierzu ist es jedoch notwendig, dass beide Anwendungen Zugriff auf die Speicherpfade der jeweiligen Ressourcen haben. Werden beide Systeme beispielsweise auf unterschiedlichen Systemen betrieben, ist dies leider nicht möglich.Zusätzlich ist es vorgesehen, dass beide Instanzen auf unterschiedlichen Applicationservern und Ports betrieben werden.

In der Datei conf/fff.properties des Stagingsystem müssen folgende Einstellungen vorgenommen werden:

KeyBeschreibungStandardwert
useDeploymentGibt an, ob das Deployment Feature aktiv sein soll oder nicht und muss daher auf true gesetzt werden.false
deploymentPortPort unter dem die Staginganwendung erreichbar ist. Dies kann auch eine kommagetrennte Liste sein.8081
developmentServerMainDir staging
productiveServerMainDir leer
deployment.copyIndexes

Gibt an, ob bei einem Deployment die jeweilige Datenbank (Suche oder Suggest) mit übertragen werden soll oder nicht.

false

Im Anschluss lassen sich über die UI-Anwendung, die an das Stagingsystem angeschlossen sein muss, die Datenbanken und Konfigurationsdateien vom Staging- in das Produktivsystem übertragen.

Variante 2: Externe Synchronisation von Dateien

Alternativ zum internen Deployment Feature besteht die Möglichkeit die entsprechenden Dateien auch anderweitig vom Staging- auf das Produktivsystem zu übertragen. Welche Dateien übertragen werden sollen hängt zum einen davon ab, ob alle Konfigurationen auf einmal übernommen werden sollen oder ob ein feingranulares Deployment möglich sein soll. Zusätzlich sollten Sie für sich einen Trigger definieren, wann die Daten synchronisiert werden.

Die Granularität kann neben dem Modul auch Channelseitig sein. In der weiteren Erklärung gehen wir davon aus, dass wir die Synchronisation je Modul und je Channel (Beispiel channel-a) durchführen möchten. Ab der Version 7.3 ist zu beachten, dass zwischen den Channels auch eine Beziehung existiert, so müssen Parent- und dessen Childchannel immer im Verbund behandelt werden, da es sonst zu Fehlern kommen kann.

Suche und Navigation

Folgende Dateien müssen für diese beiden Module übertragen werden:

  • Alle Dateien in indexes/search/, die mit ff.channel-a.db beginnen (zB ff.channel-a.dbff.channel-a.db.multi)
  • conf/search/config.channel-a.xml
  • conf/ranking/config.channel-a.xml

Sollte der Channel channel-a in einer Parent-/Childstruktur sein, so müssen in diesem Schritt alle zugehörigen Channels ebenfalls übertragen werden. Falls Sie auf dem Stagingsystem ein anderes Produktdatenset verwenden, dürfen die Daten unter indexes/search nicht mitkopiert werden, es ist jedoch essentiell, dass die Suchdatenbank auf dem Zielsystem mit der dortigen Suchdatenbank zusammenpasst. Sollten Sie strukturelle Änderungen in der Struktur gemacht haben (zB Felder hinzufügen oder löschen), so müssen Sie auf dem Zielsystem nach dem Kopiervorgang und einem Neuladen der Konfiguration einen Datenimport anstoßen. Bitte beachten Sie auch, dass wenn die Suchdatenbank nicht mitkopiert wird, Einstellungen, die einen Import voraussetzen (zB Thesauruseinträge) noch nicht produktiv sind. Einen Import können Sie über eine API durchführen lassen.

Kampagnen Manager

Die Kampagen sind in der Datei campaigns/campaigns.channel-a.xml enthalten. Bitte beachten Sie, dass neue Kampagnen greifen, wenn die Konfiguration neugeladen wurde und nach dem der Cache geleert wurde.

Suggest

Bei einem Deployment des Suggestmoduls müssen foglende Dateien kopiert werden:

  • indexes/suggest/ff.channel-a.db
  • conf/suggest/config.channel-a.xml

Bitte beachten Sie hier ebenfalls die Informationen, die bei "Suche und Navigation" stehen. Im Unterschied dazu muss gegebenenfalls ein Suggestimport angestoßen werden.

Recommendation Engine

Um die Daten der Recommendation Engine vom Staging- auf das Produktivsystem zu übertragen müssen folgende Dateien kopiert werden:

  • indexes/recEngine/recommendation.channel-a.ser
  • indexes/recEngine/recommendation.channel-a.ser.xml
  • conf/recommendation/config.channel-a.xml

Auch hier müssen in dem Fall, dass sich channel-a in einer Parent-/Childstruktur befindet, alle zugehörigen Channels gemeinsam übertragen werden.