Indexierungs-Plug-in für den Norconex HTTP Collector bereitstellen

Dieser Leitfaden richtet sich an Administratoren des Indexierungs-Plug-ins für Google Cloud Search für den Norconex HTTP Collector, also alle, die für das Herunterladen, Bereitstellen, Konfigurieren und Verwalten des Indexierungs-Plug-ins verantwortlich sind. Dabei wird davon ausgegangen, dass Sie mit Linux-Betriebssystemen, mit den Grundlagen des Web-Crawlings, mit XML und mit dem Norconex HTTP Collector vertraut sind.

Dieser Leitfaden enthält Anleitungen für wichtige Aufgaben im Zusammenhang mit der Bereitstellung des Indexierungs-Plug-ins:

  • Software für das Indexierungs-Plug-in herunterladen
  • Google Cloud Search konfigurieren
  • Den Norconex HTTP Collector und das Web-Crawling konfigurieren
  • Web-Crawling starten und Inhalte hochladen

In diesem Leitfaden finden Sie keine Informationen zu den Aufgaben, die der Google Workspace-Administrator ausführen muss, um Google Cloud Search dem Indexierungs-Plug-in des Norconex HTTP Collector zuzuordnen. Weitere Informationen zu diesen Aufgaben finden Sie unter Datenquellen von Drittanbietern verwalten.

Das Indexierungs-Plug-in für den Norconex HTTP Collector für Cloud Search

Standardmäßig kann Cloud Search Inhalte aus Google Workspace-Produkten wie Google Docs und Gmail finden, indexieren und bereitstellen. Sie können die Reichweite von Google Cloud Search auf Webinhalte ausweiten, indem Sie das Indexierungs-Plug-in für den Norconex HTTP Collector bereitstellen, einen Open-Source-Web-Crawler für Unternehmen.

Dateien mit Konfigurationseigenschaften

Damit das Indexierungs-Plug-in Web-Crawls ausführen und Inhalte in die Indexing API hochladen kann, müssen Sie als Administrator des Indexierungs-Plug-ins während der Konfigurationsschritte bestimmte Informationen angeben. Diese sind in diesem Dokument unter Bereitstellungsschritte beschrieben.

Wenn Sie das Indexierungs-Plug-in verwenden möchten, müssen Sie Attribute in zwei Konfigurationsdateien festlegen:

  • {gcs-crawl-config.xml}: enthält Einstellungen für den Norconex HTTP Collector
  • sdk-configuration.properties: enthält Einstellungen für Google Cloud Search

Attribute in jeder Datei ermöglichen die Kommunikation zwischen dem Indexierungs-Plug-in von Google Cloud Search und dem Norconex HTTP Collector.

Web-Crawling und Upload von Inhalten

Nachdem Sie die Konfigurationsdateien befüllt haben, können Sie das Web-Crawling starten. Der Norconex HTTP Collector crawlt das Web, findet Dokumentinhalte, die zu seiner Konfiguration gehören, und lädt die ursprünglichen binären (oder Text-)Versionen des Dokumentinhalts in die Indexierungs-API von Cloud Search hoch. Dort werden sie indexiert und Ihren Nutzern bereitgestellt.

Unterstütztes Betriebssystem

Das Indexierungs-Plug-in für den Norconex HTTP Collector muss unter Linux installiert werden.

Unterstützte Version des Norconex HTTP Collectors

Das Indexierungs-Plug-in für den Norconex HTTP Collector von Google Cloud Search unterstützt Version 2.8.0.

ACL-Unterstützung

Das Indexierungs-Plug-in unterstützt die Steuerung des Zugriffs auf Dokumente in der Google Workspace-Domain mithilfe von Access Control Lists (ACLs).

Wenn Standard-ACLs in der Plug-in-Konfiguration von Google Cloud Search aktiviert sind (defaultAcl.mode ist auf einen anderen Wert als none festgelegt und mit defaultAcl.* konfiguriert), versucht das Indexierungs-Plug-in zuerst, eine Standard-ACL zu erstellen und anzuwenden.

Wenn Standard-ACLs nicht aktiviert sind, gewährt das Plug-in Lesezugriff auf die gesamte Google Workspace-Domain.

Detaillierte Beschreibungen der ACL-Konfigurationsparameter

Voraussetzungen

Prüfen Sie vor der Bereitstellung des Indexierungs-Plug-ins, ob die folgenden erforderlichen Komponenten vorhanden sind:

  • Java JRE 1.8, installiert auf einem Computer, auf dem das Indexierungs-Plug-in ausgeführt wird
  • Google Workspace-Informationen, die erforderlich sind, um Beziehungen zwischen Cloud Search und dem Norconex HTTP Collector herzustellen:

    In der Regel erhalten Sie diese Anmeldedaten vom Google Workspace-Administrator der Domain.

Deployment

