Ten przewodnik jest przeznaczony dla administratorów wtyczki indeksera Norconex HTTP Collector w Google Cloud Search, czyli osób odpowiedzialnych za pobieranie, wdrażanie, konfigurowanie i utrzymywanie wtyczki indeksera. Ten przewodnik zakłada, że znasz systemy operacyjne Linux, podstawy indeksowania stron internetowych, XML oraz Norconex HTTP Collector.
Ten przewodnik zawiera instrukcje wykonywania kluczowych zadań związanych z wdrażaniem wtyczki indeksera:
- Pobieranie oprogramowania wtyczki indeksera
- Konfigurowanie Google Cloud Search
- Konfigurowanie programu Norconex HTTP Collector i przeszukiwania sieci
- Rozpocznij indeksowanie i prześlij treści
W tym przewodniku nie znajdziesz informacji o zadaniach, które musi wykonać administrator Google Workspace, aby zmapować Google Cloud Search do modułu indeksowania Norconex HTTP Collector. Więcej informacji o tych zadaniach znajdziesz w artykule Zarządzanie zewnętrznymi źródłami danych.
Omówienie modułu indeksowania Norconex HTTP Collector w Cloud Search
Domyślnie Cloud Search może wykrywać, indeksować i wyświetlać treści z usług Google Workspace, takich jak Dokumenty Google czy Gmail. Możesz rozszerzyć zasięg Google Cloud Search, aby obejmował on wyświetlanie treści internetowych użytkownikom, wdrażając wtyczkę indeksatora dla Norconex HTTP Collector, czyli skanera internetowego typu open source dla przedsiębiorstw.
Pliki właściwości konfiguracji
Aby umożliwić indekserowi indeksowanie stron internetowych i przesyłanie treści do interfejsu indeksowania API, jako administrator tego modułu musisz podać określone informacje podczas konfiguracji opisanej w tym dokumencie w sekcji Kroki wdrożenia.
Aby używać wtyczki indeksatora, musisz ustawić właściwości w 2 plikach konfiguracyjnych:
{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ą modułowi indeksowania Google Cloud Search i Norconex HTTP Collector komunikowanie się ze sobą.
Przeszukiwanie sieci i przesyłanie treści
Po wypełnieniu plików konfiguracji masz niezbędne ustawienia, aby rozpocząć indeksowanie stron. Norconex HTTP Collector indeksuje sieć, odkrywając treści dokumentów związane z jego konfiguracją, oraz przesyła oryginalne wersje binarne (lub tekstowe) treści dokumentów do interfejsu Cloud Search Indexing API, gdzie są indeksowane i ostatecznie udostępniane użytkownikom.
Obsługiwany system operacyjny
Wtyczka indeksera Norconex HTTP Collector do Google Cloud Search musi być zainstalowana w systemie Linux.
Obsługiwana wersja Norconex HTTP Collector
Wtyczka indeksera Norconex HTTP Collector do Google Cloud Search obsługuje wersję 2.8.0.
Obsługa list ACL
Wtyczka indeksera umożliwia kontrolowanie dostępu do dokumentów w domenie Google Workspace za pomocą list kontroli dostępu (ACL).
Jeśli domyślne listy ACL są włączone w konfiguracji wtyczki Google Cloud Search (defaultAcl.mode
ma wartość inną niż none
i jest skonfigurowana za pomocą defaultAcl.*
), najpierw próbuje utworzyć i zastosować domyślną listę ACL.
Jeśli domyślne listy ACL nie są włączone, wtyczka przypisuje uprawnienia do odczytu całej domenie Google Workspace.
Szczegółowe opisy parametrów konfiguracji ACL znajdziesz w artykule Parametry usługi łącznika dostarczanej przez Google.
Wymagania wstępne
Zanim wdrożysz wtyczkę indeksatora, upewnij się, że masz te wymagane komponenty:
- środowisko wykonawcze Java JRE 1.8 zainstalowane na komputerze, na którym działa wtyczka indeksatora;
Informacje Google Workspace wymagane do ustanowienia relacji między Cloud Search a Norconex HTTP Collector:
- klucz prywatny Google Workspace (zawierający identyfikator konta usługi);
- Identyfikator źródła danych Google Workspace
Zwykle administrator Google Workspace w domenie może udostępnić te dane.
Etapy wdrażania
Aby wdrożyć wtyczkę indeksatora:
- Zainstaluj Norconex HTTP Collector i wtyczkę indeksującą
- Konfigurowanie Google Cloud Search
- Konfigurowanie modułu Norconex HTTP Collector
- Konfigurowanie indeksowania sieci
- Rozpoczęcie indeksowania i przesyłania treści
Krok 1. Zainstaluj Norconex HTTP Collector i wtyczkę indeksującą
- Pobierz oprogramowanie Norconex commiter ze strony.
- rozpakuj pobrane oprogramowanie do folderu
~/norconex/
, - Sklonuj wtyczkę commiter z GitHuba.
git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git
a potemcd norconex-committer-plugin
- Wypakuj żądaną wersję wtyczki commiter i wygeneruj plik ZIP:
git checkout tags/v1-0.0.3
imvn package
(aby pominąć testy podczas generowania złącza, użyj opcjimvn package -DskipTests
). cd target
- Skopiuj wygenerowany plik JAR wtyczki do katalogu lib norconex.
cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
- Wyodrębnij utworzony właśnie plik ZIP, a potem go rozpakuj:
unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
- Uruchom skrypt instalacyjny, aby skopiować plik .jar wtyczki i wszystkie wymagane biblioteki do katalogu http-collector:
- Zmień wyodrębnioną wtyczkę commitera, która została rozpakowana powyżej:
cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
- Wykonaj
$ sh install.sh
i w odpowiednim momencie podaj pełną ścieżkę donorconex/norconex-collector-http-{version}/lib
jako katalog docelowy. - Jeśli zostaną znalezione zduplikowane pliki jar, wybierz opcję
1
(Kopiuj tylko źródłowy plik jar, jeśli jego wersja jest nowsza lub taka sama jak docelowa po zmianie nazwy).
- Zmień wyodrębnioną wtyczkę commitera, która została rozpakowana powyżej:
Krok 2. Skonfiguruj wyszukiwarkę Google Cloud
Aby umożliwić indeksatorowi połączenie z Norconex HTTP Collector i zaindeksowanie odpowiednich treści, musisz utworzyć plik konfiguracji Cloud Search w katalogu Norconex, w którym zainstalowany jest Norconex HTTP Collector. Google zaleca, aby plik konfiguracji Cloud Search otrzymał nazwę sdk-configuration.properties
.
Plik konfiguracji musi zawierać pary klucz-wartość, które definiują parametr. Plik konfiguracji musi zawierać co najmniej te 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 dostępności wtyczki indeksera. |
Poniższy przykład pokazuje plik sdk-configuration.properties
.
#
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
#
Plik konfiguracji może też zawierać parametry konfiguracji dostarczone przez Google.
Te parametry mogą wpływać na sposób przesyłania danych przez ten wtyczek do interfejsu Google Cloud Search API. Na przykład zestaw parametrów batch.*
określa, jak usługa łączy żądania.
Jeśli nie zdefiniujesz parametru w pliku konfiguracyjnym, zostanie użyta wartość domyślna (jeśli jest dostępna). Szczegółowe opisy poszczególnych parametrów znajdziesz w artykule Parametry usługi łącznika dostarczanej przez Google.
Możesz skonfigurować wtyczkę indeksatora, aby wypełniała metadane i uporządkowane dane dla indeksowanego treści. Wartości, które mają być wypełniane w polach metadanych i uporządkowanych danych, można wyodrębnić z metatagów w indeksowanym treści HTML lub można 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 wartości HTML title jako tytułu indeksowanego dokumentu. W przypadku braku tytułu możesz odnieść się do atrybutu metadanych zawierającego 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 zawierający wartość sygnatury czasowej utworzenia dokumentu. |
Czas ostatniej modyfikacji | itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Atrybut metadanych zawierający wartość sygnatury czasowej ostatniej modyfikacji dokumentu. |
Język dokumentu | itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Język treści w dokumentach indeksowanych. |
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 jest określona, usługa sprzęgająca nie będzie indeksować żadnych uporządkowanych danych.
Uwaga: ta właściwość konfiguracji wskazuje wartość, a nie atrybut metadanych. Nie są obsługiwane sufiksy |
Formaty daty i godziny
Formaty daty i godziny określają formaty oczekiwane w atrybutach metadanych. Jeśli plik konfiguracji nie zawiera tego parametru, używane są wartości domyślne. Parametr ten jest widoczny w tabeli poniżej.
Ustawienie
Parametr
Dodatkowe wzorce daty i godziny
structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX
Lista dodatkowych wzorów java.time.format.DateTimeFormatter rozdzielona średnikami. Te wzorce są używane podczas analizowania wartości ciągu znaków w polach daty lub daty i godziny w metadanych lub schemacie. Wartością domyślną jest pusta lista, ale formaty RFC 3339 i RFC 1123 są zawsze obsługiwane.
Krok 3. Skonfiguruj Norconex HTTP Collector
Archiwum ZIP norconex-committer-google-cloud-search-{version}.zip
zawiera przykładowy plik konfiguracji minimum-config.xml
.
Google zaleca rozpoczęcie konfiguracji od skopiowania przykładowego pliku:
- Przejdź do katalogu Norconex HTTP Collector:
$ cd ~/norconex/norconex-collector-http-{version}/
- Skopiuj plik konfiguracji:
$ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
- 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 tabeli poniżej.
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>
Opcjonalnie. Format, w którym wtyczka indeksera przesyła zawartość dokumentu do interfejsu Google Cloud Search Indexer API. Prawidłowe wartości to:
Wartość domyślna to raw .
|
BinaryContent Tagger <tagger> node
|
<tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Wymagane, jeśli wartość parametru <UploadFormat> to raw . W takim przypadku moduł indeksowania musi mieć dostęp do pola binarnej zawartości dokumentu.
Musisz dodać węzeł BinaryContentTagger <tagger> jako element podrzędny węzła <importer> / <preParseHandlers> .
|
Poniższy przykład pokazuje wymaganą modyfikację
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
Zanim rozpoczniesz indeksowanie, musisz skonfigurować indeksowanie tak, aby obejmowało ono tylko informacje, które Twoja organizacja chce udostępniać w wynikach wyszukiwania. Najważniejsze ustawienia indeksowania stron internetowych znajdują się w węzłach <crawler>
i mogą obejmować:
- Początkowe adresy URL
- Maksymalna głębokość indeksowania
- Liczba wątków
Zmień te wartości konfiguracji zgodnie ze swoimi potrzebami. Więcej informacji o konfigurowaniu indeksowania stron internetowych oraz pełną listę dostępnych parametrów konfiguracji znajdziesz na stronie Konfiguracja w usłudze HTTP Collector.
Krok 5. Rozpocznij indeksowanie i przesyłanie treści
Po zainstalowaniu i skonfigurowaniu wtyczki indeksera możesz ją uruchomić w trybie lokalnym.
W tym przykładzie zakładamy, że wymagane komponenty znajdują się w lokalnym katalogu w systemie Linux. Uruchom to polecenie:
$ ./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml
Monitorowanie robota za pomocą monitora JEF
Norconex JEF (Job Execution Framework) Monitor to narzędzie graficzne do monitorowania postępu procesów i zadań Norconex Web Crawler (HTTP Collector). Pełny samouczek dotyczący konfigurowania tego narzędzia znajdziesz w artykule Monitorowanie postępów robota za pomocą narzędzia JEF Monitor.