部署 Norconex HTTP 收集器索引工具外掛程式

本指南適用於 Google Cloud Search Norconex HTTP Collector 索引外掛程式管理員,也就是負責下載、部署、設定及維護索引外掛程式的人員。本指南假設您熟悉 Linux 作業系統、網頁檢索基本概念、XML 和 Norconex HTTP Collector

本指南提供操作說明,協助您執行與索引外掛程式部署相關的重要工作:

  • 下載索引外掛程式軟體
  • 設定 Google Cloud Search
  • 設定 Norconex HTTP Collector 和網頁檢索
  • 開始網頁檢索並上傳內容

本指南不會說明 Google Workspace 管理員必須執行的工作,才能將 Google Cloud Search 對應至 Norconex HTTP Collector 索引外掛程式。如要瞭解如何執行這些工作,請參閱「管理第三方資料來源」一文。

Cloud Search Norconex HTTP Collector 索引外掛程式總覽

根據預設,Cloud Search 可以探索、建立索引及提供 Google Workspace 產品 (例如 Google 文件和 Gmail) 的內容。您可以部署 Norconex HTTP Collector 的索引外掛程式,將 Google Cloud Search 的觸及範圍擴大到為使用者提供網路內容。Norconex HTTP Collector 是開放原始碼的企業網路檢索器。

設定屬性檔案

如要讓索引器外掛程式執行網頁檢索,並將內容上傳至索引 API,索引器外掛程式管理員必須在部署步驟一節所述的設定步驟中,提供特定資訊。

如要使用索引外掛程式,您必須在兩個設定檔中設定屬性:

  • {gcs-crawl-config.xml}-- 包含 Norconex HTTP Collector 的設定。
  • sdk-configuration.properties:包含 Google Cloud Search 的設定。

每個檔案中的屬性可讓 Google Cloud Search 索引外掛程式和 Norconex HTTP Collector 彼此通訊。

網頁檢索和內容上傳

填入設定檔後,您就具備啟動網站檢索所需的設定。Norconex HTTP Collector 會檢索網路,找出與設定相關的文件內容,並將文件內容的原始二進位 (或文字) 版本上傳至 Cloud Search Indexing API,供系統建立索引,最終提供給使用者。

支援的作業系統

您必須在 Linux 上安裝 Google Cloud Search Norconex HTTP Collector 索引器外掛程式。

支援的 Norconex HTTP Collector 版本

Google Cloud Search Norconex HTTP Collector 索引外掛程式支援 2.8.0 版。

ACL 支援

索引外掛程式支援使用存取控制清單 (ACL),控管 Google Workspace 網域中文件的存取權。

如果在 Google Cloud Search 外掛程式設定中啟用預設 ACL (defaultAcl.mode 設為 none 以外的值,並設定 defaultAcl.*),索引器外掛程式會先嘗試建立及套用預設 ACL。

如果未啟用預設 ACL,外掛程式會改為授予整個 Google Workspace 網域的讀取權限。

如需 ACL 設定參數的詳細說明,請參閱「Google 提供的連接器參數」。

必要條件

部署索引外掛程式前,請確認您具備下列必要元件:

  • 在執行索引器外掛程式的電腦上安裝 Java JRE 1.8
  • 建立 Cloud Search 與 Norconex HTTP Collector 之間關係時,需要下列 Google Workspace 資訊:

    一般來說,網域的 Google Workspace 管理員可以為您提供這些憑證。

部署步驟

如要部署索引外掛程式,請按照下列步驟操作:

  1. 安裝 Norconex HTTP Collector 和索引器外掛程式軟體
  2. 設定 Google Cloud Search
  3. 設定 Norconex HTTP Collector
  4. 設定網站檢索
  5. 開始網頁檢索及上傳內容

步驟 1:安裝 Norconex HTTP Collector 和索引外掛程式軟體

  1. 這個頁面下載 Norconex 提交者軟體。
  2. 將下載的軟體解壓縮至 ~/norconex/ 資料夾
  3. 從 GitHub 複製提交者外掛程式。git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git,然後 cd norconex-committer-plugin
  4. 查看所需版本的提交者外掛程式,並建構 ZIP 檔案:git checkout tags/v1-0.0.3mvn package (如要在建構連接器時略過測試,請使用 mvn package -DskipTests)。
  5. cd target
  6. 將建構的外掛程式 JAR 檔案複製到 norconex lib 目錄。 cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. 解壓縮剛建構的 ZIP 檔案:unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
  8. 執行安裝指令碼,將外掛程式的 .jar 和所有必要程式庫複製到 HTTP 收集器的目錄:
    1. 變更為上述解壓縮的已擷取提交者外掛程式:cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. 執行 $ sh install.sh,並在系統提示時提供 norconex/norconex-collector-http-{version}/lib完整路徑做為目標目錄。
    3. 如果系統找到重複的 JAR 檔案,請選取選項 1 (如果目標 JAR 檔案在重新命名後,版本大於或等於來源 JAR 檔案,則只複製來源 JAR 檔案)。

步驟 2:設定 Google Cloud Search

