Lucene

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 15 april 2019; kontroller kräver 10 redigeringar .
Apache Lucene
Sorts sökning och programmering
Utvecklaren Apache Software Foundation
Skrivet i Java
Operativ system plattformsoberoende
Första upplagan 30 mars 2000
Hårdvaruplattform Java Virtual Machine
senaste versionen 9.2.0 [1] (23 maj 2022 ) ( 2022-05-23 )
Licens Apache-programvarulicens
Hemsida lucene.apache.org
 Mediafiler på Wikimedia Commons

Lucene  är ett gratis bibliotek för högpresterande fulltextsökning av Apache Foundation, som används som bas i två av de mest populära replikerade sökmotorerna i mitten av 2010-talet  - Elasticsearch och Solr . Skrivet i Java .

Utvecklad av Doug Cutting 1999, ursprungligen publicerad av författaren på SourceForge.net .  År 2001 överfördes det till Apache Foundation, där det ursprungligen utvecklades som en del av Jakarta -projektet och flyttades 2005 till status som ett projekt på toppnivå i stiftelsen. Som en del av toppnivåprojektet har Lucene gett upphov till ett antal delprojekt som har blivit självständiga, bland dem - Hadoop (initierat av Cutting och bildande av ett enormt ekosystem av produkter), Nutch och Solr (som anses vara en del av Hadoop-ekosystemet ). Dessutom används biblioteket som en intern mekanism i ett antal projekt, inklusive YaCy (decentraliserad sökmotor), CrateDB ( dokumentorienterad DBMS med SQL -stöd ), Swiftype (replikerad sökmotor för organisationer) , DocFetcher ( lokal sökmotor ).

Den huvudsakliga funktionella egenskapen hos biblioteket är att tillhandahålla skalbar och ganska höghastighetsindexering (cirka 100 GB per timme på en massklassserver). Det skapade indexet tar upp cirka 20-30 % av storleken på originaltexten.

Sökalgoritmen stöder rankad sökning (bästa resultaten visas först), suddig sökning , många olika typer av sökningar (frasfråga, sökningar med jokertecken , sökning efter intervaller och annat), sökning med metadatavärden (som titel , författare, text) ). Sökning stöds av flera index med möjlighet att kombinera resultat, sortering av sökresultat efter olika fält implementeras. Sökningen är möjlig samtidigt som indexuppdateringsprocessen. Bibliotekets logiska arkitektur representerar vilket dokument som helst som en uppsättning textfält, vilket gör att det kan fungera oavsett format , så snart textinformation kan erhållas från dem.

Porteras till många andra programmeringsspråk: C (Lucene4c), C++ (CLucene), Node.js , Go , Delphi (MUTIS), Perl (PLucene), Ruby (Ferret och RubyLucene), PHP (inom Zend- ramverket ), Lisp ( Montezuma), C# (Lucene.Net), Python (PyLucene).

Litteratur

Anteckningar

  1. Lucene Change Log .

Länkar