Einmalige Tasks ausführen

Die MBean "SearchService" stellt Befehle bereit, die es ermöglichen, eine Optimierungstask für die Indexierung zu erstellen, die nur für die einmalige Ausführung, 30 Sekunden nach ihrem Aufruf, geplant ist.

Vorbereitende Schritte

Sie müssen den wsadmin-Client verwenden, um SearchService-Verwaltungsbefehle zu verwenden. Informationen zum Starten des wsadmin-Befehlszeilentools finden Sie im Abschnitt wsadmin-Client starten.

Informationen zu diesem Vorgang

Notes:
  1. Wenn der Zeitraum zwischen der Ausgabe dieser Befehle kleiner ist als das Intervall für den Sendeaufruf für den Suchscheduler, werden Tasks möglicherweise nicht in derselben Reihenfolge ausgeführt, in der die Befehle ausgegeben wurden.
  2. Sie sollten nach der Ausgabe der folgenden Befehle mindestens die Dauer des Sendeaufrufintervalls abwarten, bevor Sie einen weiteren dieser Befehle absetzen:
    • indexNow()
    • indexNowWithOptimization()
    • optimizeNow()

Vorgehensweise

Gehen Sie wie folgt vor, um einmalige Suchtasks auszuführen.

  1. Starten Sie den wsadmin-Client aus einem der folgenden Verzeichnisse in dem System, in dem Sie den Deployment Manager installiert haben:

    Linux: app_server_root\profiles\dm_profile_root\bin

    Windows: app_server_root/profiles/dm_profile_root/bin

    Dabei steht app_server_root für das WebSphere Application Server-Installationsverzeichnis und dm_profile_root für das Deployment Manager-Profilverzeichnis; in der Regel handelt es sich dabei um "dmgr01".

    Sie müssen den Client von diesem Verzeichnis aus starten. Andernfalls werden die von Ihnen eingegebenen Befehle nicht ordnungsgemäß ausgeführt.

  2. Geben Sie nach der Initialisierung der wsadmin-Befehlsumgebung den folgenden Befehl ein, um die Suchumgebung zu initialisieren und den Such-Script-Interpreter zu starten:
    execfile("searchAdmin.py")
    Wenn Sie zur Angabe eines Services aufgefordert werden, zu dem eine Verbindung hergestellt werden soll, geben Sie "1" ein, um den ersten Knoten in der Liste auszuwählen. Die meisten Befehle können auf jedem beliebigen Knoten ausgeführt werden. Wenn der Befehl Informationen über einen lokalen Dateipfad in eine Datei schreibt oder aus einer Datei liest, müssen Sie den Knoten auswählen, auf dem die Datei gespeichert ist.
    Bei erfolgreichem Ausführen des Befehls wird die folgende Nachricht angezeigt:
    Search Administration initialized
  3. Verwenden Sie die folgenden Befehle, um einmalige Indexierungstasks auszuführen.
    SearchService.indexNow(String applicationNames)

    Erstellt eine einmalige Task, die für die angegebenen Anwendungen 30 Sekunden nach dem Aufruf Indizes erstellt.

    Dieser Befehl akzeptiert ein einziges Argument:
    • applicationNames. Der Name der IBM Connections-Anwendung(en), die indexiert werden soll(en), wenn die Task ausgelöst wird. Dieses Argument ist ein Zeichenfolgewert. Zur Indexierung mehrerer Anwendungen können Sie eine durch Kommas begrenzte Liste verwenden. Die folgenden Werte sind gültig:
      • activities
      • all_configured
      • blogs
      • calendar
      • communities
      • dogear
      • ecm_files
      • files
      • forums
      • people_finder
      • profiles
      • status_updates
      • wikis.
    Verwenden Sie all_configured , anstatt alle indexierbaren Services aufzulisten, wenn Sie alle Anwendungen indexieren möchten.
    Anmerkung: Nach Abschluss des Indexierungsvorgangs wird keine Operation zur Optimierung ausgeführt.
    Zum Beispiel:
    SearchService.indexNow("dogear, blogs")
    Der Befehl gibt eine Ausgabe im JSON-Format zurück, die der folgenden ähnelt:
    { 
    "success": true, 
    "result": [ 
    "roi-dogear-blogs-SunMay1109:45:02EDT2014" 
    ]
    }
    Wenn der Befehl erfolgreich ausgeführt wird, wird "success": true an die wsadmin-Konsole ausgegeben. Wenn der Befehl nicht erfolgreich ausgeführt wird, wird "success": false an die wsadmin-Konsole ausgegeben. Der erstellte Taskname innerhalb von "result" wird immer zurückgegeben.
    SearchService.indexNowWithOptimization(String applicationNames)

    Erstellt eine einmalige Task, die für die angegebenen Anwendungen 30 Sekunden nach dem Aufruf Indizes erstellt und am Ende der Indexierung eine Optimierungsoperation ausführt.

    Dieser Befehl akzeptiert ein einziges Argument:
    • applicationNames. Der Name der IBM Connections-Anwendung(en), die indexiert werden soll(en), wenn die Task ausgelöst wird. Dieses Argument ist ein Zeichenfolgewert. Zur Indexierung mehrerer Anwendungen können Sie eine durch Kommas begrenzte Liste verwenden. Die folgenden Werte sind gültig:
      • activities
      • all_configured
      • blogs
      • calendar
      • communities
      • dogear
      • ecm_files
      • files
      • forums
      • people_finder
      • profiles
      • status_updates
      • wikis.
    Anmerkung: Der Optimierungsvorgang ist sowohl CPU- als auch E/A-intensiv. Der Vorgang sollte daher nur selten und wenn möglich zu Zeiten geringer Systemauslastung durchgeführt werden. Weitere Informationen finden Sie auf der folgenden Webseite:
    http://lucene.apache.org/core/old_versioned_docs/versions/3_0_3/api/all/org/apache/lucene/index/IndexWriter.html#optimize%28%29

    Beachten Sie, dass beim Installieren von IBM Connections eine Task zur Suchoptimierung so konfiguriert wird, dass sie standardmäßig jede Nacht ausgeführt wird. Weitere Informationen finden Sie im Abschnitt Standardtasks der Anwendung "Suche".

    Zum Beispiel:
    SearchService.indexNowWithOptimization("dogear, blogs")
    SearchService.optimizeNow()
    Erstellt eine einmalige Task, die 30 Sekunden nach dem Aufruf am Suchindex eine Operation zur Optimierung ausführt.
    Anmerkung: Der Optimierungsvorgang ist sowohl CPU- als auch E/A-intensiv. Der Vorgang sollte daher nur selten und wenn möglich zu Zeiten geringer Systemauslastung durchgeführt werden. Weitere Informationen finden Sie auf der folgenden Webseite:
    http://lucene.apache.org/core/old_versioned_docs/versions/3_0_3/api/all/org/apache/lucene/index/IndexWriter.html#optimize%28%29

    Beachten Sie, dass beim Installieren von IBM Connections eine Task zur Suchoptimierung so konfiguriert wird, dass sie standardmäßig jede Nacht ausgeführt wird. Weitere Informationen finden Sie im Abschnitt Standardtasks der Anwendung "Suche".

    Der Befehl akzeptiert keine Eingabeparameter.

    Dieser Vorgang sollte nicht während eines Indexierungsvorgangs aufgerufen werden. Wenn er ausgeführt werden muss, sollte dies in Zeiten geringer Systemauslastung erfolgen, wenn von der Anwendung nicht die Durchführung intensiver E/A-Operationen für den Index erwartet wird.