Blog der SHI GmbH

Apache Solr 6.3 – now available

Seit dem 08. November ist Apache Solr in der Version 6.3 erhältlich. Neben diversen Fehlerkorrekturen und Optimierungen haben auch einige neue Features ihren Weg in die Suchmaschine gefunden. Nach initialen Tests zu den neuen Funktionalitäten soll im Folgenden Feedback zu

  • dem neuen ResponseWriter für xlsx-Formate
  • der neuen Facetten-Funktionalität facet.exists=true und
  • der erweiterten SQL-Query-Syntax

gegeben werden.

xlsx-ResponseWriter

Die Möglichkeit, Solr-Antworten in Excel-Tabellen anzuzeigen war schon vor dem neuen Release vorhanden. Allerdings war zu diesem Zweck der Umweg über den csv-ResponseWriter notwendig. Mit dem neuen xlsx-ResponseWriter gehören diese Umstände der Vergangenheit an. Um das Excel-Antwort-Format nutzen zu können, sind lediglich zwei kleine Anpassungen für die Bibliothekspfade vorzunehmen, wie im Solr Reference Guide beschrieben:

cp contrib/extraction/lib/*.jar server/solr-webapp/webapp/WEB-INF/lib/
cp dist/solr-cell-6.3.0.jar server/solr-webapp/webapp/WEB-INF/lib/

Danach kann der xlsx-ResponseWriter über Angabe des Parameters wt=xlsx verwendet werden. Die Belegung des rows-Parameters entscheidet dabei über die Anzahl an Zeilen, die in den Output übernommen werden. So finden sich mit den Standard-Einstellungen (rows=10) lediglich die ersten zehn Dokumente der Solr-Antwort in der Excel-Arbeitsmappe wieder.

Abfrage von Facettenwerten

Die Angabe einer Facette generiert die jeweiligen Facettenwerte stets mit der zugehörigen Anzahl an Dokumenten, welche dem Wert zugeordnet werden können. Für manche Anwendungsfälle mag die Anzahl an Dokumenten jedoch uninteressant sein und es ist lediglich wichtig, ob ein bestimmter Facettenwert in den Antwort-Dokumenten vorkommt oder nicht. Das unnötig verzögernde Berechnen der Menge passender Dokumente kann ab Solr 6.3 über einfaches Angeben des zusätzlichen Parameters facet.exists=true verhindert werden. Als Ergebnis wird für vorhandene Facettenwerte eine 1 eingetragen.

Erweiterte SQL-Syntax

Die SQL-Fähigkeit von Solr 6 wurde bereits in einem früheren Blogbeitrag ausführlich beschrieben. Die Verwendung von SELECT-Statements für die Suche mit Apache Solr folgt dabei den SQL-eigenen Syntaxregeln. Ab Solr 6.3 sind nun auch Sonderzeichen wie <, <=, > und >= mit ihrer üblichen Bedeutung anwendbar. Damit können nun Abfragen wie

SELECT price from techproducts WHERE price<=100.0

an den sql-RequestHandler gesendet werden.

Weitere Neuerungen

Zu den genannten Erweiterungen verspricht die neue Solr-Version die Möglichkeit zum Hinzufügen eigener Streaming Expressions sowie die neuen Expressions fetch, executor und commit, die Verwendung von AI-Modellen, MoreLikeThis-Unterstützung für SolrJ, Erweiterung des DELETEREPLICA-Kommandos, Verbesserungen des Loggings, höhere Timeout-Grenzen und vieles mehr. Wie gewohnt kann hier eine vollständige Liste der Neuerungen eingesehen und die neue Solr-Version 6.3.0 heruntergeladen werden.

Happy Searching!

Patricia Kraft, Bereichsleitung Search & Analytics

Patricia Kraft

..., studierte Informatik und Multimedia an der Universität Augsburg. Nach dem Erreichen des Masters in diesem Fach stieg sie unmittelbar in die Suchbranche ein und begann 2015 ihre Karriere bei der SHI als Consultant für Search & Big Data. Durch das heterogene Arbeiten an Projekten – sowohl in der Beratung als auch in der Konzeption und Implementierung – erlangte sie einen umfassenden Überblick über viele verschiedene Einsatzmöglichkeiten von Such- und Analysewerkzeugen. Für den SHI-Blog teilt sie ihre Erfahrung aus zahlreichen Projekten in unterschiedlichen Branchen sowohl aus technischer als auch als aus unternehmerischer Sicht. Lieblingsdateiformat: JSON