2017-10-16 5 views
1

Ich hoffe, Solr zu verwenden, um Suchen von Informationen zu analysieren, die von den XML-Akten geparst werden. Diese XML-Dateien sind nicht im Solr-Dokumentformat, daher muss ich sie analysieren und die Felder, die ich brauche, bekommen.Apache Solr, SolrJ vs Datenimport-Handler für das Parsen von XML

Ich bin vertraut mit Java-Programmierung und fragte mich, ob SolrJ eine einfachere Methode als die Verwendung des Data Import Handler wäre. Ich überlege mir, jede XML-Datei durchzugehen und die benötigten Felder zu analysieren. Gibt es einen Nachteil gegenüber einer Methode gegenüber der anderen? Ich stelle mir vor, da ich mit Java vertraut bin, kann es einfacher sein, das XML auf diese Weise zu parsen?

Ich werde wahrscheinlich mehrere Bedingungen und reguläre Ausdrücke benötigen. Wenn überhaupt, eine zuverlässige Möglichkeit, meine Felder aus relativ unstrukturiertem XML zu erhalten.

Wie würde SolrJ mit der Schnittstelle arbeiten? Das heißt, wenn ich mit SolrJ indexiere, kann ich meine Abfragen über die Schnittstelle noch machen?

Antwort

1

Wie Sie Ihren Inhalt in Solr indexieren, hängt davon ab, wie Sie ihn abfragen. Sie können beliebig indizieren, solange die richtigen Dokumente im Index erstellt werden.

Nun, in Bezug auf die Indizierung, wenn DIH bekommen wird, was Sie brauchen, ohne viel zu tun, gehen Sie dafür. Aber wenn Sie viele Änderungen an den Daten vornehmen müssen, können Sie am Ende schneller fertig werden, wenn Sie nur ein wenig Java mit Solr schreiben. Mit Solr haben Sie alle Flexibilität, mit DIH sind Sie eingeschränkter (denken Sie an die 80/20-Regel).

+0

Und DIH ist wahrscheinlich schneller als jedes Dokument mit SorlJ hinzufügen –

3

DIH wurde für das Prototyping entwickelt, obwohl einige Leute es für die Produktion verwenden. Sie können damit beginnen, aber bereit sein, zu SolrJ oder anderen Methoden zu springen, wenn Sie an seine Grenzen stoßen. Und wenn Sie sehr komplexe Zuordnungen haben, können Sie mit SolrJ besser anfangen.

Sie können auch apply XSLT transform on an incoming XML document zu dem Solr-Format zuordnen.

Und wie an anderer Stelle gesagt, ist die Suche ein separates Problem von der Indizierung.