Wdrażanie wtyczki Norconex HTTP Collector Indexer

Ten przewodnik jest przeznaczony dla administratorów wtyczki Google Cloud Search Norconex HTTP Collector, czyli wszystkich osób odpowiedzialnych za pobieranie, wdrażanie, konfigurowanie i obsługę wtyczki indeksującego. W przewodniku zakładamy, że znasz systemy operacyjne Linux, podstawy indeksowania stron internetowych, język XML i kolektor HTTP Norconex.

Ten przewodnik zawiera instrukcje wykonywania kluczowych zadań związanych z wdrażaniem wtyczki indeksującego:

  • Pobierz oprogramowanie wtyczki indeksującej
  • Konfigurowanie Google Cloud Search
  • Konfigurowanie kolektora HTTP i indeksowania sieci Norconex
  • Rozpoczynanie indeksowania internetu i przesyłanie treści

Informacje o czynnościach, które musi wykonać administrator Google Workspace, aby zmapować Google Cloud Search na wtyczkę indeksującą Norconex HTTP Collector, nie są widoczne w tym przewodniku. Informacje o tych zadaniach znajdziesz w artykule Zarządzanie zewnętrznymi źródłami danych.

Omówienie wtyczki indeksującego kolektor HTTP kolektora HTTP Cloud Search Norconex

Domyślnie Cloud Search może wykrywać, indeksować i udostępniać treści z usług Google Workspace, takich jak Dokumenty Google czy Gmail. Możesz rozszerzyć zasięg Google Cloud Search o wyświetlanie treści z internetu użytkownikom. W tym celu wdróż wtyczkę indeksującego Norconex HTTP Collector, czyli internetowego robota indeksującego typu open source dla przedsiębiorstw.

Pliki właściwości konfiguracji

Aby umożliwić wtyczce indeksującej przeprowadzanie indeksowania internetu i przesyłanie treści do interfejsu indeksowania interfejsu API, jako administrator wtyczki indeksującego podaj określone informacje podczas konfiguracji opisanych w tym dokumencie w sekcji Etapy wdrażania.

Aby użyć wtyczki indeksującej, musisz ustawić właściwości w 2 plikach konfiguracji:

  • {gcs-crawl-config.xml} – zawiera ustawienia kolektora HTTP Norconex.
  • sdk-configuration.properties – zawiera ustawienia Google Cloud Search.

Właściwości w każdym pliku umożliwiają wtyczce indeksującego Google Cloud Search i kolektorowi HTTP Norconex komunikację ze sobą.

Indeksowanie internetu i przesyłanie treści

Po wprowadzeniu ustawień w plikach konfiguracji masz ustawienia niezbędne do rozpoczęcia indeksowania internetu. Norconex HTTP Collector indeksuje internet, wykrywa treści dokumentów związane z ich konfiguracją i przesyła oryginalne binarne (lub tekstowe) wersje treści dokumentu do interfejsu Cloud Search Indexing API, gdzie jest ona indeksowana, a następnie udostępniana użytkownikom.

Obsługiwany system operacyjny

Wtyczka Google Cloud Search Norconex HTTP Collector indeksującego musi być zainstalowana w systemie Linux.

Obsługiwana wersja kolektora HTTP Norconex

Wtyczka Google Cloud Search Norconex HTTP Collector zbierającego dane obsługuje wersję 2.8.0.

Obsługa list kontroli dostępu (ACL)

Wtyczka indeksująca umożliwia kontrolowanie dostępu do dokumentów w domenie Google Workspace przy użyciu list kontroli dostępu (ACL).

Jeśli domyślne listy kontroli dostępu są włączone w konfiguracji wtyczki Google Cloud Search (defaultAcl.mode ma wartość inną niż none i skonfigurowano za pomocą defaultAcl.*), wtyczka indeksującego najpierw próbuje utworzyć i zastosować domyślną listę kontroli dostępu.

Jeśli domyślne listy kontroli dostępu nie są włączone, wtyczka przywraca uprawnienia do odczytu całej domenie Google Workspace.

Szczegółowe opisy parametrów konfiguracji listy kontroli dostępu (ACL) znajdziesz w artykule Parametry oprogramowania sprzęgającego dostarczone przez Google.

Wymagania wstępne

Zanim wdrożysz wtyczkę indeksującego, sprawdź, czy masz te wymagane komponenty:

  • Środowisko Java JRE 1.8 zainstalowane na komputerze, na którym działa wtyczka indeksująca
  • Informacje o Google Workspace wymagane do nawiązania relacji między Cloud Search a kolektorem HTTP Norconex:

    Zwykle administrator Google Workspace w domenie może dostarczyć te dane logowania za Ciebie.

