Zum Inhalt springen

Apache Lucene

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 10. März 2026 um 14:55 Uhr durch imported>Pi.dalein (Meine eigene Änderung auf die WebArchiv-Verlinkung nachgebessert.).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Apache Lucene

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Programmier­sprache Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Kategorie Programmbibliothek
Lizenz Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
deutschsprachig ja
Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)

Apache Lucene ist eine Programmbibliothek zur Volltextsuche. Lucene ist freie Software und ein Projekt der Apache Software Foundation.

Lucene wird (erst direkt, seit 2014 via Elasticsearch) von der Wikipedia verwendet. Ein Beispiel für die Leistungsfähigkeit und Skalierbarkeit von Lucene liefert insbesondere Twitter.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Twitter Engineering: Twitter Search is Now 3x Faster.] Twitter, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 5. September 2015 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Geschichte

Lucene wurde von Doug Cutting<ref>Die englischsprachige Wikipedia hat einen Artikel über Doug Cutting</ref> entwickelt und war seit 1997 zunächst über SourceForge erhältlich.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Ten years of the Lucene search engine at Apache.] Heise, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Der Name Lucene ist der zweite Vorname von Doug Cuttings Ehefrau.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig LuceneFAQ.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

2001 wurde Lucene ein Teil des Jakarta-Projekts und 2005 ein Hauptprojekt der Apache Software Foundation. Aus dem Projekt Apache Lucene gehen gelegentlich separat weitergeführte Projekte hervor.

Im Juni 2021 wurde die Funktionalität der Indri(software) SearchEngine Lucene hinzugefügt, was das Ende des ursprünglichen Projekts bedeutet und den Nachfolger Lucindri hervorgebracht hat.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Lemur Project Components: Indri.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 12. Juli 2021 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Lucene Change Log.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 12. Juli 2021 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Add Indri Search Engine Functionality to Lucene.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 12. Juli 2021 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Lemur Project Components: Lucindri.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 12. Juli 2021 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig GitHub - lemurproject/Lucindri: Indri search implementation on top of Lucene search engine.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 12. Juli 2021 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden. Auf Lucene basierende Projekte

Lucene Core
Der Kern des Projekts Lucene, Lucene Core oder kurz Lucene, früher auch Lucene Java genannt, ist eine Programmbibliothek, die in der Programmiersprache Java verfasst ist. Lucene erstellt einerseits einen Index aus Dateien, der etwa ein Viertel des Volumens der indexierten Dateien hat.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Apache Lucene – Features.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Zum anderen liefert Lucene anschließend Suchergebnisse mit Rangliste, wofür mehrere Suchalgorithmen zur Verfügung stehen.
Lucene.Net
Lucene.Net ist eine Übersetzung von Lucene in die Programmiersprache C# mit Anpassung der Programmierschnittstelle an das .Net-Framework.
Lucy
Lucy ist eine Portierung von Lucene in die Programmiersprache C für Sprachanbindungen dynamischer Programmiersprachen wie Perl.
PyLucene
PyLucene ist eine Erweiterung von Python um einen Wrapper mit Java-Laufzeitumgebung für Lucene.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Welcome to PyLucene.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>
Droids
Droids ist ein Framework für Bots/Webcrawler. Das Droids Projekt wurde zum 1. November 2015 eingestellt.<ref>Apache Droids Incubation Status - Apache Incubator. In: incubator.apache.org. Abgerufen am 16. Dezember 2016.</ref>
Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden.Solr
Solr ist eine auf Lucene beruhende eigenständige Implementierung eines Suchservers.<ref>Apache Solr -. Abgerufen am 10. Oktober 2019.</ref> Solr wurde ursprünglich von CNET entwickelt und Solar genannt.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig FAQ – Solr Wiki.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Der Name war eine Abkürzung für Search on Lucene and Resin.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Interview with Ian Holsman of Relegence (AOL).] Lucidworks, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 31. August 2015 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Der Download von Solr umfasst als Beispiel eine Konfiguration mit Jetty. Solr enthält eine REST-ähnliche API.<ref>Apache Solr - Features. Abgerufen am 10. Oktober 2019 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Solr kommuniziert über das Hypertext Transfer Protocol. Mittels HTTP POST können verschiedenste Dateiformate von XML über JSON bis PDF erfasst und auch Dokumente erstellt werden.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Solr tutorial.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Abfragen erfolgen mittels HTTP GET.
Tika
Tika gehörte früher zum Projekt Lucene, wird von Solr genutzt und ist ein Parser. Er extrahiert Metadaten oder strukturierten Text aus einer Reihe von Dokumentformaten mittels spezialisierter (möglichst ohnehin existierender) Bibliotheken wie Apache PDFBox oder Apache POI, die einheitlich über Tika angesprochen werden und automatisch ausgewählt werden können.
Nutch
Nutch gehörte früher zum Projekt Lucene und basiert auf Solr.

Außerhalb des Projekts wurden weitere Derivate von Lucene erstellt.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig LuceneImplementations.] Apache Software Foundation, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 6. Januar 2012 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Funktionsweise

Lucene verwendet das Tf-idf-Maß und Vektorraum-Retrieval zur Bewertung von Suchtreffern.<ref>Lucene’s Practical Scoring Function. Elasticsearch: The Definitive Guide [2.x]. Elastic, abgerufen am 1. Januar 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>

Literatur

  • Manfred Hardt, Fabian Theis: Suchmaschinen entwickeln mit Apache Lucene. Entwickler.Press, 2004.
  • Erik Hatcher et al.: Lucene in Action. Manning, 2005 (über Lucene 1.4), 2nd ed. 2010 (über Lucene 3.0).
  • Florian Hopf: Flexible Suche mit Lucene. In: Java aktuell. Ausgabe 4-2013, S. 31 ff.

Weblinks

Einzelnachweise

<references responsive />

Vorlage:Hinweisbaustein