Enterprise Search: Kleine Welt – Apache Lucene und Solr 9.0 suchen mehrsprachig

Das Major Release glänzt mit Kenntnissen in Serbisch, Nepali, Japanisch, Hindi, Jiddisch sowie Norwegisch und verwendet den Small-World-Graph-Algorithmus.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen

(Bild: Anterovium/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Silke Hahn
Inhaltsverzeichnis

Die Apache-Projekte Solr und Lucene sind in Version 9.0 erschienen. Der Enterprise-Suchserver Solr wartet diesmal mit Plug-ins zum Platzieren von Replica auf, beschränkt Suchraten und bietet ein neues SQL-Suchinterface im UI. Das neue Major Release der als besonders leistungsstark geltenden, vollständig in Java geschriebenen Suchmaschinenbibliothek Apache Lucene beschert eine Reihe größerer Features. Die Technologie der Suchmaschine eignet sich für fast jegliche Anwendung, die eine strukturierte Suche, Volltextsuche, Facettierung, aber auch Rechtschreibkorrektur oder Abfragevorschläge erfordert.

Das Major Release von Apache Lucene unterstützt die Indizierung hochdimensionaler numerischer Vektoren für die Suche nach benachbarten Knotenpunkten (Nearest Neighbor Search). Lucene bedient sich dabei eines Algorithmus für ein hierarchisch navigierbares Kleine-Welt-Netzwerk (Small World Graph), einem aus der Mathematik bekannten Modell. Darin sind die Nachbarn eines Knotens wahrscheinlich Nachbarn anderer Knoten (Nodes), und die meisten Knoten sind wiederum von jeglichen anderen Nodes in wenigen Schritten erreichbar.

Das Milestone-Release erweitert Lucenes Sprachkompetenz, indem es die Bibliothek um Analyzer für Serbisch, Nepali und Tamil ergänzt. Es bietet nun Vorschläge für Suchanfragen auf Japanisch und umfasst Stemmer für unter anderem Hindi, Indonesisch und Jiddisch. Eine neue Normalisierung mit Stemming für Schwedisch und Norwegisch rundet die Sprachfeatures ab. Auch an der Performance hat das Lucene-Team geschraubt, so soll die Facettierung der Taxonomie um 400 Prozent schneller vonstatten gehen und auch das Indizieren mehrdimensionaler Punkte hat laut Blogeintrag der Apache-Entwickler Fahrt aufgenommen.

Das schnellere Sortieren von Feldern, die mit Punkten indiziert sind, ist ab jetzt Standard mit einer Opt-out-Möglichkeit. Wer schon länger mit Lucene arbeitet, dem ist die Option wohl vertraut: In den höheren 8.x-Versionen war das mehrfach beschleunigte Sortieren bereits möglich, damals noch als Opt-in. Der ConcurrentMergeScheduler geht nun von einer schnellen Eingabe/Ausgabe (I/O) aus, was laut Herausgebern den Indizierungsfluss verbessern sollte. Um Platz zu sparen, hat das Lucene-Team bei den Buchungslisten (Postings lists) vom Modus FOR-delta auf PFOR-delta umgestellt.

Lucene 9.0 nutzt keine geteilten Pakete mehr, was das Umbenennen einiger Pakete (außerhalb des lucene-core JAR) notwendig macht und Anpassungen an den Importen erfordert. Noch im experimentellen Stadium befindet sich ein Modulsystem, das in den kommenden 9.x-Releases ausreifen soll.

Vertiefende Hinweise zu Apache Lucene lassen sich dem Blogeintrag zum Major Release 9.0 entnehmen. Was die Änderungen am Suchserver Solr betrifft, steht der finale Blogeintrag noch aus. Das Changelog und eine Auflistung der geänderten Parameter sind bereits greifbar mit ergänzenden Anmerkungen vom Solr-Team. Wer möchte, kann sich bereits in die Raw Notes vertiefen.

(sih)