Apache Solr - Adicionando Documentos (XML)

No capítulo anterior, explicamos como adicionar dados ao Solr, que está nos formatos de arquivo JSON e .CSV. Neste capítulo, demonstraremos como adicionar dados no índice Apache Solr usando o formato de documento XML.

Dados de amostra

Suponha que precisamos adicionar os seguintes dados ao índice do Solr usando o formato de arquivo XML.

Identidade estudantil Primeiro nome Último nome telefone Cidade
001 Rajiv Reddy 9848022337 Hyderabad
002 Siddharth Bhattacharya 9848022338 Calcutá
003 Rajesh Khanna 9848022339 Délhi
004 Preethi Agarwal 9848022330 Pune
005 Trupthi Mohanty 9848022336 Bhubaneshwar
006 Archana Mishra 9848022335 Chennai

Adicionar documentos usando XML

Para adicionar os dados acima ao índice Solr, precisamos preparar um documento XML, conforme mostrado abaixo. Salve este documento em um arquivo com o nomesample.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>

Como você pode observar, o arquivo XML escrito para adicionar dados ao índice contém três marcas importantes, a saber, <add> </add>, <doc> </doc> e <field> </ field>.

  • add- Esta é a marca raiz para adicionar documentos ao índice. Ele contém um ou mais documentos que devem ser adicionados.

  • doc- Os documentos que adicionamos devem ser incluídos nas tags <doc> </doc>. Este documento contém os dados na forma de campos.

  • field - A tag de campo contém o nome e o valor dos campos do documento.

Depois de preparar o documento, você pode adicioná-lo ao índice usando qualquer um dos meios discutidos no capítulo anterior.

Suponha que o arquivo XML exista no bin diretório do Solr e deve ser indexado no núcleo denominado my_core, então você pode adicioná-lo ao índice do Solr usando o post ferramenta da seguinte forma -

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

Ao executar o comando acima, você obterá a seguinte saída.

/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

Verificação

Visite a página inicial da interface da web do Apache Solr e selecione o núcleo my_core. Tente recuperar todos os documentos passando a consulta “:” na área de textoqe execute a consulta. Ao executar, você pode observar que os dados desejados são adicionados ao índice do Solr.