Apache Lucene är lämplig för alla program som kräver stöd för fulltextsökning, samtidigt hålla server resursförbrukning ner och producera snabba och hög noggrannhet resultat.
Lucene anses allmänt som en av de bästa sökmotorerna runt, är kärnan i många andra sökverktyg, den mest kända är Apache Solr .
Lucene är skriven helt i Java och sedan släpps av Apache Foundation, har det portats till många andra språk och olika bindningar och omslag existera som tredje part utvecklat programvara.
Vad är nytt i den här versionen:
- Alla filåtkomst använder nu Javas NIO.2 API: er som ger Lucene starkare index säkerheten i form av bättre felhantering och säkrare åtar.
- Varje Lucene segment lagrar nu ett unikt ID per-segmentet och per-åta sig att underlätta korrekt replikering av indexfiler.
- Under sammanslagning, IndexWriter nu alltid kontrollerar inkommande segment för korruption innan sammanslagning. Detta kan innebära, på att uppgradera till 5.0.0, kan det sammanslagning avslöja långvariga latent korruption i en äldre 4.x index.
Vad är nytt i version 5.2.1 / 4.10.4 / 3.6.2:
- Alla fil tillgång använder nu Javas NIO.2 API: er som ger Lucene starkare index säkerheten i form av bättre felhantering och säkrare åtar.
- Varje Lucene segment lagrar nu ett unikt ID per-segmentet och per-åta sig att underlätta korrekt replikering av indexfiler.
- Under sammanslagning, IndexWriter nu alltid kontrollerar inkommande segment för korruption innan sammanslagning. Detta kan innebära, på att uppgradera till 5.0.0, kan det sammanslagning avslöja långvariga latent korruption i en äldre 4.x index.
Vad är nytt i version 5.1.0 / 4.10.4 / 3.6.2:
- Alla fil tillgång använder nu Javas NIO.2 API: er som ger Lucene starkare index säkerheten i form av bättre felhantering och säkrare åtar.
- Varje Lucene segment lagrar nu ett unikt ID per-segmentet och per-åta sig att underlätta korrekt replikering av indexfiler.
- Under sammanslagning, IndexWriter nu alltid kontrollerar inkommande segment för korruption innan sammanslagning. Detta kan innebära, på att uppgradera till 5.0.0, kan det sammanslagning avslöja långvariga latent korruption i en äldre 4.x index.
Vad är nytt i version 5.0.0 / 4.10.3 / 3.6.2:
- Nya villkor .getMin / Max metoder för att hämta de lägsta och högsta termer per fält.
- New IDVersionPostingsFormat, optimerad för ID uppslagningar som associerar en monotont ökande version per ID.
- Atomic uppdatering av en uppsättning doc värden fält.
- Ett flertal optimeringar för doc värden search-time prestanda.
- Ny (standard) Lucene49NormsFormat att bättre komprimera vissa fall som mycket korta fält.
- New SORTED_NUMERIC docvalues typ för effektiv bearbetning av flervärda numeriska fält.
- Indexer passerar tidigare token ström för enklare återanvändning.
- MoreLikeThis accepterar flera värden per fält.
- Alla klasser som uppskattar deras RAM-användning nu genomföra en ny Accountable gränssnitt.
- Lucene filer nu skriven av (File) Output på alla plattformar, helt underkänna söker med förenklade IO API: er.
- Förbättra förvirrande felmeddelande när MMapDirectory inte kan skapa en ny karta.
Vad är nytt i version 4.8.0:
- Lucene har en ny Rescorer / QueryRescorer API för att utföra andra pass rescoring eller reranking sökresultat med dyrare poäng funktioner efter första pass hit samling.
- AnalyzingInfixSuggester stöder nu nästan i realtid automatiska förslag.
- Förenklade stöt sorteras inlägg (med hjälp av SortingMergePolicy och EarlyTerminatingCollector) att använda Lucene s Sortera klass för att uttrycka sorteringsordning.
- Bulk scoring och normal iterator baserade poäng separerades, så vissa frågor kan göra bulk poäng mer effektivt.
- Bytte till MurmurHash3 att hash villkor under indexering.
- IndexWriter stöder nu uppdatering av binära fält doc värde.
- HunspellStemFilter använder nu 10 till 100x mindre RAM. Den laddar också alla kända Openoffice ordböcker utan fel.
- Lucene nu också fsyncs katalog metadata om åtar om operativsystem och filsystem tillåter det (Linux, MacOSX är kända för att arbeta).
- Lucene använder nu Java 7 filsystemsfunktioner under huven, så indexfiler kan raderas på Windows, även när läsarna är fortfarande öppna.
- En allvarlig bugg i NativeFSLockFactory fastställdes, vilket möjliggör flera IndexWriters att förvärva samma lås. Låsfilen inte längre bort från index katalogen även när låset inte hålls.
Vad är nytt i version 4.7.0:
- När sortering efter String (SortField.STRING), kan du nu ange om saknade värden ska sorteras först (standard), eller sista.
- NRT stöd för filsystem som inte har bort på sista stänga eller kan inte ta bort medan refererade semantik.
- Lade LongBitSet för att hantera mer än 2.1b bitar (på annat sätt använda FixedBitSet).
- Lade Analyzer för kurdiska.
- Inkom Payload stöd till FileDictionary (Föreslå) och göra det mer konfigurerbar.
- Lade till en ny BlendedInfixSuggester, som är som AnalyzingInfixSuggester men ökar förslag som matchade token med lägre positioner.
- Lade SimpleQueryParser. parser för mänskliga-in frågor
- Annan multitermquery (jokertecken, prefix, etc) till PostingsHighlighter.
Vad är nytt i version 4.6.0:
- Utökat stöd för NumericDocValues fältuppdateringar (utan åter indexera dokumentet) genom IndexWriter.updateNumericDocValue (Term, String, Long).
- New FreeTextSuggester kan förutsäga nästa ord med hjälp av en enkel ngram språkmodell användbar för & quot; lång svans & quot; förslag.
- En ny uttryck modul möjliggör kundanpassad ranking med skript-liknande syntax.
- En ny DirectDocValuesFormat kan hålla alla doc värden i högen som okomprimerad java infödda matriser.
- Term.hasFreqs kan nu avgöra om ett visst fält indexeras per-doc
- sikt frekvenser.
Vad är nytt i version 4.5.0:
- Ny i minnet DocIdSet implementeringar som är särskilt bättre än FixedBitSet på små uppsättningar:. WAH8DocIdSet, PFORDeltaDocIdSet och EliasFanoDocIdSet
- CachingWrapperFilter cachar nu filter med WAH8DocIdSet som standard, som har samma minne som FixedBitSet i värsta fall, men är mindre och snabbare på små uppsättningar.
- TokenStreams nu ange positionen ökningen i slutet (), så att vi kan hantera avslutande hålen.
- IndexWriter inte längre kloner den givna IndexWriterConfig.
- Olika buggfixar och optimeringar sedan 4,4 frigivning.
Vad är nytt i version 4.4.0:
- New Replicator modul: replikera index revideringar mellan server och klient.
- New AnalyzingInfixSuggester:. finner förslag baserat på matcher på eventuella tokens i förslaget, inte bara bygger på ren prefix matchande
- Ny PatternCaptureGroupTokenFilter:. avge flera polletter, en för varje infångningsgrupp i en eller flera Java regexes
- New Lucene Facet modulen.
Vad är nytt i version 4.3.0:
- New SearcherTaxonomyManager förvaltar nära realtid återöppnar av både IndexSearcher och TaxonomyReader (för fasettering).
- Inkom ny aspekt metod till fasett modulen för att beräkna aspekt räknas använder SortedSetDocValuesField, utan separat taxonomi index.
- Betydande prestandaförbättringar för minShouldMatch BooleanQuery på grund av att hoppa över vilket resulterar i upp till 4000% snabbare frågor.
- Olika buggfixar och optimeringar sedan 4.2.1 release.
Vad är nytt i version 4.1.0:
- Lucene inte längre strävar efter när du skriver filer (alla fält är skrivna i en append-enda sättet). Detta innebär att det fungerar som standard med append endast strömmar, HDFS, etc ..
- Ny föreslår implementeringar: AnalyzingSuggester, där den underliggande formen (beräknad från en lucene Analyzer) används för förslag är skild från den returnerade texten och FuzzySuggester, som dessutom gör det möjligt för inexakt matchning på ingång .
- Nära-realtid stöd sattes till fasett modulen.
- Ny Highlighter (postingshighlighter) tillsatt i strykningsmodulen.
- Lade FilterStrategy till FilteredQuery större flexibilitet i filtrerad utförande frågan.
- Lade CommonTermsQuery att påskynda frågor med mycket högt frekventa termer. Term frekvenser effektivt upptäcks vid fråge tid -. Inget index förberedelsetiden krävs
- Flera buggfixar och optimeringar sedan 4.0-utgåvan.
Vad är nytt i version 4.0-alpha:
- Index format för termer, inläggen listor, lagras fält, term
- vektorer, etc. är under drift via Codec api. Du kan välja mellan de medföljande implementeringar eller anpassa indexformat med din egen codec för att möta dina behov.
- Betydligt snabbare prestanda när du använder ett filter under sökningen.
- filsystem baserade kataloger kan betygsätta-limit IO (MB / sek) av kopplingstrådar, för att minska IO stridigheter mellan sammanslagning och söka trådar.
- FuzzyQuery är 100-200 gånger snabbare än i tidigare versioner.
- En ny stavningskontroll, DirectSpellChecker finner eventuella korrigeringar
- direkt mot huvud sökindexet utan att kräva en separat index.
Vad är nytt i version 3.6.0:
- Förutom Java 5 och Java 6, detta versionen har nu full Java 7 support (minst JDK 7u1 krävs).
- TypeTokenFilter filter tokens baserat på deras TypeAttribute.
- Fast offset buggar i ett antal CharFilters, Tokenizers och TokenFilters som kan leda till oförutsedda händelser under lyfta fram.
- Lades fonetiska givare: Metaphone, Soundex, Caverphone, Beider-Morse, etc .
- CJKBigramFilter och CJKWidthFilter ersätta CJKTokenizer.
- Kuromoji morfologisk analysator tokenizes japansk text, som producerar både sammansatta ord och deras segmentering.
- Statisk index beskärning (Carmel beskärning) avlägsnar bokningar med låg inom-dokument sikt frekvens.
- QueryParser nu tolkar "*" som en öppen ände för avstånds frågor.
- FieldValueFilter utesluter handlingar saknas det angivna fältet.
- CheckIndex och IndexUpgrader kan du ange den specifika FSDirectory genomförandet som ska användas med den nya -dir-impl kommandoradsalternativet.
- avlönade kan nu göra omvänd lookup (som produktion) i vissa fall och kan packas för att minska sin storlek. Det finns nu en metod för att hämta bästa N kortaste vägar från en start nod i ett FST.
- New WFSTCompletionLookup Suggester stöder finare korniga ranking för förslag.
- FST baserade suggesters nu använda en offline (diskbaserad) typ, i stället för in-memory sortera, när försortering förslagen.
- ToChildBlockJoinQuery går i motsatt riktning (förälder ner till barn dokument).
- Ny query-tiden att gå är mer flexibel (men mindre presterande) än index-tiden går.
- Lade HTMLStripCharFilter att skala HTML-kod.
Vad är nytt i version 3.5.0:
- Lade till en mycket betydande (3-5X) RAM minskning krävs för att hålla begreppen index öppna en IndexReader.
- Lade IndexSearcher.searchAfter som returnerar resultat efter en viss ScoreDoc (t ex sista dokument på föregående sida) för att stödja djupa ökaranvändningsfall.
- Lade SearcherManager att hantera delning och återupptagande IndexSearchers över flera sökning trådar. Underliggande IndexReader instanser är säkert stängda om inte refereras längre.
- Lade SearcherLifetimeManager som säkert ger en konsekvent bild av index över flera förfrågningar (t ex personsökning / prioriterings).
- Omdöpt IndexWriter.optimize att forceMerge att motverka användningen av denna metod eftersom det är fruktansvärt dyrt och sällan motiveras längre.
Vad är nytt i version 3.3.0:
- stavningskontroll modulen innehåller nu föreslå / auto-komplett funktionalitet, med tre implementationer:. Jaspell, Ternary Trie och Finite State
- Stöd för att slå samman resultat från flera skärvor, både & quot; normal & quot; sökresultat (TopDocs.merge) liksom grupperade resultat med hjälp av grupperingsmodulen (SearchGroup.merge, TopGroups.merge).
- En optimerad genomförande av KStem, en mindre aggressiv stemmer för engelska.
- Single-pass gruppering genomförandet grundar sig på blocket dokument indexering.
- Förbättringar av MMapDirectory (nu även standardimplementeringen returneras av FSDirectory.open på 64-bitars Linux).
- NRTManager förenklar hantering nära realtid sökning med flera sökord trådar, vilket gör att programmet för att styra vilka indexering ändringar måste vara synlig för vilka sökfrågor.
- TwoPhaseCommitTool underlättar utför en multi resurs två faser begå, inklusive IndexWriter.
- Standard merge politiken TieredMergePolicy, har en ny metod (set / getReclaimDeletesWeight) för att kontrollera hur aggressivt det mål segment med deletioner, och är nu mer aggressivt än tidigare som standard.
- PKIndexSplitter verktyg delar ett index med en mittpunkten sikt.
Vad är nytt i version 3.2.0:
- En ny gruppering modul, enligt lucene / contrib / gruppering, möjliggör sökresultaten grupperas med en enda värderad indexerade fält.
- En ny IndexUpgrader verktyg konverterar helt en gammal index till det aktuella formatet.
- En ny Directory genomförande NRTCachingDirectory, cachar små segment i RAM, för att minska I / O last för applikationer med snabb NRT öppna priser.
- En ny Collector genomförande CachingCollector, kan samla sökträffar (dokument ID och eventuellt också poäng) och sedan spela upp dem. Detta är användbart för samlare som kräver två eller flera passager för att ge resultat.
- Index ett dokument block som använder IndexWriter nya addDocuments eller updateDocuments metoder. Dessa experimentella API säkerställa att blocket av handlingar alltid kommer att förbli sammanhängande i indexet, som gör det möjligt intressant framtid funktioner som att gruppera och går.
- En ny standard sammanslagning politiken, TieredMergePolicy, som är mer effektiv på grund av att kunna slå samman icke-angränsande områden.
- NumericField nu tillbaka på rätt sätt när du laddar ett lagrat dokument (tidigare du fick en normal Field tillbaka, med det numeriska värdet konverteras sträng).
Vad är nytt i version 3.1.0:.
- ConstantScoreQuery nu tillåter direkt linda en fråga
- IndexWriter är nu konfigurerad med en ny separat byggmästare API IndexWriterConfig. Du kan nu styra IndexWriter s tidigare fast invändig gänga gräns genom att ringa setMaxThreadStates.
- IndexWriter.getReader ersätts av IndexReader.open (IndexWriter). Dessutom kan du nu ange om raderar bör lösas när du öppnar en NRT-läsare.
- MultiSearcher är föråldrat; ParallelMultiSearcher har absorberats direkt i IndexSearcher.
- På 64bit Windows och Solaris JVM: er, är MMapDirectory nu standardimplementeringen (returneras av FSDirectory.open). MMapDirectory möjliggör också unmapping om JVM stöder den.
- New TotalHitCountCollector bara räknar det totala antalet träffar.
- ReaderFinishedListener API möjliggör externa cachar att vräka poster när ett segment är klar.
Vad är nytt i version 3.0.1:.
- Ta bort onödiga synkronisering i FuzzyTermEnum
- När lösa raderade villkor, göra det på sikt sorteringsordning för bättre prestanda.
- Inte felaktigt hålla varning om samma enorma sikt när IndexWriter.infoStream är på.
- Fix Min / MaxPayloadFunction returnerar 0 när bara en nyttolast föreligger.
- Frågor som består av alla noll-boost klausuler (t.ex. text: foo ^ 0) sorteras felaktigt och producerade ogiltiga docids .
- Removed den skyddade inre klass ScoreTerm från FuzzyQuery. Förändringen var nödvändig, eftersom komparatorn av denna klass måste ändras i en inkompatibel sätt. Klassen var aldrig avsedd att vara offentliga.
Vad är nytt i version 2.9.2:
- BooleanQuery ignorerar disableCoord i sin hashkod och lika metoder orsaka dåliga saker att hända när caching BooleanQueries.
- Inte felaktigt hålla varning om samma enorma sikt när IndexWriter.infoStream är på.
- Vid höga indexerings priser, NRT läsare kan tillfälligt förlora strykningar.
Vad är nytt i version 3.0.0:
- Tog bort systemet egenskapen att ställa SegmentReader genomförandet klass.
- Byt retur typ av SnapshotDeletionPolicy # ögonblicksbild () från IndexCommitPoint till IndexCommit. Kod som använder denna metod måste kompileras mot Lucene 3.0 för att arbeta. Den tidigare deprecated IndexCommitPoint avlägsnas också.
- Ange en bekvämlighet AttributeFactory som skapar en token instans för alla grundläggande egenskaper.
- Ta bort rekursion i NumericRangeTermEnum.
- Optimera Levenshtein Avstånd beräkning i FuzzyQuery.
Kommentarer hittades inte