Ich habe Schwierigkeiten, eine grundlegende Verbindung zwischen PostgreSQL (primäre Datenquelle) und Solr zu bekommen. Es gibt eine Reihe von Posts, denen ich versucht habe zu folgen. Hier ist, was ich getan habe (in Linux), zu versuchen, das Dih Beispiel zu meinen Bedürfnissen mit dem Data Import Handler zu ändern.Solr PostgreSQL Grundkonfiguration
von https://jdbc.postgresql.org/download.html Ich lade postgresql-9.4.1212.jre6.jar und legen Sie es in solr-6.4.0/dist.
ich bearbeiten Sie die solrconfig.xml bei solr-6.4.0/example/example-DIH/Solr/Solr/conf in den lib enthalten Bereich wie folgt:
<lib dir="${solr.install.dir:../../../..}/dist/" regex="postgresql-.*\.jar" />
und im Anforderungsbereich wie folgt :
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">solr-data-config.xml</str>
</lst>
I bearbeiten solr-data-config.xml auch in solr-6.4.0/example/example-DIH/Solr/Solr/conf auf die folgenden:
Beachten Sie die db-Verbindung, die ich in Posts verwirrend gefunden habe, aber ich glaube, wie ich es richtig aufgenommen habe, wobei mydatabase der Name der PostgreSQL-Datenbank ist. Ich starte dann Solr über bin/solr -e dih. Dies funktioniert und der Server zugänglich http://localhost:8983/solr
Allerdings, wenn ich versuche, Daten zu ziehen über http://localhost:8983/solr/#/collection1/dataimport//dataimport ich den Fehler
Sorry, no dataimport-handler defined!
Und mein Datenschema:
<?xml version="1.0" encoding="UTF-8" ?>
<schema name="example-DIH-solr" version="1.6">
<types>
<fieldType name="string" class="solr.TextField">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
</analyzer>
</fieldType>
</types>
<fields>
<field name="first_name" type="string" indexed="true" stored="true"/>
<field name="_version_" type="string" indexed="true" stored="true"/>
</fields>
<uniqueKey>first_name</uniqueKey>
</schema>
Danke für jede Hilfe Sie können liefern.
Dies war das genaue Problem, und damit ist die Frage beantwortet, danke. Ich bin immer noch nicht in der Lage, eine Verbindung zu PostgreSQL zu erreichen, aber ich sehe jetzt eine XML-Ausgabe mit 1 Zeile abgefragt 0 Ergebnisse. Ich habe den Query-String localhost versucht: 8983/solr/solr/dataimport? Command = full-import & entity = user. Jede zusätzliche Hilfe würde sehr geschätzt werden, ich könnte am Ende einen separaten Beitrag mit der jetzt anderen Frage machen. – edencorbin