Solr Post Tool

18 Jun 2017

Indexierung von Dokumenten

Solr bringt ein einfaches und nützliches Werkzeug zur Indexierung von Dokumenten mit: das Simple Post Tool. Es kann über ein Shell-Script gestartet werden, das sich unter bin/post findet. Die Implementierung des Tools steckt in der Java-Klasse org.apache.solr.util.SimplePostTool. Es werden eine Reihe von Funktionen unterstützt, u.a.

Die einfachste Art der Indexierung eines Dokuments besteht in der Übergabe des Dokuments auf der Kommandozeile. Hier ein Beispiel für die Indexierung eines Dokuments, das aus nur einem Feld (mit dem Namen id) besteht:

bin/post -c mycoll -p 8984 -type text/csv -out yes -d $'id\n1'

Der Statuscode 0 in der XML-Rückgabe zeigt an, dass das Dokument erfolgreich in den Index geschrieben wurde. Standardmäßig wird nach der Indexierung des übergebenen Dokuments ein Commit ausgeführt. Ist das nicht gewünscht (weil ein größerer Transaktionskontext verwendet werden soll), so kann dies erreicht werden mittels:

bin/post -c mycoll -p 7475 -type text/csv -out yes -commit no -d $'id\n2'

In diesem Fall muss am Ende der Transaktion ein explizites Commit abgesetzt werden, z.B. mittels

bin/post -c mycoll -p 7574 -type application/xml -out yes -d $'<commit/>'

Ebenso kann ein Rollback ausgeführt werden:

bin/post -c mycoll -p 7574 -type application/xml -out yes -d $'<rollback/>'

Auch ein Index-Optimize kann auf der Kommandozeile mit dem Tool gestartet werden:

bin/post -c mycoll -p 7574 -type application/xml -out yes -d $'<optimize/>'

Löschen von Dokumenten aus dem Index