在即將發布的版本中,用於爬蟲插件和客戶連接器功能的捆綁式 JVM 將過渡到 IBM Semeru Runtimes,版本 21。 如果您的爬蟲外掛程式或自訂連接器利用任何與 IBM SDK、Java Technology Edition, Version 8 和 IBM Semeru Runtimes, Version 21 不相容的功能,您需要修改程式碼,以確保與未來的版本相容,例如 Discovery 5.2.x 及更新版本。

有關 JVM 移轉,請參閱下列頁面:

建立自訂爬蟲外掛程式

Discovery 其特色在於可選擇使用 SDK 建立您自己的爬蟲外掛程式。Java 現在,使用搜索器外掛程式,可以快速針對使用案例開發相關解決方案。 從安裝的 Discovery 叢集中,可以下載 SDK。 如需相關資訊,請參閱取得搜索器外掛程式 SDK 套件。

IBM Cloud Pak for Data IBM Software Hub

此資訊僅適用於已安裝的部署。

與 IBM Watson® Discovery 搭配使用的任何自訂程式碼都由開發人員負責;IBM 不提供對開發人員所建立的任何自訂程式碼的支援。

搜索器外掛程式支援下列功能:

  • 更新所搜索文件的 meta 資料清單
  • 更新所搜索文件的內容
  • 排除所搜索文件
  • 參考爬蟲設定,遮蔽密碼值
  • 在 Discovery 使用者介面中顯示通知訊息
  • 將日誌訊息輸出至 crawler pod 主控台

但是,crawler 外掛程式無法支援下列功能:

  • 將一個所搜索文件分割為多個文件
  • 將多個文件中的內容合併成一個文件
  • 修改存取控制清單

搜索器外掛程式需求

請確定下列項目已安裝在您計劃使用此 SDK 來開發 crawler 外掛程式的開發伺服器上:

  • Java SE Development Kit (JDK) 1.8 或更高版本
  • Gradle
  • cURL
  • sed (串流編輯器)

取得搜索器外掛程式 SDK 套件

  1. 登入 Discovery 叢集。

  2. 輸入下列指令以取得您的 crawler pod 名稱:

    oc get pods | grep crawler
    

    下列範例顯示輸出範例。

    wd-discovery-crawler-57985fc5cf-rxk89     1/1     Running     0          85m
    
  3. 輸入下列指令以取得 SDK 套件名稱,請將 {crawler-pod-name} 改為您在步驟 2 中取得的 crawler pod 名稱:

    oc exec {crawler-pod-name} -- ls -l /opt/ibm/wex/zing/resources/ | grep wd-crawler-plugin-sdk
    

    下列範例顯示輸出範例。

    -rw-r--r--. 1 dadmin dadmin 35575 Oct  1 16:51 wd-crawler-plugin-sdk-${build-version}.zip
    
  4. 輸入下列指令,以將 SDK 套件複製至主機伺服器,並需要將 {build-version} 取代為上一步中的建置版本號碼:

    oc cp {crawler-pod-name}:/opt/ibm/wex/zing/resources/wd-crawler-plugin-sdk-${build-version}.zip wd-crawler-plugin-sdk.zip
    
  5. 根據需要,將 SDK 套件複製至開發伺服器。

建置搜索器外掛程式套件

  1. 解壓縮 SDK 檔案。
  2. 在 src/ 中實作外掛程式邏輯。 確保相依性以 build.gradle 寫入。
  3. 輸入 gradle packageCrawlerPlugin 以建立外掛程式套件。 所產生的套件為 build/distributed/wd-crawler-plugin-sample.zip。