Apache Solr - dodawanie dokumentów (XML)
W poprzednim rozdziale wyjaśniliśmy, jak dodawać dane do Solr, które są w plikach JSON i .CSV. W tym rozdziale pokażemy, jak dodać dane do indeksu Apache Solr przy użyciu formatu dokumentu XML.
Przykładowe dane
Załóżmy, że musimy dodać następujące dane do indeksu Solr przy użyciu formatu pliku XML.
legitymacja studencka | Imię | Nazwisko | Telefon | Miasto |
---|---|---|---|---|
001 | Rajiv | Reddy | 9848022337 | Hyderabad |
002 | Siddharth | Bhattacharya | 9848022338 | Kalkuta |
003 | Rajesh | Khanna | 9848022339 | Delhi |
004 | Preethi | Agarwal | 9848022330 | Pune |
005 | Trupthi | Mohanty | 9848022336 | Bhubaneshwar |
006 | Archana | Mishra | 9848022335 | Chennai |
Dodawanie dokumentów za pomocą XML
Aby dodać powyższe dane do indeksu Solr, musimy przygotować dokument XML, jak pokazano poniżej. Zapisz ten dokument w pliku o nazwiesample.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>
Jak można zauważyć, plik XML napisany w celu dodania danych do indeksu zawiera trzy ważne tagi, a mianowicie <add> </add>, <doc> </doc> i <field> </ field>.
add- To jest główny znacznik służący do dodawania dokumentów do indeksu. Zawiera jeden lub więcej dokumentów, które mają zostać dodane.
doc- Dodawane przez nas dokumenty powinny być opakowane w znaczniki <doc> </doc>. Ten dokument zawiera dane w postaci pól.
field - Znacznik pola zawiera nazwę i wartość pól dokumentu.
Po przygotowaniu dokumentu możesz dodać ten dokument do indeksu przy użyciu dowolnego ze środków omówionych w poprzednim rozdziale.
Załóżmy, że plik XML istnieje w bin katalogu Solr i ma być zindeksowany w rdzeniu o nazwie my_core, następnie możesz dodać go do indeksu Solr za pomocą post narzędzie w następujący sposób -
[Hadoop@localhost bin]$ ./post -c my_core sample.xml
Po wykonaniu powyższego polecenia otrzymasz następujące dane wyjściowe.
/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
Weryfikacja
Odwiedź stronę główną interfejsu internetowego Apache Solr i wybierz rdzeń my_core. Spróbuj pobrać wszystkie dokumenty, przekazując zapytanie „:” w polu tekstowymqi wykonaj zapytanie. Podczas wykonywania można zauważyć, że żądane dane są dodawane do indeksu Solr.