Apache 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文件存在于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索引中。