So stellen Sie das Indexierungs-Plug-in bereit:

  1. Norconex HTTP Collector und das Indexierungs-Plug-in installieren
  2. Google Cloud Search konfigurieren
  3. Norconex HTTP Collector konfigurieren
  4. Web-Crawling konfigurieren
  5. Web-Crawling und Inhaltsupload starten

Schritt 1: Den Norconex HTTP Collector und die Software für das Indexierungs-Plug-in installieren

  1. Laden Sie die Norconex Commiter-Software von dieser Seite herunter.
  2. Entpacken Sie die heruntergeladene Software in den Ordner ~/norconex/.
  3. Klonen Sie das Commiter-Plug-in von GitHub. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git und dann cd norconex-committer-plugin
  4. Prüfen Sie die gewünschte Version des Commiter-Plug-ins und erstellen Sie die ZIP-Datei: git checkout tags/v1-0.0.3 und mvn package. Wenn Sie die Tests beim Erstellen des Connectors überspringen möchten, verwenden Sie mvn package -DskipTests.
  5. cd target
  6. Kopieren Sie die erstellte Plug-in-JAR-Datei in das lib-Verzeichnis von Norconex. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. Extrahieren Sie die soeben erstellte ZIP-Datei und entpacken Sie sie: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
  8. Führen Sie das Installationsskript aus, um die JAR-Datei des Plug-ins und alle erforderlichen Bibliotheken in das Verzeichnis des HTTP Collectors zu kopieren:
    1. Wechseln Sie zum extrahierten Commiter-Plug-in, das oben entpackt wurde: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. Führen Sie $ sh install.sh aus und geben Sie bei Aufforderung den vollständigen Pfad zu norconex/norconex-collector-http-{version}/lib als Zielverzeichnis an.
    3. Wenn doppelte JAR-Dateien gefunden werden, wählen Sie die Option 1 aus. Die Quell-JAR-Datei wird nur kopiert, wenn die Version nach dem Umbenennen der Ziel-JAR-Datei höher oder gleich ist.

Schritt 2: Google Cloud Search konfigurieren

Damit das Indexierungs-Plug-in eine Verbindung zum Norconex HTTP Collector herstellen und den entsprechenden Inhalt indexieren kann, müssen Sie die Cloud Search-Konfigurationsdatei in dem Norconex-Verzeichnis erstellen, in dem der Norconex HTTP Collector installiert ist. Google empfiehlt, dass Sie die Cloud Search-Konfigurationsdatei sdk-configuration.properties nennen.

Diese Konfigurationsdatei muss Schlüssel/Wert-Paare enthalten, die einen Parameter definieren. In der Konfigurationsdatei müssen mindestens die folgenden Parameter angegeben werden, die für den Zugriff auf die Cloud Search-Datenquelle erforderlich sind.

Einstellung Parameter
Datenquellen-ID api.sourceId = 1234567890abcdef
Erforderlich. Die ID der Cloud Search-Quelle, die vom Google Workspace-Administrator eingerichtet wurde.
Dienstkonto api.serviceAccountPrivateKeyFile = ./PrivateKey.json
Erforderlich. Die Schlüsseldatei des Cloud Search-Dienstkontos, die vom Google Workspace-Administrator für den Zugriff auf das Indexierungs-Plug-in erstellt wurde.

Das folgende Beispiel zeigt eine sdk-configuration.properties-Datei.

#
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
#

Die Konfigurationsdatei kann auch von Google bereitgestellte Konfigurationsparameter enthalten. Diese Parameter können beeinflussen, wie das Plug-in Daten an die Google Cloud Search API überträgt. Der Parametersatz batch.* gibt beispielsweise an, wie der Connector Anfragen kombiniert.

Wenn Sie in der Konfigurationsdatei keinen Parameter definieren, wird der Standardwert verwendet, falls verfügbar. Weitere Informationen zu den von Google bereitgestellten Connectorparametern

Sie können das Indexierungs-Plug-in so konfigurieren, dass Metadaten und strukturierte Daten für die Indexierung von Inhalten aufgefüllt werden. Die für Metadaten- und strukturierten Datenfelder auszufüllenden Werte können aus Meta-Tags in zu indexierenden HTML-Inhalten extrahiert oder in der Konfigurationsdatei angegeben werden.

Einstellung Parameter
Titel itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
Standardmäßig verwendet das Plug-in HTML title als Titel des zu indexierenden Dokuments. Falls der Titel fehlt, können Sie entweder auf das Metadatenattribut verweisen, das den Wert enthält, der dem Dokumenttitel entspricht, oder einen Standardwert festlegen.
Zeitstempel der Erstellung itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Das Metadatenattribut, das den Wert für den Zeitstempel der Dokumenterstellung enthält.
Zeitpunkt der letzten Aktualisierung itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Das Metadatenattribut, das den Wert für den Zeitstempel der letzten Änderung am Dokument enthält.
Dokumentsprache itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Die Inhaltssprache für Dokumente, die indexiert werden.
Schemaobjekttyp itemMetadata.objectType=movie
Der Objekttyp, der von der Website verwendet wird, wie unter Schemaobjektdefinitionen für Datenquellen definiert. Wenn dieses Attribut nicht angegeben ist, indexiert der Connector strukturierte Daten nicht.

