Solr添加文檔(XML)

在上一章中,我們學習解釋了如何向Solr中添加JSON.CSV檔格式的數據。在本章中,將演示如何使用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 >

  • add − 這是用於將文檔添加到索引的根標記。它包含一個或多個要添加的文檔。
  • doc − 添加的文檔應該包含在<doc> </ doc>標記中。文檔包含字段形式的數據。
  • field − 字段標記包含文檔的字段的名稱和值。

準備好文檔後,可以使用上一章中討論的任何方法將此文檔添加到索引。

假設XML檔(sample.xml)存在於Solrbin目錄中,並且它將在名稱為my_core的核心中進行索引,那麼可以使用post工具將其添加到Solr索引中,如下所示 -

[zaixian@ubuntu:/usr/local/solr-6.4.0/bin]$ ./post -c my_core sample.xml

執行上述命令後,將得到以下輸出 -

zaixian@ubuntu:/usr/local/solr-6.4.0/bin$ ./post -c my_core sample.xml
/usr/local/jdk1.8.0_65/bin/java -classpath /usr/local/solr-6.4.0/dist/solr-core-6.4.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.756

驗證上面的操作

訪問Apache Solr Web介面的主頁並選擇核心my_core。嘗試通過在文本區域q中傳遞查詢“:”來檢索所有文檔,並執行查詢。執行時應該可以觀察到所需的數據被添加到Solr索引。


上一篇: Solr索引數據 下一篇: Solr更新文檔數據