Apache Solr 添加文档 (XML)
在上一章中,我们解释了如何将 JSON 和 .CSV 文件格式的数据添加到 Solr。在本章中,我们将演示如何使用 XML 文档格式在 Apache Solr 索引中添加数据。
样本数据
假设我们需要使用 XML 文件格式将以下数据添加到 Solr 索引中。
学生卡 | 名 | 姓 | Phone | City |
---|---|---|---|---|
001 | Rajiv | Reddy | 9848022337 | 海得拉巴 |
002 | 悉达多 | 巴塔查里亚 | 9848022338 | Kolkata |
003 | Rajesh | Khanna | 9848022339 | Delhi |
004 | Preethi | Agarwal | 9848022330 | Pune |
005 | Trupthi | Mohanty | 9848022336 | 布巴内斯瓦尔 |
006 | Archana | Mishra | 9848022335 | Chennai |
使用 XML 添加文档
要将上述数据添加到 Solr 索引中,我们需要准备一个 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 : 这是添加文档到索引的根标签。它包含一个或多个要添加的文档。
-
doc :我们添加的文档应该用
标签包裹起来。该文档包含字段形式的数据。 -
field : field 标签保存了文档的字段的名称和值。
准备好文档后,你可以使用上一章中讨论的任何方法将此文档添加到索引中。
假设 XML 文件存在于 bin Solr 的目录,它将被索引在名为的核心中 my_core ,然后你可以使用 post 工具如下:
[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 索引中。