Apache Lucene

Apache Lucene

Apache Lucene logo.svg
Grunnleggende data

utvikler Apache Software Foundation
Gjeldende  versjon 8.7.0
( 3. november 2020 )
operativsystem Plattformuavhengig
programmeringsspråk Java
kategori Programbibliotek
Tillatelse Apache-lisens
Tysktalende Nei
lucene.apache.org

Apache Lucene er et programbibliotek for fulltekstsøk . Lucene er gratis programvare og et prosjekt fra Apache Software Foundation .

Lucene brukes av Wikipedia (bare direkte siden 2014 via Elasticsearch ) . Spesielt Twitter gir et eksempel på Lucenes ytelse og skalerbarhet .

historie

Lucene ble utviklet av Doug Cutting og var opprinnelig tilgjengelig via SourceForge siden 1997 . Navnet Lucene er mellomnavnet til kona til Doug Cutting.

I 2001 ble Lucene en del av Jakarta-prosjektet og i 2005 et stort prosjekt fra Apache Software Foundation. Apache Lucene-prosjektet gir noen ganger opphav til videreførte prosjekter.

I juni 2021 ble funksjonaliteten til Indri (programvaren) SearchEngine Lucene lagt til, noe som betyr slutten på det opprinnelige prosjektet og har produsert etterfølgeren Lucindri .

Prosjekter basert på Lucene

Lucene Core

Kjernen i prosjektet Lucene, Lucene Core eller kortfattet Lucene , tidligere også kalt Lucene Java , er et programbibliotek som er skrevet på Java- programmeringsspråket .
På den ene siden lager Lucene en indeks fra filer som er omtrent en fjerdedel av volumet av de indekserte filene. På den annen side leverer Lucene deretter søkeresultater med en rangeringsliste, som flere søkealgoritmer er tilgjengelige for.

Lucene.Net

Lucene.Net er en oversettelse av Lucene til programmeringsspråket C # med tilpasning av programmeringsgrensesnittet til .NET- plattformen.

Lucy

Lucy er en port fra Lucene til programmeringsspråket C for språkforbindelser til dynamiske programmeringsspråk som Perl .

PyLucene

PyLucene er en utvidelse av Python for å inkludere en wrapper med et Java runtime-miljø for Lucene.

Droids

Droids er et rammeverk for roboter / crawlere . Droids-prosjektet ble avviklet 1. november 2015.

Solr

Solr er en Lucene-basert frittstående implementering av en søkeserver. Solr ble opprinnelig utviklet av CNET og kalt Solar. Navnet var en forkortelse for Search on Lucene and Resin . Solr-nedlastingen inkluderer en konfigurasjon med Jetty som et eksempel . Solr inkluderer en REST-lignende API. Solr kommuniserer ved hjelp av Hypertext Transfer Protocol . Ved hjelp av HTTP POST kan et bredt utvalg av filformater fra XML til JSON til PDF tas opp og dokumenter kan også opprettes. Spørringer gjøres ved hjelp av HTTP GET.

Tika

Tidligere var Tika en del av Lucene-prosjektet, brukes av Solr og er en parser . Den trekker ut metadata eller strukturert tekst fra en rekke dokumentformater ved hjelp av spesialiserte (om mulig eksisterende) biblioteker som Apache PDFBox eller Apache POI , som adresseres jevnt over Tika og kan velges automatisk.

Nutch

Nutch pleide å være en del av Lucene-prosjektet og er basert på Solr .

Andre Lucene-derivater ble opprettet utenfor prosjektet.

funksjonalitet

Lucene bruker Tf-idf-måling og henting av vektorrom for å evaluere søketreff.

litteratur

  • Manfred Hardt, Fabian Theis: Utvikling av søkemotorer med Apache Lucene. Utvikler. Press, 2004.
  • Erik Hatcher et al.: Lucene in Action. Manning, 2005 (om Lucene 1.4), 2. utgave 2010 (om Lucene 3.0).
  • Florian Hopf: Fleksibelt søk med Lucene. I: Java aktuell. Utgave 4-2013, s. 31 ff.

weblenker

Individuelle bevis

  1. LuceneTM Core News . (åpnet 3. desember 2020).
  2. Twitter Engineering: Twitter-søk er nå 3x raskere . Twitter. 6. april 2011. Hentet 5. september 2015.
  3. ^ Ti år med Lucene-søkemotoren i Apache . Varmt. 27. september 2011. Hentet 6. januar 2012.
  4. LuceneFAQ . Apache Software Foundation. Hentet 6. januar 2012.
  5. ^ Lemurprosjektkomponenter: Indri . Hentet 12. juli 2021.
  6. Lucene Endringslogg . Hentet 12. juli 2021.
  7. ^ Legg til Indri-søkemotorfunksjonalitet til Lucene . Hentet 12. juli 2021.
  8. Lemur-prosjektkomponenter: Lucindri . Hentet 12. juli 2021.
  9. GitHub - lemurproject / Lucindri: Implementering av Indri-søk på toppen av Lucene-søkemotoren . Hentet 12. juli 2021.
  10. Apache Lucene-funksjoner . Apache Software Foundation. Hentet 6. januar 2012.
  11. Velkommen til PyLucene . Apache Software Foundation. Hentet 6. januar 2012.
  12. Apache Droids Inkubation Status - Apache Incubator. I: incubator.apache.org. Hentet 16. desember 2016 .
  13. Ache Apache Solr -. Hentet 10. oktober 2019 .
  14. FAQ - Solr Wiki . Apache Software Foundation. Hentet 6. januar 2012.
  15. Intervju med Ian Holsman of Relegence (AOL) . Lucidworks. Hentet 31. august 2015.
  16. Apache Solr-funksjoner. Hentet 10. oktober 2019 .
  17. Solr-opplæring . Apache Software Foundation. Hentet 6. januar 2012.
  18. Lucene Implementasjoner . Apache Software Foundation. Hentet 6. januar 2012.
  19. Lucenes praktiske poengsumfunksjon. Elasticsearch: The Definitive Guide [2.x]. Elastisk, åpnet 1. januar 2020 (amerikansk engelsk).