如要讓索引外掛程式連線至 Norconex HTTP Collector 並為相關內容建立索引,您必須在安裝 Norconex HTTP Collector 的 Norconex 目錄中,建立 Cloud Search 設定檔。Google 建議您將 Cloud Search 設定檔命名為 sdk-configuration.properties

這個設定檔必須包含定義參數的鍵/值組合。 設定檔至少必須指定下列參數,這些參數是存取 Cloud Search 資料來源的必要條件。

設定 參數
資料來源 ID api.sourceId = 1234567890abcdef
這是必要欄位。Google Workspace 管理員設定的 Cloud Search 來源 ID。
服務帳戶 api.serviceAccountPrivateKeyFile = ./PrivateKey.json
這是必要欄位。Google Workspace 管理員為索引外掛程式存取權建立的 Cloud Search 服務帳戶金鑰檔案。

以下範例顯示 sdk-configuration.properties 檔案。

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

設定檔也可以包含 Google 提供的設定參數。 這些參數可能會影響這個外掛程式將資料推送至 Google Cloud Search API 的方式。舉例來說,batch.* 參數集會識別連接器合併要求的方式。

如果您未在設定檔中定義參數,系統會使用預設值 (如有)。如需各項參數的詳細說明,請參閱Google 提供的連結器參數

您可以設定索引外掛程式,為編列索引的內容填入中繼資料和結構化資料。系統會從編入索引的 HTML 內容中擷取中繼資料和結構化資料欄位的值,或在設定檔中指定預設值。

設定 參數
標題 itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
根據預設,外掛程式會使用 HTML title 做為編列索引文件的標題。如果缺少標題,您可以參照包含與文件標題對應值的 中繼資料屬性,或設定預設值。
建立時間戳記 itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
包含文件建立時間戳記值的 Metadata 屬性。
上次修改時間 itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
這個中繼資料屬性包含文件上次修改時間戳記的值。
文件語言 itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
要建立索引的文件內容語言。
結構定義物件類型 itemMetadata.objectType=movie
網站使用的物件類型,如 資料來源結構定義物件定義中所定義。如果未指定這項屬性,連接器就不會為任何結構化資料建立索引。

注意:這個設定屬性指向值,而非中繼資料屬性,且不支援 .field.defaultValue 後置字元。

日期時間格式

日期時間格式會指定中繼資料屬性中預期的格式。 如果設定檔未包含這個參數,系統會使用預設值。下表顯示這個參數。

設定

參數

其他日期時間模式

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

以半形分號分隔的 java.time.format.DateTimeFormatter 模式清單。剖析中繼資料或結構定義中任何日期或日期時間欄位的字串值時,系統會使用這些模式。預設值為空白清單,但系統一律支援 RFC 3339 和 RFC 1123 格式。

步驟 3:設定 Norconex HTTP Collector

ZIP 壓縮檔 norconex-committer-google-cloud-search-{version}.zip 包含範例設定檔 minimum-config.xml

Google 建議您先複製範例檔案,再開始設定:

  1. 變更為 Norconex HTTP Collector 目錄:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. 複製設定檔:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. 編輯新建立的檔案 (在本例中為 gcs-crawl-config.xml),然後新增或取代現有的 <committer><tagger> 節點,如下表所述。
設定 參數
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

這是必要欄位。如要啟用外掛程式,請將 <committer> 節點新增為根層級 <httpcollector> 節點的子項。
<UploadFormat> <uploadFormat>raw</uploadFormat>
選用。索引外掛程式將文件內容推送至 Google Cloud Search 索引 API 的格式。有效值如下:
  • raw:索引外掛程式會推送原始的未轉換文件內容。
  • text:索引外掛程式會推送擷取的文字內容。

預設值為 raw
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
如果 <UploadFormat> 的值為 raw,則為必要項目。在這種情況下,索引器外掛程式需要提供文件的二進位內容欄位。

您必須將 BinaryContentTagger <tagger> 節點新增為 <importer> / <preParseHandlers> 節點的子項元素。

以下範例顯示 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>

步驟 4:設定網頁檢索

開始檢索網站前,請務必設定檢索作業,確保只納入貴機構想在搜尋結果中顯示的資訊。網頁檢索最重要的設定屬於 <crawler> 節點,可能包括:

  • 起始網址
  • 檢索深度上限
  • 執行緒數量

請根據需求變更這些設定值。如要進一步瞭解如何設定網頁檢索,以及查看可用的設定參數完整清單,請參閱 HTTP 收集器的「設定」頁面。

步驟 5:開始網頁檢索並上傳內容

安裝並設定索引器外掛程式後,您可以在本機模式下單獨執行該外掛程式。

以下範例假設必要元件位於 Linux 系統的本機目錄中。執行下列指令:

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

使用 JEF Monitor 監控檢索器

Norconex JEF (Job Execution Framework) Monitor 是一種圖形化工具,可監控 Norconex Web Crawler (HTTP Collector) 程序和工作的進度。如需設定這項公用程式的完整教學課程,請參閱「使用 JEF Monitor 監控檢索器進度」。