Etapy wdrażania

Aby wdrożyć wtyczkę indeksującą, wykonaj te czynności:

  1. Instalowanie oprogramowania Norconex HTTP Collector i wtyczki indeksującej
  2. Konfigurowanie Google Cloud Search
  3. Konfigurowanie kolektora HTTP Norconex
  4. Konfigurowanie indeksowania internetu
  5. Rozpoczynanie indeksowania internetu i przesyłanie treści

Krok 1. Zainstaluj oprogramowanie Norconex HTTP Collector i wtyczki indeksujące

  1. Pobierz oprogramowanie Norconex Commiter z tej strony.
  2. Rozpakuj pobrane oprogramowanie do folderu ~/norconex/
  3. Sklonuj wtyczkę zatwierdzającą z GitHuba. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git, a następnie cd norconex-committer-plugin
  4. Sprawdź żądaną wersję wtyczki zatwierdzającego i skompiluj plik ZIP: git checkout tags/v1-0.0.3 oraz mvn package (aby pominąć testy podczas tworzenia oprogramowania sprzęgającego, użyj mvn package -DskipTests).
  5. cd target
  6. Skopiuj plik jar wbudowanej wtyczki do katalogu lib norconex. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. Rozpakuj właśnie utworzony plik ZIP, a następnie rozpakuj go: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
  8. Uruchom skrypt instalacyjny, aby skopiować plik .jar wtyczki i wszystkie wymagane biblioteki do katalogu kolektora HTTP:
    1. Zmień na wyodrębnioną wtyczkę zatwierdzającą, która została rozpakowana powyżej: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. Wykonaj polecenie $ sh install.sh i gdy pojawi się prośba, podaj pełną ścieżkę do norconex/norconex-collector-http-{version}/lib jako katalogu docelowego.
    3. W przypadku znalezienia zduplikowanych plików jar wybierz opcję 1 (Kopiuj źródłowy plik Jar tylko wtedy, gdy jest w wersji wyższej lub takiej samej jak docelowy Jar po zmianie nazwy docelowego pliku Jar).

Krok 2. Skonfiguruj Google Cloud Search

Aby wtyczka indeksującego mogła połączyć się z Norconex HTTP Collector i zindeksować odpowiednie treści, musisz utworzyć plik konfiguracji Cloud Search w katalogu Norconex, w którym zainstalowano kolektor HTTP Norconex. Google zaleca nazwę pliku konfiguracji Cloud Search sdk-configuration.properties.

Ten plik konfiguracyjny musi zawierać pary klucz-wartość definiujące parametr. Plik konfiguracji musi określać co najmniej poniższe parametry, które są niezbędne do uzyskania dostępu do źródła danych Cloud Search.

Ustawienie Parametr
Identyfikator źródła danych api.sourceId = 1234567890abcdef
Wymagane. Identyfikator źródła Cloud Search skonfigurowany przez administratora Google Workspace.
Konto usługi api.serviceAccountPrivateKeyFile = ./PrivateKey.json
Wymagane. Plik klucza konta usługi Cloud Search utworzony przez administratora Google Workspace na potrzeby ułatwień dostępu przez wtyczkę indeksującego.

Poniższy przykład zawiera plik sdk-configuration.properties.

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

Plik konfiguracji może też zawierać parametry konfiguracyjne dostarczone przez Google. Te parametry mogą mieć wpływ na to, jak ta wtyczka przekazuje dane do interfejsu Google Cloud Search API. Na przykład zestaw parametrów batch.* określa sposób, w jaki oprogramowanie sprzęgające łączy żądania.

Jeśli parametr nie zostanie zdefiniowany w pliku konfiguracji, zostanie użyta wartość domyślna, jeśli jest dostępna. Szczegółowy opis poszczególnych parametrów znajdziesz w artykule Parametry oprogramowania sprzęgającego dostarczone przez Google.

Wtyczka indeksująca możesz skonfigurować wypełnianie metadanych i uporządkowanych danych na potrzeby indeksowania treści. Wartości do wypełnienia pól metadanych i uporządkowanych danych można wyodrębnić z metatagów w indeksowanej treści HTML lub określić wartości domyślne w pliku konfiguracji.

