レコード・ストア・インスタンスに出力を書き出すようにWebクロールを構成

ディスク上の出力ファイルに書き出す(デフォルトの動作)のではなく、レコード・ストア・インスタンスに直接出力を書き出すようにWeb Crawlerを構成できます。この手順では、default.xmlのグローバルWeb Crawler構成を変更するのではなく、site.xmlファイルで単一のクロール構成を変更する方法について説明しています。

構成プロセスには、次の2つの主要タスクがあります。
  1. レコード・ストア・インスタンスを作成し、Web Crawlerの出力を受信するように構成します。
  2. Web Crawlerのデフォルトの出力設定をオーバーライドして、レコード・ストア・インスタンスに書き出すように構成します。
レコード・ストア・インスタンスを構成するには、構成ファイル内でWeb Crawlerの出力に関する2つのプロパティを設定する必要があります。Web Crawlerを構成するには、site.xmlファイルに次の2つの変更を加える必要があります。
  • レコード・ストアを実行するマシンのホストとポート、および書出し先レコード・ストアのインスタンス名を指定するための3つの出力プロパティを追加します。
  • recordstore-outputterプラグイン用のplugin.includesプロパティを追加します。このプラグインは、Web Crawlerに対してレコード・ストア・インスタンスに書き出すように指示します。Web Crawlerに対して出力ファイルに書き出すように指示するoutput-endeca-recordは、これによってオーバーライドされます。

レコード・ストア・インスタンスに出力を書き出すようにWeb Crawlerを構成するには:

  1. Endeca IAS Serviceがまだ実行されていない場合は、これを起動します。
  2. Component Instance Managerコマンドライン・ユーティリティを使用して、Web Crawlerの出力先となる新しいレコード・ストア・インスタンスを作成します。
    1. コマンド・プロンプトを起動し、<install path>\IAS\<version>\binに移動します。
    2. component-manager-cmdcreate-componentタスクを実行します。-tオプションに引数RecordStoreを指定します。-nオプションにレコード・ストア・インスタンスの任意の名前を指定します。必要に応じてホストとポートの情報を指定するか、デフォルトをそのまま使用します。

      たとえば、次のWindowsコマンドでは、WebCrawlOutputという名前のレコード・ストア・インスタンスが作成されます。

      component-manager-cmd.bat create-component
      -h localhost -n WebCrawlerOutput -p 8510 -t RecordStore

      コマンド・プロンプトに次のように表示されます。

      Successfully created component: WebCrawlerOutput
  3. レコード・ストア構成ファイルを作成し、idPropertyNameプロパティにEndeca.Idを、changePropertyNamesプロパティにEndeca.Document.TextとEndeca.Web.Last-Modifiedを指定します。

    たとえば、recordstore-configuration.xmlという名前の構成ファイルに次のような内容を設定します。

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <recordStoreConfiguration xmlns="http://recordstore.eidi.endeca.com/">
        <changePropertyNames>
        	<changePropertyName>Endeca.Document.Text</changePropertyName>
        	<changePropertyName>Endeca.Web.Last-Modified</changePropertyName>
        </changePropertyNames>
        <idPropertyName>Endeca.Id</idPropertyName>
    </recordStoreConfiguration>
  4. レコード・ストア構成ファイルを保存します。Web Crawlerの他の構成ファイルといっしょに保存しておくと便利です。
  5. レコード・ストアのコマンドライン・ユーティリティを使用して、レコード・ストア・インスタンスの構成ファイルを設定します。
    1. コマンド・プロンプトを起動し、<install path>\IAS\<version>\binに移動します。
    2. recordstore-cmdset-configurationタスクを実行します。-aオプションに引数としてレコード・ストア・インスタンスの名前を指定します。-fオプションに、レコード・ストア・インスタンスの構成ファイルのパスを指定します。

      たとえば、次のWindowsのコマンドは、WebCrawlerOutputという名前のレコード・ストア・インスタンスに対してrecordstore-configuration.xmlという名前の構成ファイルを設定します。

      recordstore-cmd.bat set-configuration 
      -a WebCrawlerOutput -f C:\sample\webcrawler\recordstore-configuration.xml

      コマンド・プロンプトに次のように表示されます。

      Successfully set recordstore configuration.
  6. site.xmlファイルを修正して、レコード・ストアが実行されるホストの完全修飾名とポート、およびレコード・ストアのインスタンス名を指定するための3つの出力プロパティを含めるようにします。

    たとえば、次のスニペットではWebCrawlerOutputというインスタンス名が指定されており、レコード・ストアはデフォルトの設定でローカルで実行されるようになっています。

    <property>
       <name>output.recordStore.host</name>
       <value>hostname.endeca.com</value>
    </property>
    <property>
       <name>output.recordStore.port</name>
       <value>8510</value>
    </property>
    <property>
       <name>output.recordStore.instanceName</name>
       <value>WebCrawlerOutput</value>
    </property>
  7. site.xmlファイルに、recordstore-outputterプラグイン用のplugin.includesプロパティを追加します。このプラグインは、Web Crawlerに対してレコード・ストア・インスタンスに書き出すように指示します。

    次にその例を示します。

    <property>
       <name>plugin.includes</name>
       <value>lib-auth-http|auth-http-form-basic|protocol-httpclient|protocol-file|
    urlfilter-regex|parse-(text|html|js)|endeca-searchexport-converter-parser|
    urlnormalizer-(pass|regex|basic)|endeca-generator-html-basic|recordstore-outputter</value>
    </property>
  8. site.xmlファイルにoutput-endeca-recordプラグイン用のplugin.includesプロパティが存在する場合は、それを削除します。
  9. オプションで、site.xmlファイル内の出力ファイル設定を構成するためのプロパティを削除できます。それらのプロパティには、output.file.is-compressedoutput.file.is-xmloutput.file.nameoutput.file.directoryなどがあります。

    これらのプロパティを削除すると、構成ファイルは簡潔になりますが、recordstore-outputterプラグインを追加するとファイル出力のプロパティはオーバーライドされるため、これらの削除は必須ではありません。

  10. Webクロールを実行します。
Webクロールで出力がレコード・ストア・インスタンスに書き出されたことを確認するには、レコード・ストアのコマンドライン・ユーティリティのlist-generationsタスクを実行します。前述の例に対してこのコマンドを実行すると、WebCrawlerOutputインスタンスへのクロールの出力が次のように確認されます。
recordstore-cmd list-generations -a WebCrawlerOutput
ID      STATUS          CREATION TIME
1       COMPLETED       Tue Mar 03 17:40:22 EST 2009

Webクロールの出力がレコード・ストア・インスタンスに格納された後は、Integrator内で利用可能なRecord Store Readerコンポーネントを使用して出力を処理できます。詳細は、『Integrator ETLユーザーズ・ガイド』の、Record Store Readerコンポーネントの構成に関する項を参照してください。

注意: Web Crawlerは、レコード・ストア・インスタンスをWebクロール用として自動的に管理しません。レコード・ストア・インスタンスの管理の詳細は、Integrator Acquisition System開発者ガイドを参照してください。