Apache-solr-adding-documents-xml

提供:Dev Guides
移動先:案内検索

Apache Solr-ドキュメントの追加(XML)

前の章では、JSONおよび.CSVファイル形式のSolrにデータを追加する方法について説明しました。 この章では、XMLドキュメント形式を使用してApache Solrインデックスにデータを追加する方法を示します。

サンプルデータ

XMLファイル形式を使用して次のデータをSolrインデックスに追加する必要があるとします。

Student ID First Name Last Name Phone City
001 Rajiv Reddy 9848022337 Hyderabad
002 Siddharth Bhattacharya 9848022338 Kolkata
003 Rajesh Khanna 9848022339 Delhi
004 Preethi Agarwal 9848022330 Pune
005 Trupthi Mohanty 9848022336 Bhubaneshwar
006 Archana Mishra 9848022335 Chennai

XMLを使用したドキュメントの追加

上記のデータをSolrインデックスに追加するには、以下に示すようにXMLドキュメントを準備する必要があります。 このドキュメントを sample.xml という名前のファイルに保存します。

<add>
   <doc>
      <field name = "id">001</field>
      <field name = "first name">Rajiv</field>
      <field name = "last name">Reddy</field>
      <field name = "phone">9848022337</field>
      <field name = "city">Hyderabad</field>
   </doc>
   <doc>
      <field name = "id">002</field>
      <field name = "first name">Siddarth</field>
      <field name = "last name">Battacharya</field>
      <field name = "phone">9848022338</field>
      <field name = "city">Kolkata</field>
   </doc>
   <doc>
      <field name = "id">003</field>
      <field name = "first name">Rajesh</field>
      <field name = "last name">Khanna</field>
      <field name = "phone">9848022339</field>
      <field name = "city">Delhi</field>
   </doc>
   <doc>
      <field name = "id">004</field>
      <field name = "first name">Preethi</field>
      <field name = "last name">Agarwal</field>
      <field name = "phone">9848022330</field>
      <field name = "city">Pune</field>
   </doc>
   <doc>
      <field name = "id">005</field>
      <field name = "first name">Trupthi</field>
      <field name = "last name">Mohanthy</field>
      <field name = "phone">9848022336</field>
      <field name = "city">Bhuwaeshwar</field>
   </doc>
   <doc>
      <field name = "id">006</field>
      <field name = "first name">Archana</field>
      <field name = "last name">Mishra</field>
      <field name = "phone">9848022335</field>
      <field name = "city">Chennai</field>
   </doc>
</add>

ご覧のとおり、データをインデックスに追加するために記述されたXMLファイルには、<add> </add>、<doc> </doc>、および<field> </field>という3つの重要なタグが含まれています。

  • 追加-これは、ドキュメントをインデックスに追加するためのルートタグです。 追加される1つ以上のドキュメントが含まれています。
  • doc -追加するドキュメントは、<doc> </doc>タグで囲む必要があります。 このドキュメントには、フィールドの形式でデータが含まれています。
  • フィールド-フィールドタグは、ドキュメントのフィールドの名前と値を保持します。

ドキュメントを準備した後、前の章で説明した方法のいずれかを使用して、このドキュメントをインデックスに追加できます。

XMLファイルがSolrの bin ディレクトリに存在し、 my_core という名前のコアでインデックス付けされると仮定し、次のように post ツールを使用してSolrインデックスに追加できます-

[Hadoop@localhost bin]$ ./post -c my_core sample.xml

上記のコマンドを実行すると、次の出力が得られます。

/home/Hadoop/java/bin/java -classpath/home/Hadoop/Solr/dist/Solr-
core6.2.0.jar -Dauto = yes -Dc = my_core -Ddata = files
org.apache.Solr.util.SimplePostTool sample.xml
SimplePostTool version 5.0.0
Posting files to [base] url http://localhost:8983/Solr/my_core/update...
Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,
xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
POSTing file sample.xml (application/xml) to [base]
1 files indexed.
COMMITting Solr index changes to http://localhost:8983/Solr/my_core/update...
Time spent: 0:00:00.201

検証

Apache Solr Webインターフェースのホームページにアクセスして、コア my_core を選択します。 テキスト領域 q にクエリ「:」を渡してすべてのドキュメントを取得し、クエリを実行してください。 実行すると、目的のデータがSolrインデックスに追加されていることがわかります。

Solr Index