Letztes Feature-Release vor Version 6

Apache Lucene und Solr 5.5 veröffentlicht

Uwe Schindler

Das Apache Lucene Team hat heute Apache Lucene und Apache Solr in der Version 5.5 veröffentlicht. Die vorliegende Version ist das letzte Feature-Release bevor in Kürze Apache Lucene und Solr 6 herauskommen. Die kommende Version 6 wird mindestens Java 8 benötigen, es handelt sich mit dem aktuellen Release daher auch um das letzte, das mit Java 7 laufen wird.

Die Änderungen im Bereich von Apache Lucene, der unter Apache Solr und Elasticsearch liegenden Volltextsuch-Bibliothek, sind in dieser Version eher überschaubar, da alle gravierenden Neuerungen für die Version 6 zurückgehalten werden. Es gibt jedoch zahlreiche Bugfixes und Performance-Optimierungen, aber auch ein paar Neuerungen: Es ist neben den bekannten Scoring-Algorithmen TF-IDF, BM25 und einigen Divergence-Verfahren nun auch möglich, das Dokument-Ranking nach dem Divergence from Independence(DFI)-Verfahren durchzuführen. DFI bietet ein mathematisch recht einfach handhabbares Scoring, was kein Parameter-Tuning benötigt und zudem nicht von einer Normalisierung der Term Frequency (TF) abhängig ist. Hierbei ist jedoch zu beachten, dass für Indices, die dieses Ranking einsetzen sollen, Stopwords nicht entfernt werden sollten. Außerdem wurde die Performanz von boolschen Abfragen verbessert und das Erzeugen eines CustomAnalyzer für die Textanalyse typsicher gemacht. In Vorbereitung auf Java 9 wurde der Support für das Unmapping von memory-mapped ByteBuffers mit mehr Laufzeitchecks ausgestattet, sodass es zu keinen unvorhergesehenen Fehlern mehr kommen kann. Bei Verwendung mit neueren Early-Access-Builds von Java 9 wird das Unmapping nun auch korrekt deaktiviert. Voller Support für Java 9 wird erst mit Lucene Version 6 eingeführt.

Solr unterstützt komplexe Query-DSL

Apache Solr baut auf den Funktionen von Apache Lucene auf. In diesem Release sind zahlreiche neue Features hinzugekommen: Allen voran ist es nun möglich, dass die neuen spaltenorientierten DocValues-Felder, die bisher nur für Sortierung und Function-Queries eingesetzt wurden, auch als normale Suchergebnisfelder genau wie die sonst benutzten “Stored-Fields” zurückgegeben werden können. Dafür wurde die Solr-Schema-Version auf 1.6 erhöht.

Weiterhin hat der XML Queryparser von Lucene nun auch Einzug in Solr gefunden. Er ermöglicht es, komplexe Abfragen als XML-Struktur zu formulieren. Dies ist ein wichtiger Schritt, um – ähnlich wie Elasticsearch – eine komplexe Query-DSL zu erlauben. Da bleibt nur zu hoffen, dass spätere Solr-Versionen auch JSON-basierte Abfragen unterstützen! Anwender, die sehr komplexe Abfragen benötigten, konnten bisher nur auf Elasticsearch zurückgreifen, wo es schon von Anfang an möglich war. Die native Solr-Abfragesprache, der auf dem einfachen Lucene-Queryparser aufbaut, lässt sich für durch Programmcode generierte, komplexe Abfragen nur begrenzt einsetzen – da es schnell unlesbar wird.

Außerdem wuirde die Hadoop-Integration von Apache Solr dahingehend verbessert, dass CheckIndex-Operation auch mit Indexen durchgeführt werden können, die im HDFS abgelegt wurden.

Die Liste der Änderungen von Apache Lucene und Apache Solr sind auf der Projekt-Webseite zu finden.

Verwandte Themen:

Geschrieben von
Uwe Schindler
Uwe Schindler
Uwe Schindler ist Mitglied des Project Management Committee im Apache-Lucene-Projekt. Er ist mit seiner Consulting-Firma SD DataSolutions GmbH in Bremen ansässig und kümmert sich am Zentrum für Marine Umweltwissenschaften (MARUM) um die Suche nach geowissenschaftlichen Daten in der Umweltdatenbank PANGAEA.Blog: http://blog.thetaphi.deTwitter: @ThetaPh1
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: