Apache Solr - 添加文档(XML)

在上一章中,我们解释了如何将数据添加到Solr中,该数据采用JSON和.CSV文件格式.在本章中,我们将演示如何使用XML文档格式在Apache Solr索引中添加数据.

示例数据

假设我们需要添加使用XML文件格式将数据跟踪到Solr索引.

Student IDFirst NameLast NamePhoneCity
001RajivReddy9848022337Hyderabad
002SiddharthBhattacharya9848022338Kolkata
003RajeshKhanna9848022339Delhi
004PreethiAgarwal9848022330Pune
005TrupthiMohanty9848022336Bhubaneshwar
006ArchanaMishra9848022335Chennai

使用XML添加文档

要将上述数据添加到Solr索引中,我们需要准备一个XML文档,如下所示.将此文档保存在名为 sample.xml 的文件中.使用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>.

  • add : 这是将文档添加到索引的根标记.它包含一个或多个要添加的文档.

  • 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