Kostenloser Download der gesamten Diplomarbeit - dotSource
Kostenloser Download der gesamten Diplomarbeit - dotSource
Kostenloser Download der gesamten Diplomarbeit - dotSource
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
KAPITEL 4. FACT-FINDER UND SOLR 43<br />
Server zu übermitteln. Diese Methode ist die typische Herangehensweise für den Transport<br />
von Dokumenten, welche im XML-Format vorliegen. Schließlich wird die Übertragung <strong>der</strong><br />
zu indizierenden Daten über die Java-Schnittstelle von Solr unterstützt.<br />
Suchanfrage<br />
Die Suchanfragen <strong>der</strong> Nutzer werden als Parameter in <strong>der</strong> URL an den Solr Server kommuniziert.<br />
Intern wird <strong>der</strong> Suchbegriff durch den Parser in ein Query-Objekt überführt,<br />
welches anschließend für die Suche im Lucene-Index verwendet wird. Für die Übersetzung<br />
<strong>der</strong> im Abschnitt 4.2.4 beschriebenen arten von Anfragen werden in Solr zwei Parser bereitgestellt.<br />
Daneben gibt es eine Schnittstelle für die Integration eigener Parser, sodass<br />
die Definition eigener Anfragesyntax möglich ist.<br />
Import<br />
Für den Import von Suchergebnissen bietet Solr unterschiedliche Methoden an, die intern<br />
durchdenentsprechendenResponseWriter realisiertsind.Welcher ResponseWriter fürden<br />
Import von Suchergebnissen verwendet wird, kann parametrisiert in <strong>der</strong> URL übergeben<br />
o<strong>der</strong> in <strong>der</strong> Konfigurationsdatei des Solr-Kerns (vgl. Abschnitt 4.2.4) definiert werden.<br />
• XML<br />
Standardmäßig wird in Solr XML als das Format für den Import von Suchergebnissen<br />
verwendet. Der Einsatz von XML erfor<strong>der</strong>t die Verwendung von dem XMLResponseWriter.<br />
Über den XSLTResponseWriter kann Extensible Stylesheet Language<br />
Transformation (XSLT) verwendet werden, so dass die Ergebnisse formatiert beispielsweise<br />
als Really Simple Syndication (RSS)-Feed o<strong>der</strong> in an<strong>der</strong>en textbasierten<br />
Formaten wie z.B. HTML ausgegeben werden können.<br />
• JSON<br />
Um die Suchergebnisse des Solr Servers als JSON-Objekte zu importieren, kann <strong>der</strong><br />
JsonResponseWriter eingesetzt werden. Dieser bietet ebenfalls die Grundlage für die<br />
Ausgabeformatierung <strong>der</strong> Programmiersprachen Python und Ruby, welche in den<br />
Klassen PythonResponseWriter und RubyResponseWriter implementiert sind. Dazu<br />
werden bestimmte Notationen für die Python- und Ruby-Interpreter vorgenommen.<br />
Beispielsweise wird null aus <strong>der</strong> Notation von JSON zu None in Python- bzw. nil<br />
in Ruby-Notation umgewandelt.<br />
• PHP<br />
Die Notation <strong>der</strong> Skriptsprache PHP wird von Solr ebenfalls als eine Möglichkeit<br />
für den Import des Suchergebnisses unterstützt, welche in <strong>der</strong> Klasse PHPResponse-<br />
Writer von Lucene implementiert ist. Die Ausgabe wird als ein PHP-Array für den<br />
Import in die Applikation bereitgestellt.<br />
• Java<br />
Die Möglichkeit die Suchergebnisse in <strong>der</strong> Notation <strong>der</strong> Programmiersprache Java<br />
zu erhalten, wird durch den BinaryResponseWriter umgesetzt.<br />
4.2.4.3 Cluster-Unterstützung<br />
In <strong>der</strong> Abbildung 4.6 wurde aufgrund <strong>der</strong> vereinfachten Darstellung die Komponente für<br />
die Replikation des Solr Servers nicht dargestellt, welche denn Aufbau eines Clusters aus<br />
mehreren Solr Servern ermöglicht. Die Replikationskomponente bietet Mechanismen für