Ustawienie Parametr
Tytuł itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
Domyślnie wtyczka używa HTML title jako tytułu indeksowanego dokumentu. Jeśli brakuje tytułu, możesz skorzystać z atrybutu metadanych, który zawiera wartość odpowiadającą tytułowi dokumentu, lub ustawić wartość domyślną.
Sygnatura czasowa utworzenia itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Atrybut metadanych, który zawiera wartość sygnatury czasowej utworzenia dokumentu.
Czas ostatniej modyfikacji itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Atrybut metadanych, który zawiera wartość sygnatury czasowej ostatniej modyfikacji dokumentu.
Język dokumentów itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Język treści indeksowanych dokumentów.
Typ obiektu schematu itemMetadata.objectType=movie
Typ obiektu używany przez witrynę, zdefiniowany w definicjach obiektów schematu źródła danych. Jeśli ta właściwość nie zostanie określona, oprogramowanie sprzęgające nie zindeksuje żadnych uporządkowanych danych.

Uwaga: ta właściwość konfiguracji wskazuje wartość, a nie atrybut metadanych, a sufiksy .field i .defaultValue nie są obsługiwane.

Formaty daty i godziny

Formaty daty i godziny określają formaty, które powinny być stosowane w atrybutach metadanych. Jeśli plik konfiguracji nie zawiera tego parametru, używane są wartości domyślne. Ten parametr znajduje się w tabeli poniżej.

Ustawienie

Parametr

Dodatkowe wzorce daty i godziny

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

Rozdzielana średnikami lista dodatkowych wzorców java.time.format.DateTimeFormatter. Wzorce są używane podczas analizy wartości ciągów w dowolnych polach daty lub daty i godziny w metadanych lub schemacie. Wartość domyślna to pusta lista, ale formaty RFC 3339 i RFC 1123 są zawsze obsługiwane.

Krok 3. Skonfiguruj kolektor HTTP Norconex

Archiwum ZIP norconex-committer-google-cloud-search-{version}.zipzawiera przykładowy plik konfiguracji minimum-config.xml.

Google zaleca rozpoczęcie konfiguracji od skopiowania przykładowego pliku:

  1. Przejdź do katalogu kolektora HTTP Norconex:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. Skopiuj plik konfiguracji:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. Zmodyfikuj nowo utworzony plik (w tym przykładzie gcs-crawl-config.xml) i dodaj lub zastąp istniejące węzły <committer> i <tagger> zgodnie z opisem w poniższej tabeli.
Ustawienie Parametr
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

Wymagane. Aby włączyć wtyczkę, musisz dodać węzeł <committer> jako węzeł podrzędny węzła <httpcollector>.
<UploadFormat> <uploadFormat>raw</uploadFormat>
Opcjonalne. Format, w którym wtyczka indeksującego przekazuje treść dokumentu do interfejsu API indeksującego Google Cloud Search. Prawidłowe wartości to:
  • raw: wtyczka indeksująca przekazuje oryginalną, nieprzekonwertowaną treść dokumentu.
  • text: wtyczka indeksująca przekazuje wyodrębnione treści tekstowe.

Wartość domyślna to raw.
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Wymagany, jeśli wartość <UploadFormat> to raw. W takim przypadku wtyczka indeksującego wymaga, aby w dokumencie było dostępne pole treści binarnej.

Węzeł BinaryContentTagger <tagger> musisz dodać jako element podrzędny węzła <importer> / <preParseHandlers>.

Oto przykład wymaganej zmiany 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>

Krok 4. Skonfiguruj indeksowanie internetu

Zanim rozpoczniesz indeksowanie, musisz skonfigurować indeksowanie tak, aby obejmowało tylko informacje, które Twoja organizacja chce udostępnić w wynikach wyszukiwania. Najważniejsze ustawienia indeksowania internetu są częścią węzłów <crawler> i mogą obejmować:

  • Początkowe adresy URL
  • Maksymalna głębokość indeksowania
  • Liczba wątków

Zmień te wartości konfiguracji odpowiednio do swoich potrzeb. Bardziej szczegółowe informacje o konfigurowaniu indeksowania stron internetowych oraz pełna lista dostępnych parametrów konfiguracji znajdziesz na stronie Konfiguracja kolektora HTTP.

Krok 5. Rozpocznij indeksowanie witryny i prześlij treści

Po zainstalowaniu i skonfigurowaniu wtyczki indeksującego możesz ją uruchomić samoczynnie w trybie lokalnym.

W tym przykładzie zakładamy, że wymagane komponenty znajdują się w katalogu lokalnym systemu Linux. Uruchom to polecenie:

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

Monitoruj robota za pomocą JEF Monitor

Monitor Norconex JEF (Job Execution Framework) to narzędzie graficzne do monitorowania postępów procesów i zadań programu Norconex Web Crawler (HTTP Collector). Pełny samouczek konfigurowania tego narzędzia znajdziesz w artykule Monitorowanie postępów robota za pomocą narzędzia JEF Monitor.