Hinweis: Dieses Konfigurationsattribut bezieht sich nicht auf ein Metadatenattribut, sondern auf einen Wert. Die Suffixe .field und .defaultValue werden nicht unterstützt.

Datums-/Uhrzeitformate

Datum/Uhrzeit-Formate geben die in Metadatenattributen erwarteten Formate an. Wenn die Konfigurationsdatei diesen Parameter nicht enthält, werden Standardwerte verwendet. In der folgenden Tabelle sehen Sie diesen Parameter.

Einstellung

Parameter

Zusätzliche Datum/Uhrzeit-Muster

structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX

Eine durch Semikolons getrennte Liste zusätzlicher Muster des Typs java.time.format.DateTimeFormatter. Die Muster werden verwendet, wenn Stringwerte für Datums- oder Datum/Uhrzeit-Felder in den Metadaten oder im Schema geparst werden. Der Standardwert ist eine leere Liste. Die Formate RFC 3339 und RFC 1123 werden jedoch immer unterstützt.

Schritt 3: Den Norconex HTTP Collector konfigurieren

Das ZIP-Archiv norconex-committer-google-cloud-search-{version}.zip enthält die Beispielkonfigurationsdatei minimum-config.xml.

Google empfiehlt, dass Sie mit der Konfiguration beginnen, indem Sie die folgende Beispieldatei kopieren:

  1. Wechseln Sie zum Verzeichnis des Norconex HTTP Collectors:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. Kopieren Sie die Konfigurationsdatei:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. Bearbeiten Sie die neu erstellte Datei (in diesem Beispiel gcs-crawl-config.xml) und fügen Sie vorhandene <committer>- und <tagger>-Knoten wie in der folgenden Tabelle beschrieben hinzu oder ersetzen Sie sie.
Einstellung Parameter
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

Erforderlich. Um das Plug-in zu aktivieren, müssen Sie einen <committer>-Knoten als untergeordnetes Element des <httpcollector>-Stammknotens hinzufügen.
<UploadFormat> <uploadFormat>raw</uploadFormat>
Optional. Das Format, in dem das Indexierungs-Plug-in Dokumentinhalte an die Indexierungs-API von Google Cloud Search überträgt. Gültige Werte sind:
  • raw: Der ursprüngliche, nicht konvertierte Dokumentinhalt wird vom Indexierungs-Plug-in übertragen.
  • text: Extrahierter Textinhalt wird vom Indexierungs-Plug-in übertragen.

Der Standardwert ist raw.
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Erforderlich, wenn der Wert von <UploadFormat> raw ist. In diesem Fall muss das binäre Inhaltsfeld des Dokuments für das Indexierungs-Plug-in verfügbar sein.

Sie müssen den Knoten BinaryContentTagger <tagger> als untergeordnetes Element des Knotens <importer> / <preParseHandlers> hinzufügen.

Das folgende Beispiel zeigt die erforderliche Änderung an gcs-crawl-config.xml.

<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
    <configFilePath>/full/path/to/gcs-sdk-config.properties</configFilePath>
    
    <uploadFormat>raw</uploadFormat>
</committer>
<importer>
  <preParseHandlers>
    <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
  </preParseHandlers>
</importer>

Schritt 4: Web-Crawling konfigurieren

Bevor Sie ein Web-Crawling starten, müssen Sie das Crawling so konfigurieren, dass es nur Informationen enthält, die Ihre Organisation in den Suchergebnissen verfügbar machen möchte. Die wichtigsten Einstellungen für das Web-Crawling sind Teil der <crawler>-Knoten und können Folgendes umfassen:

  • Start-URLs
  • Maximale Tiefe des Crawlings
  • Anzahl der Threads

Ändern Sie diese Konfigurationswerte entsprechend Ihren Anforderungen. Ausführlichere Informationen zum Einrichten eines Web-Crawlings sowie eine vollständige Liste der verfügbaren Konfigurationsparameter finden Sie auf der Seite Konfiguration des HTTP Collectors.

Schritt 5: Web-Crawling und Inhaltsupload starten

Nachdem Sie das Indexierungs-Plug-in installiert und eingerichtet haben, können Sie es im lokalen Modus eigenständig ausführen.

Im folgenden Beispiel wird davon ausgegangen, dass sich die erforderlichen Komponenten im lokalen Verzeichnis eines Linux-Systems befinden. Führen Sie dazu diesen Befehl aus:

$ ./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml

Crawler mit JEF Monitor überwachen

Norconex JEF Monitor (Job Execution Framework) ist ein grafisches Tool, mit dem Sie den Fortschritt der Prozesse und Jobs des Norconex Web Crawlers (HTTP Collector) überwachen können. Ein vollständiges Tutorial zum Einrichten dieses Dienstprogramms finden Sie unter Fortschritt des Crawlers mit JEF Monitor überwachen.